From fb60f5ac2ab28bd822d7f26e3f7d72079d127409 Mon Sep 17 00:00:00 2001 From: Gwenhael Le Moine Date: Wed, 4 Feb 2015 16:08:32 +0100 Subject: [PATCH] bower & bundle update & adaptation --- Gemfile.lock | 4 +- .../angular-animate/.bower.json | 10 +- .../angular-animate/README.md | 4 +- .../angular-animate/angular-animate.js | 253 +- .../angular-animate/angular-animate.min.js | 56 +- .../angular-animate.min.js.map | 4 +- .../angular-animate/bower.json | 4 +- .../angular-animate/package.json | 2 +- .../bower_components/angular-aria/.bower.json | 10 +- .../angular-aria/angular-aria.js | 187 +- .../angular-aria/angular-aria.min.js | 13 +- .../angular-aria/angular-aria.min.js.map | 6 +- .../bower_components/angular-aria/bower.json | 4 +- .../angular-aria/package.json | 2 +- .../bower_components/angular-i18n/.bower.json | 8 +- .../angular-i18n/angular-locale_af-na.js | 6 +- .../angular-i18n/angular-locale_af-za.js | 8 +- .../angular-i18n/angular-locale_af.js | 8 +- .../angular-i18n/angular-locale_am-et.js | 4 +- .../angular-i18n/angular-locale_am.js | 4 +- .../angular-i18n/angular-locale_ast-es.js | 10 +- .../angular-i18n/angular-locale_ast.js | 10 +- .../angular-i18n/angular-locale_az-cyrl-az.js | 38 +- .../angular-i18n/angular-locale_az-cyrl.js | 38 +- .../angular-i18n/angular-locale_az-latn-az.js | 2 +- .../angular-i18n/angular-locale_az-latn.js | 2 +- .../angular-i18n/angular-locale_az.js | 2 +- .../angular-i18n/angular-locale_bg-bg.js | 4 +- .../angular-i18n/angular-locale_bg.js | 4 +- .../angular-i18n/angular-locale_bm-latn-ml.js | 115 + .../angular-i18n/angular-locale_bm-latn.js | 115 + .../angular-i18n/angular-locale_bn-bd.js | 2 +- .../angular-i18n/angular-locale_bn-in.js | 2 +- .../angular-i18n/angular-locale_bn.js | 2 +- .../angular-i18n/angular-locale_bo-cn.js | 10 +- .../angular-i18n/angular-locale_bo-in.js | 10 +- .../angular-i18n/angular-locale_bo.js | 10 +- .../angular-i18n/angular-locale_br-fr.js | 26 +- .../angular-i18n/angular-locale_br.js | 26 +- .../angular-i18n/angular-locale_bs-latn-ba.js | 18 +- .../angular-i18n/angular-locale_bs-latn.js | 18 +- .../angular-i18n/angular-locale_bs.js | 18 +- .../angular-i18n/angular-locale_ca-ad.js | 6 +- .../angular-locale_ca-es-valencia.js | 6 +- .../angular-i18n/angular-locale_ca-es.js | 6 +- .../angular-i18n/angular-locale_ca-fr.js | 6 +- .../angular-i18n/angular-locale_ca-it.js | 6 +- .../angular-i18n/angular-locale_ca.js | 6 +- .../angular-i18n/angular-locale_cy-gb.js | 4 +- .../angular-i18n/angular-locale_cy.js | 4 +- .../angular-i18n/angular-locale_da-dk.js | 2 +- .../angular-i18n/angular-locale_da-gl.js | 2 +- .../angular-i18n/angular-locale_da.js | 2 +- .../angular-i18n/angular-locale_de-at.js | 4 +- .../angular-i18n/angular-locale_dsb-de.js | 115 + .../angular-i18n/angular-locale_dsb.js | 115 + .../angular-i18n/angular-locale_en-150.js | 4 +- .../angular-i18n/angular-locale_en-au.js | 4 +- .../angular-i18n/angular-locale_en-be.js | 4 +- .../angular-i18n/angular-locale_en-dg.js | 20 +- .../angular-i18n/angular-locale_en-fk.js | 20 +- .../angular-i18n/angular-locale_en-gg.js | 20 +- .../angular-i18n/angular-locale_en-gi.js | 20 +- .../angular-i18n/angular-locale_en-hk.js | 16 +- .../angular-i18n/angular-locale_en-ie.js | 14 +- .../angular-i18n/angular-locale_en-im.js | 20 +- .../angular-i18n/angular-locale_en-in.js | 4 +- .../angular-i18n/angular-locale_en-io.js | 20 +- .../angular-i18n/angular-locale_en-je.js | 20 +- .../angular-i18n/angular-locale_en-mo.js | 20 +- .../angular-i18n/angular-locale_en-mt.js | 12 +- .../angular-i18n/angular-locale_en-my.js | 115 + .../angular-i18n/angular-locale_en-nz.js | 4 +- .../angular-i18n/angular-locale_en-pk.js | 4 +- .../angular-i18n/angular-locale_en-sg.js | 4 +- .../angular-i18n/angular-locale_en-sh.js | 20 +- .../angular-i18n/angular-locale_en-vg.js | 20 +- .../angular-i18n/angular-locale_es-419.js | 18 +- .../angular-i18n/angular-locale_es-ar.js | 26 +- .../angular-i18n/angular-locale_es-bo.js | 26 +- .../angular-i18n/angular-locale_es-cl.js | 16 +- .../angular-i18n/angular-locale_es-co.js | 16 +- .../angular-i18n/angular-locale_es-cr.js | 26 +- .../angular-i18n/angular-locale_es-cu.js | 30 +- .../angular-i18n/angular-locale_es-do.js | 30 +- .../angular-i18n/angular-locale_es-ea.js | 4 +- .../angular-i18n/angular-locale_es-ec.js | 18 +- .../angular-i18n/angular-locale_es-es.js | 4 +- .../angular-i18n/angular-locale_es-gq.js | 4 +- .../angular-i18n/angular-locale_es-gt.js | 28 +- .../angular-i18n/angular-locale_es-hn.js | 30 +- .../angular-i18n/angular-locale_es-ic.js | 4 +- .../angular-i18n/angular-locale_es-mx.js | 44 +- .../angular-i18n/angular-locale_es-ni.js | 30 +- .../angular-i18n/angular-locale_es-pa.js | 28 +- .../angular-i18n/angular-locale_es-pe.js | 30 +- .../angular-i18n/angular-locale_es-ph.js | 4 +- .../angular-i18n/angular-locale_es-pr.js | 20 +- .../angular-i18n/angular-locale_es-py.js | 18 +- .../angular-i18n/angular-locale_es-sv.js | 30 +- .../angular-i18n/angular-locale_es-us.js | 24 +- .../angular-i18n/angular-locale_es-uy.js | 18 +- .../angular-i18n/angular-locale_es-ve.js | 18 +- .../angular-i18n/angular-locale_es.js | 4 +- .../angular-i18n/angular-locale_et-ee.js | 4 +- .../angular-i18n/angular-locale_et.js | 4 +- .../angular-i18n/angular-locale_eu-es.js | 4 +- .../angular-i18n/angular-locale_eu.js | 4 +- .../angular-i18n/angular-locale_fr-ch.js | 2 +- .../angular-i18n/angular-locale_gd-gb.js | 30 +- .../angular-i18n/angular-locale_gd.js | 30 +- .../angular-i18n/angular-locale_gsw-fr.js | 97 + .../angular-i18n/angular-locale_gu-in.js | 6 +- .../angular-i18n/angular-locale_gu.js | 6 +- .../angular-i18n/angular-locale_ha-latn-gh.js | 2 +- .../angular-i18n/angular-locale_ha-latn-ne.js | 2 +- .../angular-i18n/angular-locale_ha-latn-ng.js | 2 +- .../angular-i18n/angular-locale_ha-latn.js | 2 +- .../angular-i18n/angular-locale_ha.js | 2 +- .../angular-i18n/angular-locale_he-il.js | 4 +- .../angular-i18n/angular-locale_he.js | 4 +- .../angular-i18n/angular-locale_hi-in.js | 28 +- .../angular-i18n/angular-locale_hi.js | 28 +- .../angular-i18n/angular-locale_hr-ba.js | 4 +- .../angular-i18n/angular-locale_hr-hr.js | 4 +- .../angular-i18n/angular-locale_hr.js | 4 +- .../angular-i18n/angular-locale_hsb-de.js | 115 + .../angular-i18n/angular-locale_hsb.js | 115 + .../angular-i18n/angular-locale_hy-am.js | 12 +- .../angular-i18n/angular-locale_hy.js | 12 +- .../angular-i18n/angular-locale_it-it.js | 6 +- .../angular-i18n/angular-locale_it-sm.js | 6 +- .../angular-i18n/angular-locale_it.js | 6 +- .../angular-i18n/angular-locale_iw.js | 4 +- .../angular-i18n/angular-locale_ka-ge.js | 4 +- .../angular-i18n/angular-locale_ka.js | 4 +- .../angular-i18n/angular-locale_kea-cv.js | 14 +- .../angular-i18n/angular-locale_kea.js | 14 +- .../angular-i18n/angular-locale_kk-cyrl-kz.js | 26 +- .../angular-i18n/angular-locale_kk-cyrl.js | 26 +- .../angular-i18n/angular-locale_kk.js | 26 +- .../angular-i18n/angular-locale_kln-ke.js | 8 +- .../angular-i18n/angular-locale_kln.js | 8 +- .../angular-i18n/angular-locale_km-kh.js | 4 +- .../angular-i18n/angular-locale_km.js | 4 +- .../angular-i18n/angular-locale_kn-in.js | 56 +- .../angular-i18n/angular-locale_kn.js | 56 +- .../angular-i18n/angular-locale_ky-cyrl-kg.js | 38 +- .../angular-i18n/angular-locale_ky-cyrl.js | 38 +- .../angular-i18n/angular-locale_ky.js | 38 +- .../angular-i18n/angular-locale_lb-lu.js | 115 + .../angular-i18n/angular-locale_lb.js | 115 + .../angular-i18n/angular-locale_lt-lt.js | 30 +- .../angular-i18n/angular-locale_lt.js | 30 +- .../angular-i18n/angular-locale_luo-ke.js | 4 +- .../angular-i18n/angular-locale_luo.js | 4 +- .../angular-i18n/angular-locale_lv-lv.js | 4 +- .../angular-i18n/angular-locale_lv.js | 4 +- .../angular-i18n/angular-locale_mgh-mz.js | 4 +- .../angular-i18n/angular-locale_mgh.js | 4 +- .../angular-i18n/angular-locale_mk-mk.js | 4 +- .../angular-i18n/angular-locale_mk.js | 4 +- .../angular-i18n/angular-locale_ml-in.js | 10 +- .../angular-i18n/angular-locale_ml.js | 10 +- .../angular-i18n/angular-locale_mn-cyrl-mn.js | 4 +- .../angular-i18n/angular-locale_mn-cyrl.js | 4 +- .../angular-i18n/angular-locale_mn.js | 4 +- .../angular-i18n/angular-locale_mr-in.js | 6 +- .../angular-i18n/angular-locale_mr.js | 6 +- .../angular-i18n/angular-locale_mt-mt.js | 4 +- .../angular-i18n/angular-locale_mt.js | 4 +- .../angular-i18n/angular-locale_mua-cm.js | 2 +- .../angular-i18n/angular-locale_mua.js | 2 +- .../angular-i18n/angular-locale_my-mm.js | 28 +- .../angular-i18n/angular-locale_my.js | 28 +- .../angular-i18n/angular-locale_nb-no.js | 4 +- .../angular-i18n/angular-locale_nb-sj.js | 4 +- .../angular-i18n/angular-locale_nb.js | 4 +- .../angular-i18n/angular-locale_ne-in.js | 4 +- .../angular-i18n/angular-locale_ne-np.js | 4 +- .../angular-i18n/angular-locale_ne.js | 4 +- .../angular-i18n/angular-locale_nl-aw.js | 4 +- .../angular-i18n/angular-locale_nl-be.js | 4 +- .../angular-i18n/angular-locale_nl-bq.js | 4 +- .../angular-i18n/angular-locale_nl-cw.js | 4 +- .../angular-i18n/angular-locale_nl-nl.js | 4 +- .../angular-i18n/angular-locale_nl-sr.js | 4 +- .../angular-i18n/angular-locale_nl-sx.js | 4 +- .../angular-i18n/angular-locale_nl.js | 4 +- .../angular-i18n/angular-locale_nn-no.js | 4 +- .../angular-i18n/angular-locale_nn.js | 4 +- .../angular-i18n/angular-locale_no-no.js | 4 +- .../angular-i18n/angular-locale_no.js | 4 +- .../angular-i18n/angular-locale_nso-za.js | 2 +- .../angular-i18n/angular-locale_nso.js | 2 +- .../angular-i18n/angular-locale_or-in.js | 8 +- .../angular-i18n/angular-locale_or.js | 8 +- .../angular-i18n/angular-locale_pa-arab-pk.js | 48 +- .../angular-i18n/angular-locale_pa-arab.js | 48 +- .../angular-i18n/angular-locale_pa-guru-in.js | 40 +- .../angular-i18n/angular-locale_pa-guru.js | 40 +- .../angular-i18n/angular-locale_pa.js | 40 +- .../angular-i18n/angular-locale_pt-ao.js | 47 +- .../angular-i18n/angular-locale_pt-br.js | 37 +- .../angular-i18n/angular-locale_pt-cv.js | 47 +- .../angular-i18n/angular-locale_pt-gw.js | 47 +- .../angular-i18n/angular-locale_pt-mo.js | 47 +- .../angular-i18n/angular-locale_pt-mz.js | 47 +- .../angular-i18n/angular-locale_pt-pt.js | 81 +- .../angular-i18n/angular-locale_pt-st.js | 47 +- .../angular-i18n/angular-locale_pt-tl.js | 47 +- .../angular-i18n/angular-locale_pt.js | 37 +- .../angular-i18n/angular-locale_qu-bo.js | 115 + .../angular-i18n/angular-locale_qu-ec.js | 115 + .../angular-i18n/angular-locale_qu-pe.js | 115 + .../angular-i18n/angular-locale_qu.js | 115 + .../angular-i18n/angular-locale_rn-bi.js | 2 +- .../angular-i18n/angular-locale_rn.js | 2 +- .../angular-i18n/angular-locale_rof-tz.js | 2 +- .../angular-i18n/angular-locale_rof.js | 2 +- .../angular-i18n/angular-locale_saq-ke.js | 4 +- .../angular-i18n/angular-locale_saq.js | 4 +- .../angular-i18n/angular-locale_se-se.js | 115 + .../angular-i18n/angular-locale_sk-sk.js | 12 +- .../angular-i18n/angular-locale_sk.js | 12 +- .../angular-i18n/angular-locale_smn-fi.js | 115 + .../angular-i18n/angular-locale_smn.js | 115 + .../angular-i18n/angular-locale_sq-al.js | 12 +- .../angular-i18n/angular-locale_sq-mk.js | 12 +- .../angular-i18n/angular-locale_sq-xk.js | 12 +- .../angular-i18n/angular-locale_sq.js | 12 +- .../angular-i18n/angular-locale_sr-cyrl-ba.js | 2 +- .../angular-i18n/angular-locale_sr-cyrl-me.js | 2 +- .../angular-i18n/angular-locale_sr-cyrl-rs.js | 2 +- .../angular-i18n/angular-locale_sr-cyrl-xk.js | 2 +- .../angular-i18n/angular-locale_sr-cyrl.js | 2 +- .../angular-i18n/angular-locale_sr-latn-ba.js | 22 +- .../angular-i18n/angular-locale_sr-latn-me.js | 4 +- .../angular-i18n/angular-locale_sr-latn-rs.js | 2 +- .../angular-i18n/angular-locale_sr-latn-xk.js | 2 +- .../angular-i18n/angular-locale_sr-latn.js | 2 +- .../angular-i18n/angular-locale_sr.js | 2 +- .../angular-i18n/angular-locale_sv-ax.js | 22 +- .../angular-i18n/angular-locale_sv-fi.js | 22 +- .../angular-i18n/angular-locale_sv-se.js | 22 +- .../angular-i18n/angular-locale_sv.js | 22 +- .../angular-i18n/angular-locale_te-in.js | 18 +- .../angular-i18n/angular-locale_te.js | 18 +- .../angular-i18n/angular-locale_teo-ke.js | 8 +- .../angular-i18n/angular-locale_teo-ug.js | 8 +- .../angular-i18n/angular-locale_teo.js | 8 +- .../angular-i18n/angular-locale_th-th.js | 2 +- .../angular-i18n/angular-locale_th.js | 2 +- .../angular-i18n/angular-locale_tn-bw.js | 2 +- .../angular-i18n/angular-locale_tn-za.js | 2 +- .../angular-i18n/angular-locale_tn.js | 2 +- .../angular-i18n/angular-locale_ts-za.js | 4 +- .../angular-i18n/angular-locale_ts.js | 4 +- .../angular-i18n/angular-locale_uk-ua.js | 4 +- .../angular-i18n/angular-locale_uk.js | 4 +- .../angular-i18n/angular-locale_ur-pk.js | 10 +- .../angular-i18n/angular-locale_ur.js | 10 +- .../angular-i18n/angular-locale_uz-latn-uz.js | 8 +- .../angular-i18n/angular-locale_uz-latn.js | 8 +- .../angular-i18n/angular-locale_uz.js | 8 +- .../angular-i18n/angular-locale_yi-001.js | 115 + .../angular-i18n/angular-locale_yi.js | 115 + .../angular-i18n/angular-locale_zh-hant-tw.js | 2 +- .../angular-i18n/angular-locale_zh-hant.js | 2 +- .../angular-i18n/angular-locale_zh-tw.js | 2 +- .../angular-i18n/angular-locale_zu-za.js | 12 +- .../angular-i18n/angular-locale_zu.js | 12 +- .../bower_components/angular-i18n/bower.json | 2 +- .../angular-i18n/package.json | 2 +- .../angular-loader/.bower.json | 10 +- .../angular-loader/angular-loader.js | 29 +- .../angular-loader/angular-loader.min.js | 4 +- .../angular-loader/angular-loader.min.js.map | 2 +- .../angular-loader/bower.json | 4 +- .../angular-loader/package.json | 2 +- .../angular-material/.bower.json | 15 +- .../angular-material/README.md | 78 +- .../angular-material/angular-material.css | 5231 +++++++--- .../angular-material/angular-material.js | 8418 +++++++++++------ .../angular-material/angular-material.min.css | 4 +- .../angular-material/angular-material.min.js | 279 +- .../angular-material/bower.json | 15 +- .../angular-material/default-theme.css | 394 + .../backdrop/backdrop-default-theme.css | 8 + .../modules/closure/backdrop/backdrop.css | 54 + .../modules/closure/backdrop/backdrop.js | 40 + .../bottomSheet/bottomSheet-default-theme.css | 15 + .../closure/bottomSheet/bottomSheet.css | 161 + .../closure/bottomSheet/bottomSheet.js | 263 + .../closure/button/button-default-theme.css | 49 + .../modules/closure/button/button.css | 134 + .../modules/closure/button/button.js | 101 + .../closure/card/card-default-theme.css | 10 + .../modules/closure/card/card.css | 26 + .../modules/closure/card/card.js | 60 + .../checkbox/checkbox-default-theme.css | 38 + .../modules/closure/checkbox/checkbox.css | 78 + .../modules/closure/checkbox/checkbox.js | 135 + .../closure/content/content-default-theme.css | 8 + .../modules/closure/content/content.css | 24 + .../modules/closure/content/content.js | 87 + .../modules/closure/core/core.css | 2736 ++++++ .../modules/closure/core/core.js | 3090 ++++++ .../modules/closure/core/default-theme.js | 1 + .../closure/dialog/dialog-default-theme.css | 11 + .../modules/closure/dialog/dialog.css | 75 + .../modules/closure/dialog/dialog.js | 500 + .../closure/divider/divider-default-theme.css | 8 + .../modules/closure/divider/divider.css | 12 + .../modules/closure/divider/divider.js | 50 + .../modules/closure/icon/icon.css | 24 + .../modules/closure/icon/icon.js | 52 + .../closure/input/input-default-theme.css | 39 + .../modules/closure/input/input.css | 113 + .../modules/closure/input/input.js | 355 + .../modules/closure/list/list.css | 56 + .../modules/closure/list/list.js | 96 + .../modules/closure/menu/menu.css | 6 + .../modules/closure/menu/menu.js | 29 + .../progressCircular-default-theme.css | 35 + .../progressCircular/progressCircular.css | 1395 +++ .../progressCircular/progressCircular.js | 129 + .../progressLinear-default-theme.css | 26 + .../closure/progressLinear/progressLinear.css | 366 + .../closure/progressLinear/progressLinear.js | 130 + .../radioButton/radioButton-default-theme.css | 39 + .../closure/radioButton/radioButton.css | 66 + .../closure/radioButton/radioButton.js | 302 + .../closure/sidenav/sidenav-default-theme.css | 8 + .../modules/closure/sidenav/sidenav.css | 86 + .../modules/closure/sidenav/sidenav.js | 320 + .../closure/slider/slider-default-theme.css | 55 + .../modules/closure/slider/slider.css | 210 + .../modules/closure/slider/slider.js | 391 + .../modules/closure/sticky/sticky.css | 20 + .../modules/closure/sticky/sticky.js | 314 + .../subheader/subheader-default-theme.css | 15 + .../modules/closure/subheader/subheader.css | 62 + .../modules/closure/subheader/subheader.js | 89 + .../modules/closure/swipe/swipe.js | 79 + .../closure/switch/switch-default-theme.css | 29 + .../modules/closure/switch/switch.css | 81 + .../modules/closure/switch/switch.js | 171 + .../closure/tabs/tabs-default-theme.css | 34 + .../modules/closure/tabs/tabs.css | 171 + .../modules/closure/tabs/tabs.js | 1009 ++ .../textField/textField-default-theme.css | 29 + .../modules/closure/textField/textField.css | 72 + .../modules/closure/textField/textField.js | 145 + .../closure/toast/toast-default-theme.css | 17 + .../modules/closure/toast/toast.css | 110 + .../modules/closure/toast/toast.js | 236 + .../closure/toolbar/toolbar-default-theme.css | 17 + .../modules/closure/toolbar/toolbar.css | 69 + .../modules/closure/toolbar/toolbar.js | 161 + .../closure/tooltip/tooltip-default-theme.css | 10 + .../modules/closure/tooltip/tooltip.css | 133 + .../modules/closure/tooltip/tooltip.js | 199 + .../modules/closure/whiteframe/whiteframe.css | 20 + .../modules/closure/whiteframe/whiteframe.js | 17 + .../modules/css/angular-material-layout.css | 2582 +++++ .../js/backdrop/backdrop-default-theme.css | 8 + .../backdrop/backdrop-default-theme.min.css | 6 + .../modules/js/backdrop/backdrop.css | 54 + .../modules/js/backdrop/backdrop.js | 38 + .../modules/js/backdrop/backdrop.min.css | 6 + .../modules/js/backdrop/backdrop.min.js | 7 + .../modules/js/backdrop/bower.json | 7 + .../bottomSheet/bottomSheet-default-theme.css | 15 + .../bottomSheet-default-theme.min.css | 6 + .../modules/js/bottomSheet/bottomSheet.css | 188 + .../modules/js/bottomSheet/bottomSheet.js | 293 + .../js/bottomSheet/bottomSheet.min.css | 6 + .../modules/js/bottomSheet/bottomSheet.min.js | 7 + .../modules/js/bottomSheet/bower.json | 8 + .../modules/js/button/bower.json | 7 + .../js/button/button-default-theme.css | 42 + .../js/button/button-default-theme.min.css | 6 + .../modules/js/button/button.css | 132 + .../modules/js/button/button.js | 94 + .../modules/js/button/button.min.css | 6 + .../modules/js/button/button.min.js | 7 + .../modules/js/card/bower.json | 7 + .../modules/js/card/card-default-theme.css | 10 + .../js/card/card-default-theme.min.css | 6 + .../angular-material/modules/js/card/card.css | 31 + .../angular-material/modules/js/card/card.js | 58 + .../modules/js/card/card.min.css | 6 + .../modules/js/card/card.min.js | 7 + .../modules/js/checkbox/bower.json | 7 + .../js/checkbox/checkbox-default-theme.css | 38 + .../checkbox/checkbox-default-theme.min.css | 6 + .../modules/js/checkbox/checkbox.css | 79 + .../modules/js/checkbox/checkbox.js | 133 + .../modules/js/checkbox/checkbox.min.css | 6 + .../modules/js/checkbox/checkbox.min.js | 7 + .../modules/js/content/bower.json | 7 + .../js/content/content-default-theme.css | 8 + .../js/content/content-default-theme.min.css | 6 + .../modules/js/content/content.css | 24 + .../modules/js/content/content.js | 60 + .../modules/js/content/content.min.css | 6 + .../modules/js/content/content.min.js | 7 + .../modules/js/core/bower.json | 7 + .../angular-material/modules/js/core/core.css | 3067 ++++++ .../angular-material/modules/js/core/core.js | 2780 ++++++ .../modules/js/core/core.min.css | 6 + .../modules/js/core/core.min.js | 7 + .../modules/js/core/default-theme.js | 1 + .../modules/js/dialog/bower.json | 8 + .../js/dialog/dialog-default-theme.css | 11 + .../js/dialog/dialog-default-theme.min.css | 6 + .../modules/js/dialog/dialog.css | 88 + .../modules/js/dialog/dialog.js | 495 + .../modules/js/dialog/dialog.min.css | 6 + .../modules/js/dialog/dialog.min.js | 7 + .../modules/js/divider/bower.json | 7 + .../js/divider/divider-default-theme.css | 8 + .../js/divider/divider-default-theme.min.css | 6 + .../modules/js/divider/divider.css | 12 + .../modules/js/divider/divider.js | 48 + .../modules/js/divider/divider.min.css | 6 + .../modules/js/divider/divider.min.js | 7 + .../modules/js/icon/bower.json | 7 + .../angular-material/modules/js/icon/icon.css | 24 + .../angular-material/modules/js/icon/icon.js | 50 + .../modules/js/icon/icon.min.css | 6 + .../modules/js/icon/icon.min.js | 7 + .../modules/js/input/bower.json | 7 + .../modules/js/input/input-default-theme.css | 40 + .../js/input/input-default-theme.min.css | 6 + .../modules/js/input/input.css | 102 + .../modules/js/input/input.js | 333 + .../modules/js/input/input.min.css | 6 + .../modules/js/input/input.min.js | 7 + .../modules/js/list/bower.json | 7 + .../angular-material/modules/js/list/list.css | 61 + .../angular-material/modules/js/list/list.js | 94 + .../modules/js/list/list.min.css | 6 + .../modules/js/list/list.min.js | 7 + .../modules/js/menu/bower.json | 5 + .../angular-material/modules/js/menu/menu.css | 6 + .../angular-material/modules/js/menu/menu.js | 27 + .../modules/js/menu/menu.min.css | 6 + .../modules/js/menu/menu.min.js | 7 + .../modules/js/progressCircular/bower.json | 7 + .../progressCircular-default-theme.css | 35 + .../progressCircular-default-theme.min.css | 6 + .../js/progressCircular/progressCircular.css | 1445 +++ .../js/progressCircular/progressCircular.js | 127 + .../progressCircular/progressCircular.min.css | 6 + .../progressCircular/progressCircular.min.js | 7 + .../modules/js/progressLinear/bower.json | 7 + .../progressLinear-default-theme.css | 28 + .../progressLinear-default-theme.min.css | 6 + .../js/progressLinear/progressLinear.css | 368 + .../js/progressLinear/progressLinear.js | 128 + .../js/progressLinear/progressLinear.min.css | 6 + .../js/progressLinear/progressLinear.min.js | 7 + .../modules/js/radioButton/bower.json | 7 + .../radioButton/radioButton-default-theme.css | 39 + .../radioButton-default-theme.min.css | 6 + .../modules/js/radioButton/radioButton.css | 67 + .../modules/js/radioButton/radioButton.js | 296 + .../js/radioButton/radioButton.min.css | 6 + .../modules/js/radioButton/radioButton.min.js | 7 + .../modules/js/sidenav/bower.json | 8 + .../js/sidenav/sidenav-default-theme.css | 8 + .../js/sidenav/sidenav-default-theme.min.css | 6 + .../modules/js/sidenav/sidenav.css | 90 + .../modules/js/sidenav/sidenav.js | 302 + .../modules/js/sidenav/sidenav.min.css | 6 + .../modules/js/sidenav/sidenav.min.js | 7 + .../modules/js/slider/bower.json | 7 + .../js/slider/slider-default-theme.css | 55 + .../js/slider/slider-default-theme.min.css | 6 + .../modules/js/slider/slider.css | 218 + .../modules/js/slider/slider.js | 411 + .../modules/js/slider/slider.min.css | 6 + .../modules/js/slider/slider.min.js | 7 + .../modules/js/sticky/bower.json | 8 + .../modules/js/sticky/sticky.css | 20 + .../modules/js/sticky/sticky.js | 309 + .../modules/js/sticky/sticky.min.css | 6 + .../modules/js/sticky/sticky.min.js | 7 + .../modules/js/subheader/bower.json | 8 + .../js/subheader/subheader-default-theme.css | 15 + .../subheader/subheader-default-theme.min.css | 6 + .../modules/js/subheader/subheader.css | 61 + .../modules/js/subheader/subheader.js | 86 + .../modules/js/subheader/subheader.min.css | 6 + .../modules/js/subheader/subheader.min.js | 7 + .../modules/js/swipe/bower.json | 5 + .../modules/js/swipe/swipe.js | 213 + .../modules/js/swipe/swipe.min.js | 7 + .../modules/js/switch/bower.json | 8 + .../js/switch/switch-default-theme.css | 29 + .../js/switch/switch-default-theme.min.css | 6 + .../modules/js/switch/switch.css | 77 + .../modules/js/switch/switch.js | 144 + .../modules/js/switch/switch.min.css | 6 + .../modules/js/switch/switch.min.js | 7 + .../modules/js/tabs/bower.json | 7 + .../modules/js/tabs/tabs-default-theme.css | 34 + .../js/tabs/tabs-default-theme.min.css | 6 + .../angular-material/modules/js/tabs/tabs.css | 181 + .../angular-material/modules/js/tabs/tabs.js | 992 ++ .../modules/js/tabs/tabs.min.css | 6 + .../modules/js/tabs/tabs.min.js | 7 + .../modules/js/textField/bower.json | 7 + .../js/textField/textField-default-theme.css | 29 + .../textField/textField-default-theme.min.css | 6 + .../modules/js/textField/textField.css | 76 + .../modules/js/textField/textField.js | 143 + .../modules/js/textField/textField.min.css | 6 + .../modules/js/textField/textField.min.js | 7 + .../modules/js/toast/bower.json | 9 + .../modules/js/toast/toast-default-theme.css | 17 + .../js/toast/toast-default-theme.min.css | 6 + .../modules/js/toast/toast.css | 115 + .../modules/js/toast/toast.js | 235 + .../modules/js/toast/toast.min.css | 6 + .../modules/js/toast/toast.min.js | 7 + .../modules/js/toolbar/bower.json | 8 + .../js/toolbar/toolbar-default-theme.css | 17 + .../js/toolbar/toolbar-default-theme.min.css | 6 + .../modules/js/toolbar/toolbar.css | 78 + .../modules/js/toolbar/toolbar.js | 158 + .../modules/js/toolbar/toolbar.min.css | 6 + .../modules/js/toolbar/toolbar.min.js | 7 + .../modules/js/tooltip/bower.json | 7 + .../js/tooltip/tooltip-default-theme.css | 10 + .../js/tooltip/tooltip-default-theme.min.css | 6 + .../modules/js/tooltip/tooltip.css | 136 + .../modules/js/tooltip/tooltip.js | 197 + .../modules/js/tooltip/tooltip.min.css | 6 + .../modules/js/tooltip/tooltip.min.js | 7 + .../modules/js/whiteframe/bower.json | 5 + .../modules/js/whiteframe/whiteframe.css | 20 + .../modules/js/whiteframe/whiteframe.js | 15 + .../modules/js/whiteframe/whiteframe.min.css | 6 + .../modules/js/whiteframe/whiteframe.min.js | 7 + .../angular-material/themes/amber-theme.css | 198 - .../themes/blue-grey-theme.css | 198 - .../angular-material/themes/blue-theme.css | 198 - .../angular-material/themes/brown-theme.css | 198 - .../angular-material/themes/cyan-theme.css | 198 - .../themes/deep-orange-theme.css | 198 - .../themes/deep-purple-theme.css | 198 - .../angular-material/themes/default-theme.css | 198 - .../angular-material/themes/green-theme.css | 198 - .../angular-material/themes/grey-theme.css | 198 - .../angular-material/themes/indigo-theme.css | 198 - .../themes/light-blue-dark-theme.css | 200 - .../themes/light-green-theme.css | 198 - .../angular-material/themes/lime-theme.css | 198 - .../angular-material/themes/orange-theme.css | 198 - .../angular-material/themes/pink-theme.css | 198 - .../angular-material/themes/purple-theme.css | 198 - .../angular-material/themes/red-theme.css | 198 - .../angular-material/themes/teal-theme.css | 198 - .../angular-material/themes/yellow-theme.css | 198 - .../angular-mocks/.bower.json | 10 +- .../angular-mocks/angular-mocks.js | 201 +- .../bower_components/angular-mocks/bower.json | 4 +- .../angular-mocks/package.json | 2 +- .../angular-moment/.bower.json | 14 +- .../angular-moment/CHANGELOG.md | 14 + .../angular-moment/Gruntfile.js | 2 +- .../bower_components/angular-moment/README.md | 9 +- .../angular-moment/angular-moment.js | 122 +- .../angular-moment/angular-moment.min.js | 2 +- .../angular-moment/angular-moment.min.js.map | 2 +- .../angular-moment/angular-moment.nuspec | 24 + .../angular-moment/bower.json | 8 +- .../angular-moment/karma.conf.js | 2 +- .../angular-moment/package.json | 4 +- .../bower_components/angular-moment/tests.js | 67 +- .../angular-ui-router/.bower.json | 8 +- .../angular-ui-router/CHANGELOG.md | 93 +- .../angular-ui-router/CONTRIBUTING.md | 65 + .../angular-ui-router/README.md | 64 +- .../api/angular-ui-router.d.ts | 44 +- .../angular-ui-router/bower.json | 2 +- .../release/angular-ui-router.js | 1177 ++- .../release/angular-ui-router.min.js | 4 +- .../angular-ui-router/src/common.js | 66 +- .../angular-ui-router/src/resolve.js | 17 +- .../angular-ui-router/src/state.js | 395 +- .../angular-ui-router/src/stateDirectives.js | 24 +- .../angular-ui-router/src/stateFilters.js | 8 +- .../angular-ui-router/src/templateFactory.js | 2 +- .../src/urlMatcherFactory.js | 611 +- .../angular-ui-router/src/urlRouter.js | 10 +- .../angular-ui-router/src/viewDirective.js | 35 +- .../app/bower_components/angular/.bower.json | 10 +- .../app/bower_components/angular/angular.js | 5361 ++++++----- .../bower_components/angular/angular.min.js | 487 +- .../angular/angular.min.js.gzip | Bin 45308 -> 45998 bytes .../angular/angular.min.js.map | 6 +- .../app/bower_components/angular/bower.json | 2 +- .../app/bower_components/angular/package.json | 2 +- .../html5-boilerplate/.bower.json | 8 +- .../html5-boilerplate/.editorconfig | 22 + .../html5-boilerplate/.gitattributes | 18 +- .../html5-boilerplate/.gitignore | 4 +- .../html5-boilerplate/.htaccess | 551 -- .../html5-boilerplate/.jscsrc | 68 + .../html5-boilerplate/.jshintrc | 32 + .../html5-boilerplate/.travis.yml | 62 + .../html5-boilerplate/404.html | 157 - .../html5-boilerplate/CHANGELOG.md | 189 +- .../html5-boilerplate/CONTRIBUTING.md | 13 +- .../html5-boilerplate/README.md | 25 +- .../apple-touch-icon-precomposed.png | Bin 1226 -> 0 bytes .../html5-boilerplate/css/normalize.css | 527 -- .../html5-boilerplate/dist/.editorconfig | 13 + .../html5-boilerplate/dist/.gitattributes | 1 + .../html5-boilerplate/dist/.gitignore | 2 + .../html5-boilerplate/dist/.htaccess | 935 ++ .../html5-boilerplate/dist/404.html | 60 + .../dist/apple-touch-icon.png | Bin 0 -> 3959 bytes .../html5-boilerplate/dist/browserconfig.xml | 12 + .../{ => dist}/crossdomain.xml | 2 +- .../html5-boilerplate/dist/css/main.css | 282 + .../html5-boilerplate/dist/css/normalize.css | 427 + .../html5-boilerplate/dist/doc/TOC.md | 29 + .../html5-boilerplate/dist/doc/css.md | 162 + .../{ => dist}/doc/extend.md | 523 +- .../html5-boilerplate/dist/doc/faq.md | 93 + .../html5-boilerplate/dist/doc/html.md | 223 + .../html5-boilerplate/{ => dist}/doc/js.md | 6 + .../html5-boilerplate/dist/doc/misc.md | 198 + .../html5-boilerplate/{ => dist}/doc/usage.md | 37 +- .../html5-boilerplate/{ => dist}/favicon.ico | Bin .../html5-boilerplate/{ => dist}/humans.txt | 4 +- .../{ => dist}/img/.gitignore | 0 .../html5-boilerplate/{ => dist}/index.html | 22 +- .../html5-boilerplate/dist/js/main.js | 0 .../{ => dist}/js/plugins.js | 2 +- .../dist/js/vendor/jquery-1.11.2.min.js | 5 + .../dist/js/vendor/modernizr-2.8.3.min.js | 4 + .../html5-boilerplate/dist/robots.txt | 5 + .../html5-boilerplate/dist/tile-wide.png | Bin 0 -> 1854 bytes .../html5-boilerplate/dist/tile.png | Bin 0 -> 3482 bytes .../html5-boilerplate/doc/TOC.md | 37 - .../html5-boilerplate/doc/crossdomain.md | 17 - .../html5-boilerplate/doc/css.md | 136 - .../html5-boilerplate/doc/faq.md | 76 - .../html5-boilerplate/doc/html.md | 161 - .../html5-boilerplate/doc/misc.md | 26 - .../html5-boilerplate/gulpfile.js | 159 + .../html5-boilerplate/js/main.js | 1 - .../js/vendor/jquery-1.10.2.min.js | 6 - .../js/vendor/modernizr-2.6.2.min.js | 4 - .../html5-boilerplate/package.json | 43 + .../html5-boilerplate/robots.txt | 3 - .../html5-boilerplate/src/.editorconfig | 13 + .../html5-boilerplate/src/.gitattributes | 1 + .../html5-boilerplate/src/.gitignore | 2 + .../html5-boilerplate/src/404.html | 60 + .../src/apple-touch-icon.png | Bin 0 -> 3959 bytes .../html5-boilerplate/src/browserconfig.xml | 12 + .../html5-boilerplate/src/crossdomain.xml | 15 + .../html5-boilerplate/{ => src}/css/main.css | 96 +- .../html5-boilerplate/src/doc/TOC.md | 29 + .../html5-boilerplate/src/doc/css.md | 162 + .../html5-boilerplate/src/doc/extend.md | 645 ++ .../html5-boilerplate/src/doc/faq.md | 93 + .../html5-boilerplate/src/doc/html.md | 223 + .../html5-boilerplate/src/doc/js.md | 37 + .../html5-boilerplate/src/doc/misc.md | 198 + .../html5-boilerplate/src/doc/usage.md | 130 + .../html5-boilerplate/src/favicon.ico | Bin 0 -> 766 bytes .../html5-boilerplate/src/humans.txt | 15 + .../html5-boilerplate/src/img/.gitignore | 0 .../html5-boilerplate/src/index.html | 40 + .../html5-boilerplate/src/js/main.js | 0 .../html5-boilerplate/src/js/plugins.js | 24 + .../src/js/vendor/modernizr-2.8.3.min.js | 4 + .../html5-boilerplate/src/robots.txt | 5 + .../html5-boilerplate/src/tile-wide.png | Bin 0 -> 1854 bytes .../html5-boilerplate/src/tile.png | Bin 0 -> 3482 bytes .../html5-boilerplate/test/file_content.js | 81 + .../html5-boilerplate/test/file_existence.js | 131 + .../app/bower_components/moment/.bower.json | 10 +- .../app/bower_components/moment/CHANGELOG.md | 33 + .../bower_components/moment/Moment.js.nuspec | 28 + public/app/bower_components/moment/README.md | 8 +- public/app/bower_components/moment/bower.json | 2 +- .../app/bower_components/moment/locale/af.js | 8 +- .../bower_components/moment/locale/ar-ma.js | 3 +- .../bower_components/moment/locale/ar-sa.js | 9 +- .../bower_components/moment/locale/ar-tn.js | 55 + .../app/bower_components/moment/locale/ar.js | 9 +- .../app/bower_components/moment/locale/az.js | 8 +- .../app/bower_components/moment/locale/be.js | 10 +- .../app/bower_components/moment/locale/bg.js | 4 +- .../app/bower_components/moment/locale/bn.js | 7 +- .../app/bower_components/moment/locale/bo.js | 7 +- .../app/bower_components/moment/locale/br.js | 4 +- .../app/bower_components/moment/locale/bs.js | 8 +- .../app/bower_components/moment/locale/ca.js | 15 +- .../app/bower_components/moment/locale/cs.js | 6 +- .../app/bower_components/moment/locale/cv.js | 4 +- .../app/bower_components/moment/locale/cy.js | 4 +- .../app/bower_components/moment/locale/da.js | 4 +- .../bower_components/moment/locale/de-at.js | 16 +- .../app/bower_components/moment/locale/de.js | 16 +- .../app/bower_components/moment/locale/el.js | 10 +- .../bower_components/moment/locale/en-au.js | 4 +- .../bower_components/moment/locale/en-ca.js | 4 +- .../bower_components/moment/locale/en-gb.js | 4 +- .../app/bower_components/moment/locale/eo.js | 8 +- .../app/bower_components/moment/locale/es.js | 4 +- .../app/bower_components/moment/locale/et.js | 4 +- .../app/bower_components/moment/locale/eu.js | 4 +- .../app/bower_components/moment/locale/fa.js | 8 +- .../app/bower_components/moment/locale/fi.js | 4 +- .../app/bower_components/moment/locale/fo.js | 4 +- .../bower_components/moment/locale/fr-ca.js | 4 +- .../app/bower_components/moment/locale/fr.js | 4 +- .../app/bower_components/moment/locale/fy.js | 69 + .../app/bower_components/moment/locale/gl.js | 4 +- .../app/bower_components/moment/locale/he.js | 5 +- .../app/bower_components/moment/locale/hi.js | 18 +- .../app/bower_components/moment/locale/hr.js | 4 +- .../app/bower_components/moment/locale/hu.js | 8 +- .../bower_components/moment/locale/hy-am.js | 8 +- .../app/bower_components/moment/locale/id.js | 16 +- .../app/bower_components/moment/locale/is.js | 4 +- .../app/bower_components/moment/locale/it.js | 13 +- .../app/bower_components/moment/locale/ja.js | 7 +- .../app/bower_components/moment/locale/ka.js | 4 +- .../app/bower_components/moment/locale/km.js | 3 +- .../app/bower_components/moment/locale/ko.js | 12 +- .../app/bower_components/moment/locale/lb.js | 4 +- .../app/bower_components/moment/locale/lt.js | 4 +- .../app/bower_components/moment/locale/lv.js | 4 +- .../app/bower_components/moment/locale/mk.js | 4 +- .../app/bower_components/moment/locale/ml.js | 7 +- .../app/bower_components/moment/locale/mr.js | 18 +- .../bower_components/moment/locale/ms-my.js | 16 +- .../app/bower_components/moment/locale/my.js | 3 +- .../app/bower_components/moment/locale/nb.js | 4 +- .../app/bower_components/moment/locale/ne.js | 18 +- .../app/bower_components/moment/locale/nl.js | 4 +- .../app/bower_components/moment/locale/nn.js | 4 +- .../app/bower_components/moment/locale/pl.js | 4 +- .../bower_components/moment/locale/pt-br.js | 4 +- .../app/bower_components/moment/locale/pt.js | 4 +- .../app/bower_components/moment/locale/ro.js | 3 +- .../app/bower_components/moment/locale/ru.js | 40 +- .../app/bower_components/moment/locale/sk.js | 4 +- .../app/bower_components/moment/locale/sl.js | 4 +- .../app/bower_components/moment/locale/sq.js | 8 +- .../bower_components/moment/locale/sr-cyrl.js | 4 +- .../app/bower_components/moment/locale/sr.js | 4 +- .../app/bower_components/moment/locale/sv.js | 4 +- .../app/bower_components/moment/locale/ta.js | 46 +- .../app/bower_components/moment/locale/th.js | 7 +- .../bower_components/moment/locale/tl-ph.js | 4 +- .../app/bower_components/moment/locale/tr.js | 4 +- .../moment/locale/tzm-latn.js | 3 +- .../app/bower_components/moment/locale/tzm.js | 3 +- .../app/bower_components/moment/locale/uk.js | 8 +- .../app/bower_components/moment/locale/uz.js | 3 +- .../app/bower_components/moment/locale/vi.js | 4 +- .../bower_components/moment/locale/zh-cn.js | 19 +- .../bower_components/moment/locale/zh-tw.js | 17 +- .../bower_components/moment/meteor/README.md | 25 + .../bower_components/moment/meteor/export.js | 3 + .../bower_components/moment/meteor/test.js | 5 + .../bower_components/moment/min/locales.js | 731 +- .../moment/min/locales.min.js | 8 +- .../moment/min/moment-with-locales.js | 940 +- .../moment/min/moment-with-locales.min.js | 12 +- .../bower_components/moment/min/moment.min.js | 6 +- public/app/bower_components/moment/moment.js | 379 +- .../moment/scripts/npm_prepublish.sh | 43 + public/app/css/app.css | 3 +- public/app/index.html | 61 +- public/app/js/templates/dashboard.html | 353 +- 788 files changed, 61746 insertions(+), 16574 deletions(-) create mode 100644 public/app/bower_components/angular-i18n/angular-locale_bm-latn-ml.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_bm-latn.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_dsb-de.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_dsb.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_en-my.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_gsw-fr.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_hsb-de.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_hsb.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_lb-lu.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_lb.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_qu-bo.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_qu-ec.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_qu-pe.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_qu.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_se-se.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_smn-fi.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_smn.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_yi-001.js create mode 100644 public/app/bower_components/angular-i18n/angular-locale_yi.js create mode 100644 public/app/bower_components/angular-material/default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/backdrop/backdrop-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/backdrop/backdrop.css create mode 100644 public/app/bower_components/angular-material/modules/closure/backdrop/backdrop.js create mode 100644 public/app/bower_components/angular-material/modules/closure/bottomSheet/bottomSheet-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/bottomSheet/bottomSheet.css create mode 100644 public/app/bower_components/angular-material/modules/closure/bottomSheet/bottomSheet.js create mode 100644 public/app/bower_components/angular-material/modules/closure/button/button-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/button/button.css create mode 100644 public/app/bower_components/angular-material/modules/closure/button/button.js create mode 100644 public/app/bower_components/angular-material/modules/closure/card/card-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/card/card.css create mode 100644 public/app/bower_components/angular-material/modules/closure/card/card.js create mode 100644 public/app/bower_components/angular-material/modules/closure/checkbox/checkbox-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/checkbox/checkbox.css create mode 100644 public/app/bower_components/angular-material/modules/closure/checkbox/checkbox.js create mode 100644 public/app/bower_components/angular-material/modules/closure/content/content-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/content/content.css create mode 100644 public/app/bower_components/angular-material/modules/closure/content/content.js create mode 100644 public/app/bower_components/angular-material/modules/closure/core/core.css create mode 100644 public/app/bower_components/angular-material/modules/closure/core/core.js create mode 100644 public/app/bower_components/angular-material/modules/closure/core/default-theme.js create mode 100644 public/app/bower_components/angular-material/modules/closure/dialog/dialog-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/dialog/dialog.css create mode 100644 public/app/bower_components/angular-material/modules/closure/dialog/dialog.js create mode 100644 public/app/bower_components/angular-material/modules/closure/divider/divider-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/divider/divider.css create mode 100644 public/app/bower_components/angular-material/modules/closure/divider/divider.js create mode 100644 public/app/bower_components/angular-material/modules/closure/icon/icon.css create mode 100644 public/app/bower_components/angular-material/modules/closure/icon/icon.js create mode 100644 public/app/bower_components/angular-material/modules/closure/input/input-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/input/input.css create mode 100644 public/app/bower_components/angular-material/modules/closure/input/input.js create mode 100644 public/app/bower_components/angular-material/modules/closure/list/list.css create mode 100644 public/app/bower_components/angular-material/modules/closure/list/list.js create mode 100644 public/app/bower_components/angular-material/modules/closure/menu/menu.css create mode 100644 public/app/bower_components/angular-material/modules/closure/menu/menu.js create mode 100644 public/app/bower_components/angular-material/modules/closure/progressCircular/progressCircular-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/progressCircular/progressCircular.css create mode 100644 public/app/bower_components/angular-material/modules/closure/progressCircular/progressCircular.js create mode 100644 public/app/bower_components/angular-material/modules/closure/progressLinear/progressLinear-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/progressLinear/progressLinear.css create mode 100644 public/app/bower_components/angular-material/modules/closure/progressLinear/progressLinear.js create mode 100644 public/app/bower_components/angular-material/modules/closure/radioButton/radioButton-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/radioButton/radioButton.css create mode 100644 public/app/bower_components/angular-material/modules/closure/radioButton/radioButton.js create mode 100644 public/app/bower_components/angular-material/modules/closure/sidenav/sidenav-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/sidenav/sidenav.css create mode 100644 public/app/bower_components/angular-material/modules/closure/sidenav/sidenav.js create mode 100644 public/app/bower_components/angular-material/modules/closure/slider/slider-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/slider/slider.css create mode 100644 public/app/bower_components/angular-material/modules/closure/slider/slider.js create mode 100644 public/app/bower_components/angular-material/modules/closure/sticky/sticky.css create mode 100644 public/app/bower_components/angular-material/modules/closure/sticky/sticky.js create mode 100644 public/app/bower_components/angular-material/modules/closure/subheader/subheader-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/subheader/subheader.css create mode 100644 public/app/bower_components/angular-material/modules/closure/subheader/subheader.js create mode 100644 public/app/bower_components/angular-material/modules/closure/swipe/swipe.js create mode 100644 public/app/bower_components/angular-material/modules/closure/switch/switch-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/switch/switch.css create mode 100644 public/app/bower_components/angular-material/modules/closure/switch/switch.js create mode 100644 public/app/bower_components/angular-material/modules/closure/tabs/tabs-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/tabs/tabs.css create mode 100644 public/app/bower_components/angular-material/modules/closure/tabs/tabs.js create mode 100644 public/app/bower_components/angular-material/modules/closure/textField/textField-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/textField/textField.css create mode 100644 public/app/bower_components/angular-material/modules/closure/textField/textField.js create mode 100644 public/app/bower_components/angular-material/modules/closure/toast/toast-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/toast/toast.css create mode 100644 public/app/bower_components/angular-material/modules/closure/toast/toast.js create mode 100644 public/app/bower_components/angular-material/modules/closure/toolbar/toolbar-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/toolbar/toolbar.css create mode 100644 public/app/bower_components/angular-material/modules/closure/toolbar/toolbar.js create mode 100644 public/app/bower_components/angular-material/modules/closure/tooltip/tooltip-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/closure/tooltip/tooltip.css create mode 100644 public/app/bower_components/angular-material/modules/closure/tooltip/tooltip.js create mode 100644 public/app/bower_components/angular-material/modules/closure/whiteframe/whiteframe.css create mode 100644 public/app/bower_components/angular-material/modules/closure/whiteframe/whiteframe.js create mode 100644 public/app/bower_components/angular-material/modules/css/angular-material-layout.css create mode 100644 public/app/bower_components/angular-material/modules/js/backdrop/backdrop-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/backdrop/backdrop-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/backdrop/backdrop.css create mode 100644 public/app/bower_components/angular-material/modules/js/backdrop/backdrop.js create mode 100644 public/app/bower_components/angular-material/modules/js/backdrop/backdrop.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/backdrop/backdrop.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/backdrop/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/bottomSheet/bottomSheet-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/bottomSheet/bottomSheet-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/bottomSheet/bottomSheet.css create mode 100644 public/app/bower_components/angular-material/modules/js/bottomSheet/bottomSheet.js create mode 100644 public/app/bower_components/angular-material/modules/js/bottomSheet/bottomSheet.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/bottomSheet/bottomSheet.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/bottomSheet/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/button/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/button/button-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/button/button-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/button/button.css create mode 100644 public/app/bower_components/angular-material/modules/js/button/button.js create mode 100644 public/app/bower_components/angular-material/modules/js/button/button.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/button/button.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/card/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/card/card-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/card/card-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/card/card.css create mode 100644 public/app/bower_components/angular-material/modules/js/card/card.js create mode 100644 public/app/bower_components/angular-material/modules/js/card/card.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/card/card.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/checkbox/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/checkbox/checkbox-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/checkbox/checkbox-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/checkbox/checkbox.css create mode 100644 public/app/bower_components/angular-material/modules/js/checkbox/checkbox.js create mode 100644 public/app/bower_components/angular-material/modules/js/checkbox/checkbox.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/checkbox/checkbox.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/content/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/content/content-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/content/content-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/content/content.css create mode 100644 public/app/bower_components/angular-material/modules/js/content/content.js create mode 100644 public/app/bower_components/angular-material/modules/js/content/content.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/content/content.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/core/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/core/core.css create mode 100644 public/app/bower_components/angular-material/modules/js/core/core.js create mode 100644 public/app/bower_components/angular-material/modules/js/core/core.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/core/core.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/core/default-theme.js create mode 100644 public/app/bower_components/angular-material/modules/js/dialog/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/dialog/dialog-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/dialog/dialog-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/dialog/dialog.css create mode 100644 public/app/bower_components/angular-material/modules/js/dialog/dialog.js create mode 100644 public/app/bower_components/angular-material/modules/js/dialog/dialog.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/dialog/dialog.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/divider/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/divider/divider-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/divider/divider-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/divider/divider.css create mode 100644 public/app/bower_components/angular-material/modules/js/divider/divider.js create mode 100644 public/app/bower_components/angular-material/modules/js/divider/divider.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/divider/divider.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/icon/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/icon/icon.css create mode 100644 public/app/bower_components/angular-material/modules/js/icon/icon.js create mode 100644 public/app/bower_components/angular-material/modules/js/icon/icon.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/icon/icon.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/input/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/input/input-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/input/input-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/input/input.css create mode 100644 public/app/bower_components/angular-material/modules/js/input/input.js create mode 100644 public/app/bower_components/angular-material/modules/js/input/input.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/input/input.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/list/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/list/list.css create mode 100644 public/app/bower_components/angular-material/modules/js/list/list.js create mode 100644 public/app/bower_components/angular-material/modules/js/list/list.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/list/list.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/menu/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/menu/menu.css create mode 100644 public/app/bower_components/angular-material/modules/js/menu/menu.js create mode 100644 public/app/bower_components/angular-material/modules/js/menu/menu.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/menu/menu.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/progressCircular/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/progressCircular/progressCircular-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/progressCircular/progressCircular-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/progressCircular/progressCircular.css create mode 100644 public/app/bower_components/angular-material/modules/js/progressCircular/progressCircular.js create mode 100644 public/app/bower_components/angular-material/modules/js/progressCircular/progressCircular.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/progressCircular/progressCircular.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/progressLinear/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/progressLinear/progressLinear-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/progressLinear/progressLinear-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/progressLinear/progressLinear.css create mode 100644 public/app/bower_components/angular-material/modules/js/progressLinear/progressLinear.js create mode 100644 public/app/bower_components/angular-material/modules/js/progressLinear/progressLinear.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/progressLinear/progressLinear.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/radioButton/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/radioButton/radioButton-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/radioButton/radioButton-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/radioButton/radioButton.css create mode 100644 public/app/bower_components/angular-material/modules/js/radioButton/radioButton.js create mode 100644 public/app/bower_components/angular-material/modules/js/radioButton/radioButton.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/radioButton/radioButton.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/sidenav/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/sidenav/sidenav-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/sidenav/sidenav-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/sidenav/sidenav.css create mode 100644 public/app/bower_components/angular-material/modules/js/sidenav/sidenav.js create mode 100644 public/app/bower_components/angular-material/modules/js/sidenav/sidenav.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/sidenav/sidenav.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/slider/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/slider/slider-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/slider/slider-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/slider/slider.css create mode 100644 public/app/bower_components/angular-material/modules/js/slider/slider.js create mode 100644 public/app/bower_components/angular-material/modules/js/slider/slider.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/slider/slider.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/sticky/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/sticky/sticky.css create mode 100644 public/app/bower_components/angular-material/modules/js/sticky/sticky.js create mode 100644 public/app/bower_components/angular-material/modules/js/sticky/sticky.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/sticky/sticky.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/subheader/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/subheader/subheader-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/subheader/subheader-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/subheader/subheader.css create mode 100644 public/app/bower_components/angular-material/modules/js/subheader/subheader.js create mode 100644 public/app/bower_components/angular-material/modules/js/subheader/subheader.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/subheader/subheader.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/swipe/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/swipe/swipe.js create mode 100644 public/app/bower_components/angular-material/modules/js/swipe/swipe.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/switch/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/switch/switch-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/switch/switch-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/switch/switch.css create mode 100644 public/app/bower_components/angular-material/modules/js/switch/switch.js create mode 100644 public/app/bower_components/angular-material/modules/js/switch/switch.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/switch/switch.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/tabs/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/tabs/tabs-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/tabs/tabs-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/tabs/tabs.css create mode 100644 public/app/bower_components/angular-material/modules/js/tabs/tabs.js create mode 100644 public/app/bower_components/angular-material/modules/js/tabs/tabs.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/tabs/tabs.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/textField/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/textField/textField-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/textField/textField-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/textField/textField.css create mode 100644 public/app/bower_components/angular-material/modules/js/textField/textField.js create mode 100644 public/app/bower_components/angular-material/modules/js/textField/textField.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/textField/textField.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/toast/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/toast/toast-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/toast/toast-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/toast/toast.css create mode 100644 public/app/bower_components/angular-material/modules/js/toast/toast.js create mode 100644 public/app/bower_components/angular-material/modules/js/toast/toast.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/toast/toast.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/toolbar/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/toolbar/toolbar-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/toolbar/toolbar-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/toolbar/toolbar.css create mode 100644 public/app/bower_components/angular-material/modules/js/toolbar/toolbar.js create mode 100644 public/app/bower_components/angular-material/modules/js/toolbar/toolbar.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/toolbar/toolbar.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/tooltip/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/tooltip/tooltip-default-theme.css create mode 100644 public/app/bower_components/angular-material/modules/js/tooltip/tooltip-default-theme.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/tooltip/tooltip.css create mode 100644 public/app/bower_components/angular-material/modules/js/tooltip/tooltip.js create mode 100644 public/app/bower_components/angular-material/modules/js/tooltip/tooltip.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/tooltip/tooltip.min.js create mode 100644 public/app/bower_components/angular-material/modules/js/whiteframe/bower.json create mode 100644 public/app/bower_components/angular-material/modules/js/whiteframe/whiteframe.css create mode 100644 public/app/bower_components/angular-material/modules/js/whiteframe/whiteframe.js create mode 100644 public/app/bower_components/angular-material/modules/js/whiteframe/whiteframe.min.css create mode 100644 public/app/bower_components/angular-material/modules/js/whiteframe/whiteframe.min.js delete mode 100644 public/app/bower_components/angular-material/themes/amber-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/blue-grey-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/blue-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/brown-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/cyan-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/deep-orange-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/deep-purple-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/default-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/green-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/grey-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/indigo-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/light-blue-dark-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/light-green-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/lime-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/orange-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/pink-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/purple-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/red-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/teal-theme.css delete mode 100644 public/app/bower_components/angular-material/themes/yellow-theme.css create mode 100644 public/app/bower_components/angular-moment/angular-moment.nuspec create mode 100644 public/app/bower_components/angular-ui-router/CONTRIBUTING.md create mode 100644 public/app/bower_components/html5-boilerplate/.editorconfig delete mode 100644 public/app/bower_components/html5-boilerplate/.htaccess create mode 100644 public/app/bower_components/html5-boilerplate/.jscsrc create mode 100644 public/app/bower_components/html5-boilerplate/.jshintrc create mode 100644 public/app/bower_components/html5-boilerplate/.travis.yml delete mode 100644 public/app/bower_components/html5-boilerplate/404.html delete mode 100644 public/app/bower_components/html5-boilerplate/apple-touch-icon-precomposed.png delete mode 100644 public/app/bower_components/html5-boilerplate/css/normalize.css create mode 100644 public/app/bower_components/html5-boilerplate/dist/.editorconfig create mode 100644 public/app/bower_components/html5-boilerplate/dist/.gitattributes create mode 100644 public/app/bower_components/html5-boilerplate/dist/.gitignore create mode 100644 public/app/bower_components/html5-boilerplate/dist/.htaccess create mode 100644 public/app/bower_components/html5-boilerplate/dist/404.html create mode 100644 public/app/bower_components/html5-boilerplate/dist/apple-touch-icon.png create mode 100644 public/app/bower_components/html5-boilerplate/dist/browserconfig.xml rename public/app/bower_components/html5-boilerplate/{ => dist}/crossdomain.xml (84%) create mode 100644 public/app/bower_components/html5-boilerplate/dist/css/main.css create mode 100644 public/app/bower_components/html5-boilerplate/dist/css/normalize.css create mode 100644 public/app/bower_components/html5-boilerplate/dist/doc/TOC.md create mode 100644 public/app/bower_components/html5-boilerplate/dist/doc/css.md rename public/app/bower_components/html5-boilerplate/{ => dist}/doc/extend.md (67%) create mode 100644 public/app/bower_components/html5-boilerplate/dist/doc/faq.md create mode 100644 public/app/bower_components/html5-boilerplate/dist/doc/html.md rename public/app/bower_components/html5-boilerplate/{ => dist}/doc/js.md (78%) create mode 100644 public/app/bower_components/html5-boilerplate/dist/doc/misc.md rename public/app/bower_components/html5-boilerplate/{ => dist}/doc/usage.md (73%) rename public/app/bower_components/html5-boilerplate/{ => dist}/favicon.ico (100%) rename public/app/bower_components/html5-boilerplate/{ => dist}/humans.txt (66%) rename public/app/bower_components/html5-boilerplate/{ => dist}/img/.gitignore (100%) rename public/app/bower_components/html5-boilerplate/{ => dist}/index.html (59%) create mode 100644 public/app/bower_components/html5-boilerplate/dist/js/main.js rename public/app/bower_components/html5-boilerplate/{ => dist}/js/plugins.js (91%) create mode 100644 public/app/bower_components/html5-boilerplate/dist/js/vendor/jquery-1.11.2.min.js create mode 100644 public/app/bower_components/html5-boilerplate/dist/js/vendor/modernizr-2.8.3.min.js create mode 100644 public/app/bower_components/html5-boilerplate/dist/robots.txt create mode 100644 public/app/bower_components/html5-boilerplate/dist/tile-wide.png create mode 100644 public/app/bower_components/html5-boilerplate/dist/tile.png delete mode 100644 public/app/bower_components/html5-boilerplate/doc/TOC.md delete mode 100644 public/app/bower_components/html5-boilerplate/doc/crossdomain.md delete mode 100644 public/app/bower_components/html5-boilerplate/doc/css.md delete mode 100644 public/app/bower_components/html5-boilerplate/doc/faq.md delete mode 100644 public/app/bower_components/html5-boilerplate/doc/html.md delete mode 100644 public/app/bower_components/html5-boilerplate/doc/misc.md create mode 100644 public/app/bower_components/html5-boilerplate/gulpfile.js delete mode 100644 public/app/bower_components/html5-boilerplate/js/main.js delete mode 100644 public/app/bower_components/html5-boilerplate/js/vendor/jquery-1.10.2.min.js delete mode 100644 public/app/bower_components/html5-boilerplate/js/vendor/modernizr-2.6.2.min.js create mode 100644 public/app/bower_components/html5-boilerplate/package.json delete mode 100644 public/app/bower_components/html5-boilerplate/robots.txt create mode 100644 public/app/bower_components/html5-boilerplate/src/.editorconfig create mode 100644 public/app/bower_components/html5-boilerplate/src/.gitattributes create mode 100644 public/app/bower_components/html5-boilerplate/src/.gitignore create mode 100644 public/app/bower_components/html5-boilerplate/src/404.html create mode 100644 public/app/bower_components/html5-boilerplate/src/apple-touch-icon.png create mode 100644 public/app/bower_components/html5-boilerplate/src/browserconfig.xml create mode 100644 public/app/bower_components/html5-boilerplate/src/crossdomain.xml rename public/app/bower_components/html5-boilerplate/{ => src}/css/main.css (76%) create mode 100644 public/app/bower_components/html5-boilerplate/src/doc/TOC.md create mode 100644 public/app/bower_components/html5-boilerplate/src/doc/css.md create mode 100644 public/app/bower_components/html5-boilerplate/src/doc/extend.md create mode 100644 public/app/bower_components/html5-boilerplate/src/doc/faq.md create mode 100644 public/app/bower_components/html5-boilerplate/src/doc/html.md create mode 100644 public/app/bower_components/html5-boilerplate/src/doc/js.md create mode 100644 public/app/bower_components/html5-boilerplate/src/doc/misc.md create mode 100644 public/app/bower_components/html5-boilerplate/src/doc/usage.md create mode 100644 public/app/bower_components/html5-boilerplate/src/favicon.ico create mode 100644 public/app/bower_components/html5-boilerplate/src/humans.txt create mode 100644 public/app/bower_components/html5-boilerplate/src/img/.gitignore create mode 100644 public/app/bower_components/html5-boilerplate/src/index.html create mode 100644 public/app/bower_components/html5-boilerplate/src/js/main.js create mode 100644 public/app/bower_components/html5-boilerplate/src/js/plugins.js create mode 100644 public/app/bower_components/html5-boilerplate/src/js/vendor/modernizr-2.8.3.min.js create mode 100644 public/app/bower_components/html5-boilerplate/src/robots.txt create mode 100644 public/app/bower_components/html5-boilerplate/src/tile-wide.png create mode 100644 public/app/bower_components/html5-boilerplate/src/tile.png create mode 100644 public/app/bower_components/html5-boilerplate/test/file_content.js create mode 100644 public/app/bower_components/html5-boilerplate/test/file_existence.js create mode 100644 public/app/bower_components/moment/Moment.js.nuspec create mode 100644 public/app/bower_components/moment/locale/ar-tn.js create mode 100644 public/app/bower_components/moment/locale/fy.js create mode 100644 public/app/bower_components/moment/meteor/README.md create mode 100644 public/app/bower_components/moment/meteor/export.js create mode 100644 public/app/bower_components/moment/meteor/test.js create mode 100755 public/app/bower_components/moment/scripts/npm_prepublish.sh diff --git a/Gemfile.lock b/Gemfile.lock index 4beb1b39..b53f6861 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -7,7 +7,7 @@ GEM coderay (~> 1.1.0) method_source (~> 0.8.1) slop (~> 3.4) - puma (2.10.2) + puma (2.11.0) rack (>= 1.1, < 2.0) rack (1.6.0) rack-protection (1.5.3) @@ -18,7 +18,7 @@ GEM rack (~> 1.4) rack-protection (~> 1.4) tilt (~> 1.3, >= 1.3.4) - sinatra-param (1.2.2) + sinatra-param (1.3.1) sinatra (~> 1.3) slop (3.6.0) tilt (1.4.1) diff --git a/public/app/bower_components/angular-animate/.bower.json b/public/app/bower_components/angular-animate/.bower.json index f197901c..e7cc7575 100644 --- a/public/app/bower_components/angular-animate/.bower.json +++ b/public/app/bower_components/angular-animate/.bower.json @@ -1,17 +1,17 @@ { "name": "angular-animate", - "version": "1.3.1", + "version": "1.3.12", "main": "./angular-animate.js", "ignore": [], "dependencies": { - "angular": "1.3.1" + "angular": "1.3.12" }, "homepage": "https://github.com/angular/bower-angular-animate", - "_release": "1.3.1", + "_release": "1.3.12", "_resolution": { "type": "version", - "tag": "v1.3.1", - "commit": "3b55cee18abd8aafab26456b59c663afb4263a1c" + "tag": "v1.3.12", + "commit": "15ed4de8c25663d412b0c953b0d70c1133e9fd31" }, "_source": "git://github.com/angular/bower-angular-animate.git", "_target": "~1.3.1", diff --git a/public/app/bower_components/angular-animate/README.md b/public/app/bower_components/angular-animate/README.md index 50ebe819..930b5dcc 100644 --- a/public/app/bower_components/angular-animate/README.md +++ b/public/app/bower_components/angular-animate/README.md @@ -17,7 +17,7 @@ npm install angular-animate Add a ` + ``` Then add `ngAnimate` as a dependency for your app: @@ -38,7 +38,7 @@ bower install angular-animate Then add a ` + ``` Then add `ngAnimate` as a dependency for your app: diff --git a/public/app/bower_components/angular-animate/angular-animate.js b/public/app/bower_components/angular-animate/angular-animate.js index 5a56c7c2..98e39bc1 100644 --- a/public/app/bower_components/angular-animate/angular-animate.js +++ b/public/app/bower_components/angular-animate/angular-animate.js @@ -1,5 +1,5 @@ /** - * @license AngularJS v1.3.1 + * @license AngularJS v1.3.12 * (c) 2010-2014 Google, Inc. http://angularjs.org * License: MIT */ @@ -19,7 +19,7 @@ * # Usage * * To see animations in action, all that is required is to define the appropriate CSS classes - * or to register a JavaScript animation via the myModule.animation() function. The directives that support animation automatically are: + * or to register a JavaScript animation via the `myModule.animation()` function. The directives that support animation automatically are: * `ngRepeat`, `ngInclude`, `ngIf`, `ngSwitch`, `ngShow`, `ngHide`, `ngView` and `ngClass`. Custom directives can take advantage of animation * by using the `$animate` service. * @@ -161,8 +161,8 @@ * ### Structural transition animations * * Structural transitions (such as enter, leave and move) will always apply a `0s none` transition - * value to force the browser into rendering the styles defined in the setup (.ng-enter, .ng-leave - * or .ng-move) class. This means that any active transition animations operating on the element + * value to force the browser into rendering the styles defined in the setup (`.ng-enter`, `.ng-leave` + * or `.ng-move`) class. This means that any active transition animations operating on the element * will be cut off to make way for the enter, leave or move animation. * * ### Class-based transition animations @@ -245,7 +245,7 @@ * You then configure `$animate` to enforce this prefix: * * ```js - * $animateProvider.classNamePrefix(/animate-/); + * $animateProvider.classNameFilter(/animate-/); * ``` * * @@ -479,11 +479,12 @@ angular.module('ngAnimate', ['ng']) function isMatchingElement(elm1, elm2) { return extractElementNode(elm1) == extractElementNode(elm2); } - + var $$jqLite; $provide.decorator('$animate', - ['$delegate', '$$q', '$injector', '$sniffer', '$rootElement', '$$asyncCallback', '$rootScope', '$document', '$templateRequest', - function($delegate, $$q, $injector, $sniffer, $rootElement, $$asyncCallback, $rootScope, $document, $templateRequest) { + ['$delegate', '$$q', '$injector', '$sniffer', '$rootElement', '$$asyncCallback', '$rootScope', '$document', '$templateRequest', '$$jqLite', + function($delegate, $$q, $injector, $sniffer, $rootElement, $$asyncCallback, $rootScope, $document, $templateRequest, $$$jqLite) { + $$jqLite = $$$jqLite; $rootElement.data(NG_ANIMATE_STATE, rootAnimateState); // Wait until all directive and route-related templates are downloaded and @@ -838,7 +839,8 @@ angular.module('ngAnimate', ['ng']) * promise that was returned when the animation was started. * * ```js - * var promise = $animate.addClass(element, 'super-long-animation').then(function() { + * var promise = $animate.addClass(element, 'super-long-animation'); + * promise.then(function() { * //this will still be called even if cancelled * }); * @@ -877,22 +879,22 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during the `animate` animation: * - * | Animation Step | What the element class attribute looks like | - * |-------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------| - * | 1. $animate.animate(...) is called | class="my-animation" | - * | 2. $animate waits for the next digest to start the animation | class="my-animation ng-animate" | - * | 3. $animate runs the JavaScript-defined animations detected on the element | class="my-animation ng-animate" | - * | 4. the className class value is added to the element | class="my-animation ng-animate className" | - * | 5. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate className" | - * | 6. $animate blocks all CSS transitions on the element to ensure the .className class styling is applied right away| class="my-animation ng-animate className" | - * | 7. $animate applies the provided collection of `from` CSS styles to the element | class="my-animation ng-animate className" | - * | 8. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate className" | - * | 9. $animate removes the CSS transition block placed on the element | class="my-animation ng-animate className" | - * | 10. the className-active class is added (this triggers the CSS transition/animation) | class="my-animation ng-animate className className-active" | - * | 11. $animate applies the collection of `to` CSS styles to the element which are then handled by the transition | class="my-animation ng-animate className className-active" | - * | 12. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate className className-active" | - * | 13. The animation ends and all generated CSS classes are removed from the element | class="my-animation" | - * | 14. The returned promise is resolved. | class="my-animation" | + * | Animation Step | What the element class attribute looks like | + * |-----------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------| + * | 1. `$animate.animate(...)` is called | `class="my-animation"` | + * | 2. `$animate` waits for the next digest to start the animation | `class="my-animation ng-animate"` | + * | 3. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate"` | + * | 4. the `className` class value is added to the element | `class="my-animation ng-animate className"` | + * | 5. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate className"` | + * | 6. `$animate` blocks all CSS transitions on the element to ensure the `.className` class styling is applied right away| `class="my-animation ng-animate className"` | + * | 7. `$animate` applies the provided collection of `from` CSS styles to the element | `class="my-animation ng-animate className"` | + * | 8. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate className"` | + * | 9. `$animate` removes the CSS transition block placed on the element | `class="my-animation ng-animate className"` | + * | 10. the `className-active` class is added (this triggers the CSS transition/animation) | `class="my-animation ng-animate className className-active"` | + * | 11. `$animate` applies the collection of `to` CSS styles to the element which are then handled by the transition | `class="my-animation ng-animate className className-active"` | + * | 12. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate className className-active"` | + * | 13. The animation ends and all generated CSS classes are removed from the element | `class="my-animation"` | + * | 14. The returned promise is resolved. | `class="my-animation"` | * * @param {DOMElement} element the element that will be the focus of the enter animation * @param {object} from a collection of CSS styles that will be applied to the element at the start of the animation @@ -923,21 +925,21 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during enter animation: * - * | Animation Step | What the element class attribute looks like | - * |-------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------| - * | 1. $animate.enter(...) is called | class="my-animation" | - * | 2. element is inserted into the parentElement element or beside the afterElement element | class="my-animation" | - * | 3. $animate waits for the next digest to start the animation | class="my-animation ng-animate" | - * | 4. $animate runs the JavaScript-defined animations detected on the element | class="my-animation ng-animate" | - * | 5. the .ng-enter class is added to the element | class="my-animation ng-animate ng-enter" | - * | 6. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate ng-enter" | - * | 7. $animate blocks all CSS transitions on the element to ensure the .ng-enter class styling is applied right away | class="my-animation ng-animate ng-enter" | - * | 8. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate ng-enter" | - * | 9. $animate removes the CSS transition block placed on the element | class="my-animation ng-animate ng-enter" | - * | 10. the .ng-enter-active class is added (this triggers the CSS transition/animation) | class="my-animation ng-animate ng-enter ng-enter-active" | - * | 11. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate ng-enter ng-enter-active" | - * | 12. The animation ends and all generated CSS classes are removed from the element | class="my-animation" | - * | 13. The returned promise is resolved. | class="my-animation" | + * | Animation Step | What the element class attribute looks like | + * |-----------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------| + * | 1. `$animate.enter(...)` is called | `class="my-animation"` | + * | 2. element is inserted into the `parentElement` element or beside the `afterElement` element | `class="my-animation"` | + * | 3. `$animate` waits for the next digest to start the animation | `class="my-animation ng-animate"` | + * | 4. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate"` | + * | 5. the `.ng-enter` class is added to the element | `class="my-animation ng-animate ng-enter"` | + * | 6. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate ng-enter"` | + * | 7. `$animate` blocks all CSS transitions on the element to ensure the `.ng-enter` class styling is applied right away | `class="my-animation ng-animate ng-enter"` | + * | 8. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate ng-enter"` | + * | 9. `$animate` removes the CSS transition block placed on the element | `class="my-animation ng-animate ng-enter"` | + * | 10. the `.ng-enter-active` class is added (this triggers the CSS transition/animation) | `class="my-animation ng-animate ng-enter ng-enter-active"` | + * | 11. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate ng-enter ng-enter-active"` | + * | 12. The animation ends and all generated CSS classes are removed from the element | `class="my-animation"` | + * | 13. The returned promise is resolved. | `class="my-animation"` | * * @param {DOMElement} element the element that will be the focus of the enter animation * @param {DOMElement} parentElement the parent element of the element that will be the focus of the enter animation @@ -969,21 +971,21 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during leave animation: * - * | Animation Step | What the element class attribute looks like | - * |-------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------| - * | 1. $animate.leave(...) is called | class="my-animation" | - * | 2. $animate runs the JavaScript-defined animations detected on the element | class="my-animation ng-animate" | - * | 3. $animate waits for the next digest to start the animation | class="my-animation ng-animate" | - * | 4. the .ng-leave class is added to the element | class="my-animation ng-animate ng-leave" | - * | 5. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate ng-leave" | - * | 6. $animate blocks all CSS transitions on the element to ensure the .ng-leave class styling is applied right away | class="my-animation ng-animate ng-leave” | - * | 7. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate ng-leave" | - * | 8. $animate removes the CSS transition block placed on the element | class="my-animation ng-animate ng-leave” | - * | 9. the .ng-leave-active class is added (this triggers the CSS transition/animation) | class="my-animation ng-animate ng-leave ng-leave-active" | - * | 10. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate ng-leave ng-leave-active" | - * | 11. The animation ends and all generated CSS classes are removed from the element | class="my-animation" | - * | 12. The element is removed from the DOM | ... | - * | 13. The returned promise is resolved. | ... | + * | Animation Step | What the element class attribute looks like | + * |-----------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------| + * | 1. `$animate.leave(...)` is called | `class="my-animation"` | + * | 2. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate"` | + * | 3. `$animate` waits for the next digest to start the animation | `class="my-animation ng-animate"` | + * | 4. the `.ng-leave` class is added to the element | `class="my-animation ng-animate ng-leave"` | + * | 5. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate ng-leave"` | + * | 6. `$animate` blocks all CSS transitions on the element to ensure the `.ng-leave` class styling is applied right away | `class="my-animation ng-animate ng-leave"` | + * | 7. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate ng-leave"` | + * | 8. `$animate` removes the CSS transition block placed on the element | `class="my-animation ng-animate ng-leave"` | + * | 9. the `.ng-leave-active` class is added (this triggers the CSS transition/animation) | `class="my-animation ng-animate ng-leave ng-leave-active"` | + * | 10. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate ng-leave ng-leave-active"` | + * | 11. The animation ends and all generated CSS classes are removed from the element | `class="my-animation"` | + * | 12. The element is removed from the DOM | ... | + * | 13. The returned promise is resolved. | ... | * * @param {DOMElement} element the element that will be the focus of the leave animation * @param {object=} options an optional collection of styles that will be picked up by the CSS transition/animation @@ -1014,21 +1016,21 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during move animation: * - * | Animation Step | What the element class attribute looks like | - * |------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------| - * | 1. $animate.move(...) is called | class="my-animation" | - * | 2. element is moved into the parentElement element or beside the afterElement element | class="my-animation" | - * | 3. $animate waits for the next digest to start the animation | class="my-animation ng-animate" | - * | 4. $animate runs the JavaScript-defined animations detected on the element | class="my-animation ng-animate" | - * | 5. the .ng-move class is added to the element | class="my-animation ng-animate ng-move" | - * | 6. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate ng-move" | - * | 7. $animate blocks all CSS transitions on the element to ensure the .ng-move class styling is applied right away | class="my-animation ng-animate ng-move” | - * | 8. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate ng-move" | - * | 9. $animate removes the CSS transition block placed on the element | class="my-animation ng-animate ng-move” | - * | 10. the .ng-move-active class is added (this triggers the CSS transition/animation) | class="my-animation ng-animate ng-move ng-move-active" | - * | 11. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate ng-move ng-move-active" | - * | 12. The animation ends and all generated CSS classes are removed from the element | class="my-animation" | - * | 13. The returned promise is resolved. | class="my-animation" | + * | Animation Step | What the element class attribute looks like | + * |----------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------| + * | 1. `$animate.move(...)` is called | `class="my-animation"` | + * | 2. element is moved into the parentElement element or beside the afterElement element | `class="my-animation"` | + * | 3. `$animate` waits for the next digest to start the animation | `class="my-animation ng-animate"` | + * | 4. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate"` | + * | 5. the `.ng-move` class is added to the element | `class="my-animation ng-animate ng-move"` | + * | 6. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate ng-move"` | + * | 7. `$animate` blocks all CSS transitions on the element to ensure the `.ng-move` class styling is applied right away | `class="my-animation ng-animate ng-move"` | + * | 8. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate ng-move"` | + * | 9. `$animate` removes the CSS transition block placed on the element | `class="my-animation ng-animate ng-move"` | + * | 10. the `.ng-move-active` class is added (this triggers the CSS transition/animation) | `class="my-animation ng-animate ng-move ng-move-active"` | + * | 11. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate ng-move ng-move-active"` | + * | 12. The animation ends and all generated CSS classes are removed from the element | `class="my-animation"` | + * | 13. The returned promise is resolved. | `class="my-animation"` | * * @param {DOMElement} element the element that will be the focus of the move animation * @param {DOMElement} parentElement the parentElement element of the element that will be the focus of the move animation @@ -1062,18 +1064,18 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during addClass animation: * - * | Animation Step | What the element class attribute looks like | - * |----------------------------------------------------------------------------------------------------|------------------------------------------------------------------| - * | 1. $animate.addClass(element, 'super') is called | class="my-animation" | - * | 2. $animate runs the JavaScript-defined animations detected on the element | class="my-animation ng-animate" | - * | 3. the .super-add class is added to the element | class="my-animation ng-animate super-add" | - * | 4. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate super-add" | - * | 5. the .super and .super-add-active classes are added (this triggers the CSS transition/animation) | class="my-animation ng-animate super super-add super-add-active" | - * | 6. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate super-add" | - * | 7. $animate waits for the animation to complete (via events and timeout) | class="my-animation super super-add super-add-active" | - * | 8. The animation ends and all generated CSS classes are removed from the element | class="my-animation super" | - * | 9. The super class is kept on the element | class="my-animation super" | - * | 10. The returned promise is resolved. | class="my-animation super" | + * | Animation Step | What the element class attribute looks like | + * |--------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------| + * | 1. `$animate.addClass(element, 'super')` is called | `class="my-animation"` | + * | 2. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate"` | + * | 3. the `.super-add` class is added to the element | `class="my-animation ng-animate super-add"` | + * | 4. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate super-add"` | + * | 5. the `.super` and `.super-add-active` classes are added (this triggers the CSS transition/animation) | `class="my-animation ng-animate super super-add super-add-active"` | + * | 6. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate super super-add super-add-active"` | + * | 7. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate super super-add super-add-active"` | + * | 8. The animation ends and all generated CSS classes are removed from the element | `class="my-animation super"` | + * | 9. The super class is kept on the element | `class="my-animation super"` | + * | 10. The returned promise is resolved. | `class="my-animation super"` | * * @param {DOMElement} element the element that will be animated * @param {string} className the CSS class that will be added to the element and then animated @@ -1096,17 +1098,17 @@ angular.module('ngAnimate', ['ng']) * * Below is a breakdown of each step that occurs during removeClass animation: * - * | Animation Step | What the element class attribute looks like | - * |------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------| - * | 1. $animate.removeClass(element, 'super') is called | class="my-animation super" | - * | 2. $animate runs the JavaScript-defined animations detected on the element | class="my-animation super ng-animate" | - * | 3. the .super-remove class is added to the element | class="my-animation super ng-animate super-remove" | - * | 4. $animate waits for a single animation frame (this performs a reflow) | class="my-animation super ng-animate super-remove" | - * | 5. the .super-remove-active classes are added and .super is removed (this triggers the CSS transition/animation) | class="my-animation ng-animate super-remove super-remove-active" | - * | 6. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation super ng-animate super-remove" | - * | 7. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate super-remove super-remove-active" | - * | 8. The animation ends and all generated CSS classes are removed from the element | class="my-animation" | - * | 9. The returned promise is resolved. | class="my-animation" | + * | Animation Step | What the element class attribute looks like | + * |----------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------| + * | 1. `$animate.removeClass(element, 'super')` is called | `class="my-animation super"` | + * | 2. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation super ng-animate"` | + * | 3. the `.super-remove` class is added to the element | `class="my-animation super ng-animate super-remove"` | + * | 4. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation super ng-animate super-remove"` | + * | 5. the `.super-remove-active` classes are added and `.super` is removed (this triggers the CSS transition/animation) | `class="my-animation ng-animate super-remove super-remove-active"` | + * | 6. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate super-remove super-remove-active"` | + * | 7. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate super-remove super-remove-active"` | + * | 8. The animation ends and all generated CSS classes are removed from the element | `class="my-animation"` | + * | 9. The returned promise is resolved. | `class="my-animation"` | * * * @param {DOMElement} element the element that will be animated @@ -1124,19 +1126,19 @@ angular.module('ngAnimate', ['ng']) * @name $animate#setClass * * @description Adds and/or removes the given CSS classes to and from the element. - * Once complete, the done() callback will be fired (if provided). + * Once complete, the `done()` callback will be fired (if provided). * - * | Animation Step | What the element class attribute looks like | - * |--------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------| - * | 1. $animate.removeClass(element, ‘on’, ‘off’) is called | class="my-animation super off” | - * | 2. $animate runs the JavaScript-defined animations detected on the element | class="my-animation super ng-animate off” | - * | 3. the .on-add and .off-remove classes are added to the element | class="my-animation ng-animate on-add off-remove off” | - * | 4. $animate waits for a single animation frame (this performs a reflow) | class="my-animation ng-animate on-add off-remove off” | - * | 5. the .on, .on-add-active and .off-remove-active classes are added and .off is removed (this triggers the CSS transition/animation) | class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active” | - * | 6. $animate scans the element styles to get the CSS transition/animation duration and delay | class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active" | - * | 7. $animate waits for the animation to complete (via events and timeout) | class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active" | - * | 8. The animation ends and all generated CSS classes are removed from the element | class="my-animation on" | - * | 9. The returned promise is resolved. | class="my-animation on" | + * | Animation Step | What the element class attribute looks like | + * |----------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------| + * | 1. `$animate.setClass(element, 'on', 'off')` is called | `class="my-animation off"` | + * | 2. `$animate` runs the JavaScript-defined animations detected on the element | `class="my-animation ng-animate off"` | + * | 3. the `.on-add` and `.off-remove` classes are added to the element | `class="my-animation ng-animate on-add off-remove off"` | + * | 4. `$animate` waits for a single animation frame (this performs a reflow) | `class="my-animation ng-animate on-add off-remove off"` | + * | 5. the `.on`, `.on-add-active` and `.off-remove-active` classes are added and `.off` is removed (this triggers the CSS transition/animation) | `class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active"` | + * | 6. `$animate` scans the element styles to get the CSS transition/animation duration and delay | `class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active"` | + * | 7. `$animate` waits for the animation to complete (via events and timeout) | `class="my-animation ng-animate on on-add on-add-active off-remove off-remove-active"` | + * | 8. The animation ends and all generated CSS classes are removed from the element | `class="my-animation on"` | + * | 9. The returned promise is resolved. | `class="my-animation on"` | * * @param {DOMElement} element the element which will have its CSS classes changed * removed from it @@ -1274,7 +1276,7 @@ angular.module('ngAnimate', ['ng']) all animations call this shared animation triggering function internally. The animationEvent variable refers to the JavaScript animation event that will be triggered and the className value is the name of the animation that will be applied within the - CSS code. Element, parentElement and afterElement are provided DOM elements for the animation + CSS code. Element, `parentElement` and `afterElement` are provided DOM elements for the animation and the onComplete callback will be fired once the animation is fully complete. */ function performAnimation(animationEvent, className, element, parentElement, afterElement, domOperation, options, doneCallback) { @@ -1331,8 +1333,7 @@ angular.module('ngAnimate', ['ng']) } else if (lastAnimation.event == 'setClass') { animationsToCancel.push(lastAnimation); cleanup(element, className); - } - else if (runningAnimations[className]) { + } else if (runningAnimations[className]) { var current = runningAnimations[className]; if (current.event == animationEvent) { skipAnimation = true; @@ -1386,10 +1387,10 @@ angular.module('ngAnimate', ['ng']) //the ng-animate class does nothing, but it's here to allow for //parent animations to find and cancel child animations when needed - element.addClass(NG_ANIMATE_CLASS_NAME); + $$jqLite.addClass(element, NG_ANIMATE_CLASS_NAME); if (options && options.tempClasses) { forEach(options.tempClasses, function(className) { - element.addClass(className); + $$jqLite.addClass(element, className); }); } @@ -1467,7 +1468,7 @@ angular.module('ngAnimate', ['ng']) closeAnimation.hasBeenRun = true; if (options && options.tempClasses) { forEach(options.tempClasses, function(className) { - element.removeClass(className); + $$jqLite.removeClass(element, className); }); } @@ -1529,7 +1530,7 @@ angular.module('ngAnimate', ['ng']) } if (removeAnimations || !data.totalActive) { - element.removeClass(NG_ANIMATE_CLASS_NAME); + $$jqLite.removeClass(element, NG_ANIMATE_CLASS_NAME); element.removeData(NG_ANIMATE_STATE); } } @@ -1770,14 +1771,14 @@ angular.module('ngAnimate', ['ng']) var staggerCacheKey = cacheKey + ' ' + staggerClassName; var applyClasses = !lookupCache[staggerCacheKey]; - applyClasses && element.addClass(staggerClassName); + applyClasses && $$jqLite.addClass(element, staggerClassName); stagger = getElementAnimationDetails(element, staggerCacheKey); - applyClasses && element.removeClass(staggerClassName); + applyClasses && $$jqLite.removeClass(element, staggerClassName); } - element.addClass(className); + $$jqLite.addClass(element, className); var formerData = element.data(NG_ANIMATE_CSS_DATA_KEY) || {}; var timings = getElementAnimationDetails(element, eventCacheKey); @@ -1785,7 +1786,7 @@ angular.module('ngAnimate', ['ng']) var animationDuration = timings.animationDuration; if (structural && transitionDuration === 0 && animationDuration === 0) { - element.removeClass(className); + $$jqLite.removeClass(element, className); return false; } @@ -1857,7 +1858,7 @@ angular.module('ngAnimate', ['ng']) } if (!staggerTime) { - element.addClass(activeClassName); + $$jqLite.addClass(element, activeClassName); if (elementData.blockTransition) { blockTransitions(node, false); } @@ -1867,13 +1868,13 @@ angular.module('ngAnimate', ['ng']) var timings = getElementAnimationDetails(element, eventCacheKey); var maxDuration = Math.max(timings.transitionDuration, timings.animationDuration); if (maxDuration === 0) { - element.removeClass(activeClassName); + $$jqLite.removeClass(element, activeClassName); animateClose(element, className); activeAnimationComplete(); return; } - if (!staggerTime && styles) { + if (!staggerTime && styles && Object.keys(styles).length > 0) { if (!timings.transitionDuration) { element.css('transition', timings.animationDuration + 's linear all'); appliedStyles.push('transition'); @@ -1889,7 +1890,7 @@ angular.module('ngAnimate', ['ng']) //the jqLite object, so we're safe to use a single variable to house //the styles since there is always only one element being animated var oldStyle = node.getAttribute('style') || ''; - if (oldStyle.charAt(oldStyle.length-1) !== ';') { + if (oldStyle.charAt(oldStyle.length - 1) !== ';') { oldStyle += ';'; } node.setAttribute('style', oldStyle + ' ' + style); @@ -1902,7 +1903,7 @@ angular.module('ngAnimate', ['ng']) var staggerTimeout; if (staggerTime > 0) { - element.addClass(pendingClassName); + $$jqLite.addClass(element, pendingClassName); staggerTimeout = $timeout(function() { staggerTimeout = null; @@ -1913,8 +1914,8 @@ angular.module('ngAnimate', ['ng']) blockAnimations(node, false); } - element.addClass(activeClassName); - element.removeClass(pendingClassName); + $$jqLite.addClass(element, activeClassName); + $$jqLite.removeClass(element, pendingClassName); if (styles) { if (timings.transitionDuration === 0) { @@ -1941,8 +1942,8 @@ angular.module('ngAnimate', ['ng']) // timeout done method. function onEnd() { element.off(css3AnimationEvents, onAnimationProgress); - element.removeClass(activeClassName); - element.removeClass(pendingClassName); + $$jqLite.removeClass(element, activeClassName); + $$jqLite.removeClass(element, pendingClassName); if (staggerTimeout) { $timeout.cancel(staggerTimeout); } @@ -2030,7 +2031,7 @@ angular.module('ngAnimate', ['ng']) } function animateClose(element, className) { - element.removeClass(className); + $$jqLite.removeClass(element, className); var data = element.data(NG_ANIMATE_CSS_DATA_KEY); if (data) { if (data.running) { diff --git a/public/app/bower_components/angular-animate/angular-animate.min.js b/public/app/bower_components/angular-animate/angular-animate.min.js index 90b03a38..1cfef491 100644 --- a/public/app/bower_components/angular-animate/angular-animate.min.js +++ b/public/app/bower_components/angular-animate/angular-animate.min.js @@ -1,33 +1,33 @@ /* - AngularJS v1.3.1 + AngularJS v1.3.12 (c) 2010-2014 Google, Inc. http://angularjs.org License: MIT */ -(function(M,f,S){'use strict';f.module("ngAnimate",["ng"]).directive("ngAnimateChildren",function(){return function(T,B,k){k=k.ngAnimateChildren;f.isString(k)&&0===k.length?B.data("$$ngAnimateChildren",!0):T.$watch(k,function(f){B.data("$$ngAnimateChildren",!!f)})}}).factory("$$animateReflow",["$$rAF","$document",function(f,B){return function(k){return f(function(){k()})}}]).config(["$provide","$animateProvider",function(T,B){function k(f){for(var g=0;g=A&&d>=x&&c()}var m=k(d);a=d.data("$$ngAnimateCSS3Data");if(-1!=m.getAttribute("class").indexOf(b)&&a){var q="",r="";g(b.split(" "),function(a,d){var b=(0=C&&b>=x&&c()}var m=g(e);a=e.data("$$ngAnimateCSS3Data");if(-1!=m.getAttribute("class").indexOf(b)&&a){var k="",t="";n(b.split(" "),function(a, +b){var e=(0ARIA - * attributes that convey state or semantic information about the application in order to allow assistive technologies - * to convey appropriate information to persons with disabilities. + * The `ngAria` module provides support for common + * [ARIA](http://www.w3.org/TR/wai-aria/) + * attributes that convey state or semantic information about the application for users + * of assistive technologies, such as screen readers. * *
* - * # Usage - * To enable the addition of the ARIA tags, just require the module into your application and the tags will - * hook into your ng-show/ng-hide, input, textarea, button, select and ng-required directives and adds the - * appropriate ARIA attributes. + * ## Usage * - * Currently, the following ARIA attributes are implemented: + * For ngAria to do its magic, simply include the module as a dependency. The directives supported + * by ngAria are: + * `ngModel`, `ngDisabled`, `ngShow`, `ngHide`, `ngClick`, `ngDblClick`, and `ngMessages`. * - * + aria-hidden - * + aria-checked - * + aria-disabled - * + aria-required - * + aria-invalid - * + aria-multiline - * + aria-valuenow - * + aria-valuemin - * + aria-valuemax - * + tabindex + * Below is a more detailed breakdown of the attributes handled by ngAria: * - * You can disable individual ARIA attributes by using the {@link ngAria.$ariaProvider#config config} method. + * | Directive | Supported Attributes | + * |---------------------------------------------|----------------------------------------------------------------------------------------| + * | {@link ng.directive:ngModel ngModel} | aria-checked, aria-valuemin, aria-valuemax, aria-valuenow, aria-invalid, aria-required | + * | {@link ng.directive:ngDisabled ngDisabled} | aria-disabled | + * | {@link ng.directive:ngShow ngShow} | aria-hidden | + * | {@link ng.directive:ngHide ngHide} | aria-hidden | + * | {@link ng.directive:ngClick ngClick} | tabindex, keypress event | + * | {@link ng.directive:ngDblclick ngDblclick} | tabindex | + * | {@link module:ngMessages ngMessages} | aria-live | + * + * Find out more information about each directive by reading the + * {@link guide/accessibility ngAria Developer Guide}. + * + * ##Example + * Using ngDisabled with ngAria: + * ```html + * + * ``` + * Becomes: + * ```html + * + * ``` + * + * ##Disabling Attributes + * It's possible to disable individual attributes added by ngAria with the + * {@link ngAria.$ariaProvider#config config} method. For more details, see the + * {@link guide/accessibility Developer Guide}. */ - /* global -ngAriaModule */ var ngAriaModule = angular.module('ngAria', ['ng']). provider('$aria', $AriaProvider); @@ -47,10 +63,20 @@ var ngAriaModule = angular.module('ngAria', ['ng']). * * @description * - * Used for configuring ARIA attributes. + * Used for configuring the ARIA attributes injected and managed by ngAria. + * + * ```js + * angular.module('myApp', ['ngAria'], function config($ariaProvider) { + * $ariaProvider.config({ + * ariaValue: true, + * tabindex: false + * }); + * }); + *``` * * ## Dependencies * Requires the {@link ngAria} module to be installed. + * */ function $AriaProvider() { var config = { @@ -61,7 +87,8 @@ function $AriaProvider() { ariaInvalid: true, ariaMultiline: true, ariaValue: true, - tabindex: true + tabindex: true, + bindKeypress: true }; /** @@ -78,6 +105,7 @@ function $AriaProvider() { * - **ariaMultiline** – `{boolean}` – Enables/disables aria-multiline tags * - **ariaValue** – `{boolean}` – Enables/disables aria-valuemin, aria-valuemax and aria-valuenow tags * - **tabindex** – `{boolean}` – Enables/disables tabindex tags + * - **bindKeypress** – `{boolean}` – Enables/disables keypress event binding on ng-click * * @description * Enables/disables various ARIA attributes @@ -86,16 +114,9 @@ function $AriaProvider() { config = angular.extend(config, newConfig); }; - function camelCase(input) { - return input.replace(/-./g, function(letter, pos) { - return letter[1].toUpperCase(); - }); - } - - function watchExpr(attrName, ariaAttr, negate) { - var ariaCamelName = camelCase(ariaAttr); return function(scope, elem, attr) { + var ariaCamelName = attr.$normalize(ariaAttr); if (config[ariaCamelName] && !attr[ariaCamelName]) { scope.$watch(attr[attrName], function(boolVal) { if (negate) { @@ -113,7 +134,41 @@ function $AriaProvider() { * * @description * - * Contains helper methods for applying ARIA attributes to HTML + * The $aria service contains helper methods for applying common + * [ARIA](http://www.w3.org/TR/wai-aria/) attributes to HTML directives. + * + * ngAria injects common accessibility attributes that tell assistive technologies when HTML + * elements are enabled, selected, hidden, and more. To see how this is performed with ngAria, + * let's review a code snippet from ngAria itself: + * + *```js + * ngAriaModule.directive('ngDisabled', ['$aria', function($aria) { + * return $aria.$$watchExpr('ngDisabled', 'aria-disabled'); + * }]) + *``` + * Shown above, the ngAria module creates a directive with the same signature as the + * traditional `ng-disabled` directive. But this ngAria version is dedicated to + * solely managing accessibility attributes. The internal `$aria` service is used to watch the + * boolean attribute `ngDisabled`. If it has not been explicitly set by the developer, + * `aria-disabled` is injected as an attribute with its value synchronized to the value in + * `ngDisabled`. + * + * Because ngAria hooks into the `ng-disabled` directive, developers do not have to do + * anything to enable this feature. The `aria-disabled` attribute is automatically managed + * simply as a silent side-effect of using `ng-disabled` with the ngAria module. + * + * The full list of directives that interface with ngAria: + * * **ngModel** + * * **ngShow** + * * **ngHide** + * * **ngClick** + * * **ngDblclick** + * * **ngMessages** + * * **ngDisabled** + * + * Read the {@link guide/accessibility ngAria Developer Guide} for a thorough explanation of each + * directive. + * * * ## Dependencies * Requires the {@link ngAria} module to be installed. @@ -121,20 +176,13 @@ function $AriaProvider() { this.$get = function() { return { config: function(key) { - return config[camelCase(key)]; + return config[key]; }, $$watchExpr: watchExpr }; }; } -var ngAriaTabindex = ['$aria', function($aria) { - return function(scope, elem, attr) { - if ($aria.config('tabindex') && !elem.attr('tabindex')) { - elem.attr('tabindex', 0); - } - }; -}]; ngAriaModule.directive('ngShow', ['$aria', function($aria) { return $aria.$$watchExpr('ngShow', 'aria-hidden', true); @@ -144,8 +192,8 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { }]) .directive('ngModel', ['$aria', function($aria) { - function shouldAttachAttr(attr, elem) { - return $aria.config(attr) && !elem.attr(attr); + function shouldAttachAttr(attr, normalizedAttr, elem) { + return $aria.config(normalizedAttr) && !elem.attr(attr); } function getShape(attr, elem) { @@ -163,7 +211,7 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { require: '?ngModel', link: function(scope, elem, attr, ngModel) { var shape = getShape(attr, elem); - var needsTabIndex = shouldAttachAttr('tabindex', elem); + var needsTabIndex = shouldAttachAttr('tabindex', 'tabindex', elem); function ngAriaWatchModelValue() { return ngModel.$modelValue; @@ -191,7 +239,7 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { switch (shape) { case 'radio': case 'checkbox': - if (shouldAttachAttr('aria-checked', elem)) { + if (shouldAttachAttr('aria-checked', 'ariaChecked', elem)) { scope.$watch(ngAriaWatchModelValue, shape === 'radio' ? getRadioReaction() : ngAriaCheckboxReaction); } @@ -212,7 +260,7 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { } break; case 'multiline': - if (shouldAttachAttr('aria-multiline', elem)) { + if (shouldAttachAttr('aria-multiline', 'ariaMultiline', elem)) { elem.attr('aria-multiline', true); } break; @@ -222,7 +270,7 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { elem.attr('tabindex', 0); } - if (ngModel.$validators.required && shouldAttachAttr('aria-required', elem)) { + if (ngModel.$validators.required && shouldAttachAttr('aria-required', 'ariaRequired', elem)) { scope.$watch(function ngAriaRequiredWatch() { return ngModel.$error.required; }, function ngAriaRequiredReaction(newVal) { @@ -230,7 +278,7 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { }); } - if (shouldAttachAttr('aria-invalid', elem)) { + if (shouldAttachAttr('aria-invalid', 'ariaInvalid', elem)) { scope.$watch(function ngAriaInvalidWatch() { return ngModel.$invalid; }, function ngAriaInvalidReaction(newVal) { @@ -243,8 +291,49 @@ ngAriaModule.directive('ngShow', ['$aria', function($aria) { .directive('ngDisabled', ['$aria', function($aria) { return $aria.$$watchExpr('ngDisabled', 'aria-disabled'); }]) -.directive('ngClick', ngAriaTabindex) -.directive('ngDblclick', ngAriaTabindex); +.directive('ngMessages', function() { + return { + restrict: 'A', + require: '?ngMessages', + link: function(scope, elem, attr, ngMessages) { + if (!elem.attr('aria-live')) { + elem.attr('aria-live', 'assertive'); + } + } + }; +}) +.directive('ngClick',['$aria', '$parse', function($aria, $parse) { + return { + restrict: 'A', + compile: function(elem, attr) { + var fn = $parse(attr.ngClick, /* interceptorFn */ null, /* expensiveChecks */ true); + return function(scope, elem, attr) { + if ($aria.config('tabindex') && !elem.attr('tabindex')) { + elem.attr('tabindex', 0); + } + + if ($aria.config('bindKeypress') && !attr.ngKeypress) { + elem.on('keypress', function(event) { + if (event.keyCode === 32 || event.keyCode === 13) { + scope.$apply(callback); + } + + function callback() { + fn(scope, { $event: event }); + } + }); + } + }; + } + }; +}]) +.directive('ngDblclick', ['$aria', function($aria) { + return function(scope, elem, attr) { + if ($aria.config('tabindex') && !elem.attr('tabindex')) { + elem.attr('tabindex', 0); + } + }; +}]); })(window, window.angular); diff --git a/public/app/bower_components/angular-aria/angular-aria.min.js b/public/app/bower_components/angular-aria/angular-aria.min.js index f5555ef7..f29a69a7 100644 --- a/public/app/bower_components/angular-aria/angular-aria.min.js +++ b/public/app/bower_components/angular-aria/angular-aria.min.js @@ -1,11 +1,12 @@ /* - AngularJS v1.3.1 + AngularJS v1.3.12 (c) 2010-2014 Google, Inc. http://angularjs.org License: MIT */ -(function(h,k,p){'use strict';h=["$aria",function(c){return function(e,f,a){c.config("tabindex")&&!f.attr("tabindex")&&f.attr("tabindex",0)}}];k.module("ngAria",["ng"]).provider("$aria",function(){function c(a){return a.replace(/-./g,function(b,a){return b[1].toUpperCase()})}function e(a,b,g){var d=c(b);return function(c,e,l){f[d]&&!l[d]&&c.$watch(l[a],function(a){g&&(a=!a);e.attr(b,a)})}}var f={ariaHidden:!0,ariaChecked:!0,ariaDisabled:!0,ariaRequired:!0,ariaInvalid:!0,ariaMultiline:!0,ariaValue:!0, -tabindex:!0};this.config=function(a){f=k.extend(f,a)};this.$get=function(){return{config:function(a){return f[c(a)]},$$watchExpr:e}}}).directive("ngShow",["$aria",function(c){return c.$$watchExpr("ngShow","aria-hidden",!0)}]).directive("ngHide",["$aria",function(c){return c.$$watchExpr("ngHide","aria-hidden",!1)}]).directive("ngModel",["$aria",function(c){function e(a,b){return c.config(a)&&!b.attr(a)}function f(a,b){var c=a.type,d=a.role;return"checkbox"===(c||d)||"menuitemcheckbox"===d?"checkbox": -"radio"===(c||d)||"menuitemradio"===d?"radio":"range"===c||"progressbar"===d||"slider"===d?"range":"textbox"===(c||d)||"TEXTAREA"===b[0].nodeName?"multiline":""}return{restrict:"A",require:"?ngModel",link:function(a,b,g,d){function h(){return d.$modelValue}function k(){return m?(m=!1,function(a){a=a===g.value;b.attr("aria-checked",a);b.attr("tabindex",0-!a)}):function(a){b.attr("aria-checked",a===g.value)}}function l(a){b.attr("aria-checked",!!a)}var n=f(g,b),m=e("tabindex",b);switch(n){case "radio":case "checkbox":e("aria-checked", -b)&&a.$watch(h,"radio"===n?k():l);break;case "range":c.config("ariaValue")&&(g.min&&!b.attr("aria-valuemin")&&b.attr("aria-valuemin",g.min),g.max&&!b.attr("aria-valuemax")&&b.attr("aria-valuemax",g.max),b.attr("aria-valuenow")||a.$watch(h,function(a){b.attr("aria-valuenow",a)}));break;case "multiline":e("aria-multiline",b)&&b.attr("aria-multiline",!0)}m&&b.attr("tabindex",0);d.$validators.required&&e("aria-required",b)&&a.$watch(function(){return d.$error.required},function(a){b.attr("aria-required", -!!a)});e("aria-invalid",b)&&a.$watch(function(){return d.$invalid},function(a){b.attr("aria-invalid",!!a)})}}}]).directive("ngDisabled",["$aria",function(c){return c.$$watchExpr("ngDisabled","aria-disabled")}]).directive("ngClick",h).directive("ngDblclick",h)})(window,window.angular); +(function(p,k,q){'use strict';k.module("ngAria",["ng"]).provider("$aria",function(){function b(b,e,c){return function(d,h,f){var l=f.$normalize(e);a[l]&&!f[l]&&d.$watch(f[b],function(d){c&&(d=!d);h.attr(e,d)})}}var a={ariaHidden:!0,ariaChecked:!0,ariaDisabled:!0,ariaRequired:!0,ariaInvalid:!0,ariaMultiline:!0,ariaValue:!0,tabindex:!0,bindKeypress:!0};this.config=function(b){a=k.extend(a,b)};this.$get=function(){return{config:function(b){return a[b]},$$watchExpr:b}}}).directive("ngShow",["$aria",function(b){return b.$$watchExpr("ngShow", +"aria-hidden",!0)}]).directive("ngHide",["$aria",function(b){return b.$$watchExpr("ngHide","aria-hidden",!1)}]).directive("ngModel",["$aria",function(b){function a(a,c,d){return b.config(c)&&!d.attr(a)}function g(b,c){var d=b.type,a=b.role;return"checkbox"===(d||a)||"menuitemcheckbox"===a?"checkbox":"radio"===(d||a)||"menuitemradio"===a?"radio":"range"===d||"progressbar"===a||"slider"===a?"range":"textbox"===(d||a)||"TEXTAREA"===c[0].nodeName?"multiline":""}return{restrict:"A",require:"?ngModel", +link:function(e,c,d,h){function f(){return h.$modelValue}function l(){return m?(m=!1,function(a){a=a===d.value;c.attr("aria-checked",a);c.attr("tabindex",0-!a)}):function(a){c.attr("aria-checked",a===d.value)}}function n(a){c.attr("aria-checked",!!a)}var k=g(d,c),m=a("tabindex","tabindex",c);switch(k){case "radio":case "checkbox":a("aria-checked","ariaChecked",c)&&e.$watch(f,"radio"===k?l():n);break;case "range":b.config("ariaValue")&&(d.min&&!c.attr("aria-valuemin")&&c.attr("aria-valuemin",d.min), +d.max&&!c.attr("aria-valuemax")&&c.attr("aria-valuemax",d.max),c.attr("aria-valuenow")||e.$watch(f,function(a){c.attr("aria-valuenow",a)}));break;case "multiline":a("aria-multiline","ariaMultiline",c)&&c.attr("aria-multiline",!0)}m&&c.attr("tabindex",0);h.$validators.required&&a("aria-required","ariaRequired",c)&&e.$watch(function(){return h.$error.required},function(a){c.attr("aria-required",!!a)});a("aria-invalid","ariaInvalid",c)&&e.$watch(function(){return h.$invalid},function(a){c.attr("aria-invalid", +!!a)})}}}]).directive("ngDisabled",["$aria",function(b){return b.$$watchExpr("ngDisabled","aria-disabled")}]).directive("ngMessages",function(){return{restrict:"A",require:"?ngMessages",link:function(b,a,g,e){a.attr("aria-live")||a.attr("aria-live","assertive")}}}).directive("ngClick",["$aria","$parse",function(b,a){return{restrict:"A",compile:function(g,e){var c=a(e.ngClick,null,!0);return function(a,e,f){b.config("tabindex")&&!e.attr("tabindex")&&e.attr("tabindex",0);if(b.config("bindKeypress")&& +!f.ngKeypress)e.on("keypress",function(b){function e(){c(a,{$event:b})}32!==b.keyCode&&13!==b.keyCode||a.$apply(e)})}}}}]).directive("ngDblclick",["$aria",function(b){return function(a,g,e){b.config("tabindex")&&!g.attr("tabindex")&&g.attr("tabindex",0)}}])})(window,window.angular); //# sourceMappingURL=angular-aria.min.js.map diff --git a/public/app/bower_components/angular-aria/angular-aria.min.js.map b/public/app/bower_components/angular-aria/angular-aria.min.js.map index 0df66432..a32afc5a 100644 --- a/public/app/bower_components/angular-aria/angular-aria.min.js.map +++ b/public/app/bower_components/angular-aria/angular-aria.min.js.map @@ -1,8 +1,8 @@ { "version":3, "file":"angular-aria.min.js", -"lineCount":10, -"mappings":"A;;;;;aAKC,SAAQ,CAACA,CAAD,CAASC,CAAT,CAAkBC,CAAlB,CAA6B,CA6HlCC,CAAAA,CAAiB,CAAC,OAAD,CAAU,QAAQ,CAACC,CAAD,CAAQ,CAC7C,MAAO,SAAQ,CAACC,CAAD,CAAQC,CAAR,CAAcC,CAAd,CAAoB,CAC7BH,CAAAI,OAAA,CAAa,UAAb,CAAJ,EAAiC,CAAAF,CAAAC,KAAA,CAAU,UAAV,CAAjC,EACED,CAAAC,KAAA,CAAU,UAAV,CAAsB,CAAtB,CAF+B,CADU,CAA1B,CA1FFN,EAAAQ,OAAA,CAAe,QAAf,CAAyB,CAAC,IAAD,CAAzB,CAAAC,SAAAC,CACc,OADdA,CAcnBC,QAAsB,EAAG,CAkCvBC,QAASA,EAAS,CAACC,CAAD,CAAQ,CACxB,MAAOA,EAAAC,QAAA,CAAc,KAAd,CAAqB,QAAQ,CAACC,CAAD,CAASC,CAAT,CAAc,CAChD,MAAOD,EAAA,CAAO,CAAP,CAAAE,YAAA,EADyC,CAA3C,CADiB,CAO1BC,QAASA,EAAS,CAACC,CAAD,CAAWC,CAAX,CAAqBC,CAArB,CAA6B,CAC7C,IAAIC,EAAgBV,CAAA,CAAUQ,CAAV,CACpB,OAAO,SAAQ,CAAChB,CAAD,CAAQC,CAAR,CAAcC,CAAd,CAAoB,CAC7BC,CAAA,CAAOe,CAAP,CAAJ,EAA8B,CAAAhB,CAAA,CAAKgB,CAAL,CAA9B,EACElB,CAAAmB,OAAA,CAAajB,CAAA,CAAKa,CAAL,CAAb,CAA6B,QAAQ,CAACK,CAAD,CAAU,CACzCH,CAAJ,GACEG,CADF,CACY,CAACA,CADb,CAGAnB,EAAAC,KAAA,CAAUc,CAAV,CAAoBI,CAApB,CAJ6C,CAA/C,CAF+B,CAFU,CAxC/C,IAAIjB,EAAS,CACXkB,WAAY,CAAA,CADD,CAEXC,YAAa,CAAA,CAFF,CAGXC,aAAc,CAAA,CAHH,CAIXC,aAAc,CAAA,CAJH,CAKXC,YAAa,CAAA,CALF,CAMXC,cAAe,CAAA,CANJ,CAOXC,UAAW,CAAA,CAPA;AAQXC,SAAU,CAAA,CARC,CA6Bb,KAAAzB,OAAA,CAAc0B,QAAQ,CAACC,CAAD,CAAY,CAChC3B,CAAA,CAASP,CAAAmC,OAAA,CAAe5B,CAAf,CAAuB2B,CAAvB,CADuB,CAoClC,KAAAE,KAAA,CAAYC,QAAQ,EAAG,CACrB,MAAO,CACL9B,OAAQA,QAAQ,CAAC+B,CAAD,CAAM,CACpB,MAAO/B,EAAA,CAAOK,CAAA,CAAU0B,CAAV,CAAP,CADa,CADjB,CAILC,YAAarB,CAJR,CADc,CAlEA,CAdNR,CAkGnB8B,UAAA,CAAuB,QAAvB,CAAiC,CAAC,OAAD,CAAU,QAAQ,CAACrC,CAAD,CAAQ,CACzD,MAAOA,EAAAoC,YAAA,CAAkB,QAAlB,CAA4B,aAA5B,CAA2C,CAAA,CAA3C,CADkD,CAA1B,CAAjC,CAAAC,UAAA,CAGW,QAHX,CAGqB,CAAC,OAAD,CAAU,QAAQ,CAACrC,CAAD,CAAQ,CAC7C,MAAOA,EAAAoC,YAAA,CAAkB,QAAlB,CAA4B,aAA5B,CAA2C,CAAA,CAA3C,CADsC,CAA1B,CAHrB,CAAAC,UAAA,CAMW,SANX,CAMsB,CAAC,OAAD,CAAU,QAAQ,CAACrC,CAAD,CAAQ,CAE9CsC,QAASA,EAAgB,CAACnC,CAAD,CAAOD,CAAP,CAAa,CACpC,MAAOF,EAAAI,OAAA,CAAaD,CAAb,CAAP,EAA6B,CAACD,CAAAC,KAAA,CAAUA,CAAV,CADM,CAItCoC,QAASA,EAAQ,CAACpC,CAAD,CAAOD,CAAP,CAAa,CAAA,IACxBsC,EAAOrC,CAAAqC,KADiB,CAExBC,EAAOtC,CAAAsC,KAEX,OAA2B,UAApB,IAAED,CAAF,EAAUC,CAAV,GAA2C,kBAA3C,GAAkCA,CAAlC,CAAiE,UAAjE;AACoB,OAApB,IAAED,CAAF,EAAUC,CAAV,GAA2C,eAA3C,GAAkCA,CAAlC,CAA8D,OAA9D,CACU,OAAV,GAACD,CAAD,EAA2C,aAA3C,GAAkCC,CAAlC,EAAqE,QAArE,GAA4DA,CAA5D,CAAiF,OAAjF,CACmB,SAAnB,IAACD,CAAD,EAASC,CAAT,GAAuD,UAAvD,GAAkCvC,CAAA,CAAK,CAAL,CAAAwC,SAAlC,CAAoE,WAApE,CAAkF,EAP7D,CAU9B,MAAO,CACLC,SAAU,GADL,CAELC,QAAS,UAFJ,CAGLC,KAAMA,QAAQ,CAAC5C,CAAD,CAAQC,CAAR,CAAcC,CAAd,CAAoB2C,CAApB,CAA6B,CAIzCC,QAASA,EAAqB,EAAG,CAC/B,MAAOD,EAAAE,YADwB,CAIjCC,QAASA,EAAgB,EAAG,CAC1B,MAAIC,EAAJ,EACEA,CACOC,CADS,CAAA,CACTA,CAAAA,QAA4B,CAACC,CAAD,CAAS,CACtC/B,CAAAA,CAAU+B,CAAV/B,GAAqBlB,CAAAkD,MACzBnD,EAAAC,KAAA,CAAU,cAAV,CAA0BkB,CAA1B,CACAnB,EAAAC,KAAA,CAAU,UAAV,CAAsB,CAAtB,CAA0B,CAACkB,CAA3B,CAH0C,CAF9C,EAQS8B,QAA4B,CAACC,CAAD,CAAS,CAC1ClD,CAAAC,KAAA,CAAU,cAAV,CAA0BiD,CAA1B,GAAqCjD,CAAAkD,MAArC,CAD0C,CATpB,CAe5BC,QAASA,EAAsB,CAACF,CAAD,CAAS,CACtClD,CAAAC,KAAA,CAAU,cAAV,CAA0B,CAAEiD,CAAAA,CAA5B,CADsC,CAtBxC,IAAIG,EAAQhB,CAAA,CAASpC,CAAT,CAAeD,CAAf,CAAZ,CACIgD,EAAgBZ,CAAA,CAAiB,UAAjB,CAA6BpC,CAA7B,CAyBpB,QAAQqD,CAAR,EACE,KAAK,OAAL,CACA,KAAK,UAAL,CACMjB,CAAA,CAAiB,cAAjB;AAAiCpC,CAAjC,CAAJ,EACED,CAAAmB,OAAA,CAAa2B,CAAb,CAA8C,OAAV,GAAAQ,CAAA,CAChCN,CAAA,EADgC,CACXK,CADzB,CAGF,MACF,MAAK,OAAL,CACMtD,CAAAI,OAAA,CAAa,WAAb,CAAJ,GACMD,CAAAqD,IAMJ,EANiB,CAAAtD,CAAAC,KAAA,CAAU,eAAV,CAMjB,EALED,CAAAC,KAAA,CAAU,eAAV,CAA2BA,CAAAqD,IAA3B,CAKF,CAHIrD,CAAAsD,IAGJ,EAHiB,CAAAvD,CAAAC,KAAA,CAAU,eAAV,CAGjB,EAFED,CAAAC,KAAA,CAAU,eAAV,CAA2BA,CAAAsD,IAA3B,CAEF,CAAKvD,CAAAC,KAAA,CAAU,eAAV,CAAL,EACEF,CAAAmB,OAAA,CAAa2B,CAAb,CAAoCW,QAA+B,CAACN,CAAD,CAAS,CAC1ElD,CAAAC,KAAA,CAAU,eAAV,CAA2BiD,CAA3B,CAD0E,CAA5E,CARJ,CAaA,MACF,MAAK,WAAL,CACMd,CAAA,CAAiB,gBAAjB,CAAmCpC,CAAnC,CAAJ,EACEA,CAAAC,KAAA,CAAU,gBAAV,CAA4B,CAAA,CAA5B,CAzBN,CA8BI+C,CAAJ,EACEhD,CAAAC,KAAA,CAAU,UAAV,CAAsB,CAAtB,CAGE2C,EAAAa,YAAAC,SAAJ,EAAoCtB,CAAA,CAAiB,eAAjB,CAAkCpC,CAAlC,CAApC,EACED,CAAAmB,OAAA,CAAayC,QAA4B,EAAG,CAC1C,MAAOf,EAAAgB,OAAAF,SADmC,CAA5C,CAEGG,QAA+B,CAACX,CAAD,CAAS,CACzClD,CAAAC,KAAA,CAAU,eAAV;AAA2B,CAAEiD,CAAAA,CAA7B,CADyC,CAF3C,CAOEd,EAAA,CAAiB,cAAjB,CAAiCpC,CAAjC,CAAJ,EACED,CAAAmB,OAAA,CAAa4C,QAA2B,EAAG,CACzC,MAAOlB,EAAAmB,SADkC,CAA3C,CAEGC,QAA8B,CAACd,CAAD,CAAS,CACxClD,CAAAC,KAAA,CAAU,cAAV,CAA0B,CAAEiD,CAAAA,CAA5B,CADwC,CAF1C,CAtEuC,CAHtC,CAhBuC,CAA1B,CANtB,CAAAf,UAAA,CAwGW,YAxGX,CAwGyB,CAAC,OAAD,CAAU,QAAQ,CAACrC,CAAD,CAAQ,CACjD,MAAOA,EAAAoC,YAAA,CAAkB,YAAlB,CAAgC,eAAhC,CAD0C,CAA1B,CAxGzB,CAAAC,UAAA,CA2GW,SA3GX,CA2GsBtC,CA3GtB,CAAAsC,UAAA,CA4GW,YA5GX,CA4GyBtC,CA5GzB,CArIsC,CAArC,CAAD,CAoPGH,MApPH,CAoPWA,MAAAC,QApPX;", +"lineCount":11, +"mappings":"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", "sources":["angular-aria.js"], -"names":["window","angular","undefined","ngAriaTabindex","$aria","scope","elem","attr","config","module","provider","ngAriaModule","$AriaProvider","camelCase","input","replace","letter","pos","toUpperCase","watchExpr","attrName","ariaAttr","negate","ariaCamelName","$watch","boolVal","ariaHidden","ariaChecked","ariaDisabled","ariaRequired","ariaInvalid","ariaMultiline","ariaValue","tabindex","this.config","newConfig","extend","$get","this.$get","key","$$watchExpr","directive","shouldAttachAttr","getShape","type","role","nodeName","restrict","require","link","ngModel","ngAriaWatchModelValue","$modelValue","getRadioReaction","needsTabIndex","ngAriaRadioReaction","newVal","value","ngAriaCheckboxReaction","shape","min","max","ngAriaValueNowReaction","$validators","required","ngAriaRequiredWatch","$error","ngAriaRequiredReaction","ngAriaInvalidWatch","$invalid","ngAriaInvalidReaction"] +"names":["window","angular","undefined","module","provider","ngAriaModule","$AriaProvider","watchExpr","attrName","ariaAttr","negate","scope","elem","attr","ariaCamelName","$normalize","config","$watch","boolVal","ariaHidden","ariaChecked","ariaDisabled","ariaRequired","ariaInvalid","ariaMultiline","ariaValue","tabindex","bindKeypress","this.config","newConfig","extend","$get","this.$get","key","$$watchExpr","directive","$aria","shouldAttachAttr","normalizedAttr","getShape","type","role","nodeName","restrict","require","link","ngModel","ngAriaWatchModelValue","$modelValue","getRadioReaction","needsTabIndex","ngAriaRadioReaction","newVal","value","ngAriaCheckboxReaction","shape","min","max","ngAriaValueNowReaction","$validators","required","ngAriaRequiredWatch","$error","ngAriaRequiredReaction","ngAriaInvalidWatch","$invalid","ngAriaInvalidReaction","ngMessages","$parse","compile","fn","ngClick","ngKeypress","on","event","callback","$event","keyCode","$apply"] } diff --git a/public/app/bower_components/angular-aria/bower.json b/public/app/bower_components/angular-aria/bower.json index d7e0441e..c0f0853b 100644 --- a/public/app/bower_components/angular-aria/bower.json +++ b/public/app/bower_components/angular-aria/bower.json @@ -1,9 +1,9 @@ { "name": "angular-aria", - "version": "1.3.1", + "version": "1.3.12", "main": "./angular-aria.js", "ignore": [], "dependencies": { - "angular": "1.3.1" + "angular": "1.3.12" } } diff --git a/public/app/bower_components/angular-aria/package.json b/public/app/bower_components/angular-aria/package.json index 1ad9650e..d1064297 100644 --- a/public/app/bower_components/angular-aria/package.json +++ b/public/app/bower_components/angular-aria/package.json @@ -1,6 +1,6 @@ { "name": "angular-aria", - "version": "1.3.1", + "version": "1.3.12", "description": "AngularJS module for making accessibility easy", "main": "angular-aria.js", "scripts": { diff --git a/public/app/bower_components/angular-i18n/.bower.json b/public/app/bower_components/angular-i18n/.bower.json index 6e006d72..cddab009 100644 --- a/public/app/bower_components/angular-i18n/.bower.json +++ b/public/app/bower_components/angular-i18n/.bower.json @@ -1,17 +1,17 @@ { "name": "angular-i18n", - "version": "1.3.1", + "version": "1.3.12", "ignore": [ "**/.*", "node_modules", "components" ], "homepage": "https://github.com/angular/bower-angular-i18n", - "_release": "1.3.1", + "_release": "1.3.12", "_resolution": { "type": "version", - "tag": "v1.3.1", - "commit": "805a118d8935a5ac3959106fce5d68162e1eb3ae" + "tag": "v1.3.12", + "commit": "296cd4fa9d232b1ec11631edff8f76f6b874a772" }, "_source": "git://github.com/angular/bower-angular-i18n.git", "_target": "~1.3.1", diff --git a/public/app/bower_components/angular-i18n/angular-locale_af-na.js b/public/app/bower_components/angular-i18n/angular-locale_af-na.js index 84f77c9e..8d79b1f9 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_af-na.js +++ b/public/app/bower_components/angular-i18n/angular-locale_af-na.js @@ -40,9 +40,9 @@ $provide.value("$locale", { "Sa" ], "SHORTMONTH": [ - "Jan", - "Feb", - "Mar", + "Jan.", + "Feb.", + "Mrt.", "Apr", "Mei", "Jun", diff --git a/public/app/bower_components/angular-i18n/angular-locale_af-za.js b/public/app/bower_components/angular-i18n/angular-locale_af-za.js index f3e01307..63964939 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_af-za.js +++ b/public/app/bower_components/angular-i18n/angular-locale_af-za.js @@ -40,9 +40,9 @@ $provide.value("$locale", { "Sa" ], "SHORTMONTH": [ - "Jan", - "Feb", - "Mar", + "Jan.", + "Feb.", + "Mrt.", "Apr", "Mei", "Jun", @@ -53,7 +53,7 @@ $provide.value("$locale", { "Nov", "Des" ], - "fullDate": "EEEE dd MMMM y", + "fullDate": "EEEE, dd MMMM y", "longDate": "dd MMMM y", "medium": "dd MMM y h:mm:ss a", "mediumDate": "dd MMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_af.js b/public/app/bower_components/angular-i18n/angular-locale_af.js index 5b948807..7a2d41d3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_af.js +++ b/public/app/bower_components/angular-i18n/angular-locale_af.js @@ -40,9 +40,9 @@ $provide.value("$locale", { "Sa" ], "SHORTMONTH": [ - "Jan", - "Feb", - "Mar", + "Jan.", + "Feb.", + "Mrt.", "Apr", "Mei", "Jun", @@ -53,7 +53,7 @@ $provide.value("$locale", { "Nov", "Des" ], - "fullDate": "EEEE dd MMMM y", + "fullDate": "EEEE, dd MMMM y", "longDate": "dd MMMM y", "medium": "dd MMM y h:mm:ss a", "mediumDate": "dd MMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_am-et.js b/public/app/bower_components/angular-i18n/angular-locale_am-et.js index 71bbd98e..64641978 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_am-et.js +++ b/public/app/bower_components/angular-i18n/angular-locale_am-et.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "\u1301\u120b\u12ed", "\u12a6\u1308\u1235\u1275", "\u1234\u1355\u1274\u121d\u1260\u122d", - "\u12a6\u12ad\u1270\u12cd\u1260\u122d", + "\u12a6\u12ad\u1276\u1260\u122d", "\u1296\u126c\u121d\u1260\u122d", "\u12f2\u1234\u121d\u1260\u122d" ], @@ -49,7 +49,7 @@ $provide.value("$locale", { "\u1301\u120b\u12ed", "\u12a6\u1308\u1235", "\u1234\u1355\u1274", - "\u12a6\u12ad\u1270", + "\u12a6\u12ad\u1276", "\u1296\u126c\u121d", "\u12f2\u1234\u121d" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_am.js b/public/app/bower_components/angular-i18n/angular-locale_am.js index 82a07452..f52737bf 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_am.js +++ b/public/app/bower_components/angular-i18n/angular-locale_am.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "\u1301\u120b\u12ed", "\u12a6\u1308\u1235\u1275", "\u1234\u1355\u1274\u121d\u1260\u122d", - "\u12a6\u12ad\u1270\u12cd\u1260\u122d", + "\u12a6\u12ad\u1276\u1260\u122d", "\u1296\u126c\u121d\u1260\u122d", "\u12f2\u1234\u121d\u1260\u122d" ], @@ -49,7 +49,7 @@ $provide.value("$locale", { "\u1301\u120b\u12ed", "\u12a6\u1308\u1235", "\u1234\u1355\u1274", - "\u12a6\u12ad\u1270", + "\u12a6\u12ad\u1276", "\u1296\u126c\u121d", "\u12f2\u1234\u121d" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_ast-es.js b/public/app/bower_components/angular-i18n/angular-locale_ast-es.js index 71002f88..5dffeda5 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ast-es.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ast-es.js @@ -38,15 +38,15 @@ $provide.value("$locale", { "de xineru", "de febreru", "de marzu", - "d'abril", + "d\u2019abril", "de mayu", "de xunu", "de xunetu", - "d'agostu", + "d\u2019agostu", "de setiembre", - "d'ochobre", + "d\u2019ochobre", "de payares", - "d'avientu" + "d\u2019avientu" ], "SHORTDAY": [ "dom", @@ -71,7 +71,7 @@ $provide.value("$locale", { "pay", "avi" ], - "fullDate": "EEEE, dd MMMM 'de' y", + "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ast.js b/public/app/bower_components/angular-i18n/angular-locale_ast.js index 7d39738b..4b07ddd0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ast.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ast.js @@ -38,15 +38,15 @@ $provide.value("$locale", { "de xineru", "de febreru", "de marzu", - "d'abril", + "d\u2019abril", "de mayu", "de xunu", "de xunetu", - "d'agostu", + "d\u2019agostu", "de setiembre", - "d'ochobre", + "d\u2019ochobre", "de payares", - "d'avientu" + "d\u2019avientu" ], "SHORTDAY": [ "dom", @@ -71,7 +71,7 @@ $provide.value("$locale", { "pay", "avi" ], - "fullDate": "EEEE, dd MMMM 'de' y", + "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_az-cyrl-az.js b/public/app/bower_components/angular-i18n/angular-locale_az-cyrl-az.js index f904656b..52b4ed17 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_az-cyrl-az.js +++ b/public/app/bower_components/angular-i18n/angular-locale_az-cyrl-az.js @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u0434\u0435\u043a\u0430\u0431\u0440" ], "SHORTDAY": [ - "B.", - "B.E.", - "\u00c7.A.", - "\u00c7.", - "C.A.", - "C", - "\u015e." + "\u0431\u0430\u0437\u0430\u0440", + "\u0431\u0430\u0437\u0430\u0440 \u0435\u0440\u0442\u04d9\u0441\u0438", + "\u0447\u04d9\u0440\u0448\u04d9\u043d\u0431\u04d9 \u0430\u0445\u0448\u0430\u043c\u044b", + "\u0447\u04d9\u0440\u0448\u04d9\u043d\u0431\u04d9", + "\u04b9\u04af\u043c\u04d9 \u0430\u0445\u0448\u0430\u043c\u044b", + "\u04b9\u04af\u043c\u04d9", + "\u0448\u04d9\u043d\u0431\u04d9" ], "SHORTMONTH": [ - "yan", - "fev", - "mar", - "apr", - "may", - "iyn", - "iyl", - "avq", - "sen", - "okt", - "noy", - "dek" + "\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" ], "fullDate": "EEEE, d, MMMM, y", "longDate": "d MMMM, y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_az-cyrl.js b/public/app/bower_components/angular-i18n/angular-locale_az-cyrl.js index d18ed470..40dfe742 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_az-cyrl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_az-cyrl.js @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u0434\u0435\u043a\u0430\u0431\u0440" ], "SHORTDAY": [ - "B.", - "B.E.", - "\u00c7.A.", - "\u00c7.", - "C.A.", - "C", - "\u015e." + "\u0431\u0430\u0437\u0430\u0440", + "\u0431\u0430\u0437\u0430\u0440 \u0435\u0440\u0442\u04d9\u0441\u0438", + "\u0447\u04d9\u0440\u0448\u04d9\u043d\u0431\u04d9 \u0430\u0445\u0448\u0430\u043c\u044b", + "\u0447\u04d9\u0440\u0448\u04d9\u043d\u0431\u04d9", + "\u04b9\u04af\u043c\u04d9 \u0430\u0445\u0448\u0430\u043c\u044b", + "\u04b9\u04af\u043c\u04d9", + "\u0448\u04d9\u043d\u0431\u04d9" ], "SHORTMONTH": [ - "yan", - "fev", - "mar", - "apr", - "may", - "iyn", - "iyl", - "avq", - "sen", - "okt", - "noy", - "dek" + "\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" ], "fullDate": "EEEE, d, MMMM, y", "longDate": "d MMMM, y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_az-latn-az.js b/public/app/bower_components/angular-i18n/angular-locale_az-latn-az.js index 80cec56b..d805ea58 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_az-latn-az.js +++ b/public/app/bower_components/angular-i18n/angular-locale_az-latn-az.js @@ -36,7 +36,7 @@ $provide.value("$locale", { "\u00c7.A.", "\u00c7.", "C.A.", - "C", + "C.", "\u015e." ], "SHORTMONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_az-latn.js b/public/app/bower_components/angular-i18n/angular-locale_az-latn.js index ac82a0a5..b5bbc4c0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_az-latn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_az-latn.js @@ -36,7 +36,7 @@ $provide.value("$locale", { "\u00c7.A.", "\u00c7.", "C.A.", - "C", + "C.", "\u015e." ], "SHORTMONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_az.js b/public/app/bower_components/angular-i18n/angular-locale_az.js index f00497b7..7b296d54 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_az.js +++ b/public/app/bower_components/angular-i18n/angular-locale_az.js @@ -36,7 +36,7 @@ $provide.value("$locale", { "\u00c7.A.", "\u00c7.", "C.A.", - "C", + "C.", "\u015e." ], "SHORTMONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_bg-bg.js b/public/app/bower_components/angular-i18n/angular-locale_bg-bg.js index 6da9f5b0..20b7b26e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bg-bg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bg-bg.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d.MM.y '\u0433'. H:mm:ss", "mediumDate": "d.MM.y '\u0433'.", "mediumTime": "H:mm:ss", - "short": "d.MM.yy H:mm", - "shortDate": "d.MM.yy", + "short": "d.MM.yy '\u0433'. H:mm", + "shortDate": "d.MM.yy '\u0433'.", "shortTime": "H:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_bg.js b/public/app/bower_components/angular-i18n/angular-locale_bg.js index ea9884ea..25983651 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bg.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d.MM.y '\u0433'. H:mm:ss", "mediumDate": "d.MM.y '\u0433'.", "mediumTime": "H:mm:ss", - "short": "d.MM.yy H:mm", - "shortDate": "d.MM.yy", + "short": "d.MM.yy '\u0433'. H:mm", + "shortDate": "d.MM.yy '\u0433'.", "shortTime": "H:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_bm-latn-ml.js b/public/app/bower_components/angular-i18n/angular-locale_bm-latn-ml.js new file mode 100644 index 00000000..e8214c5f --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_bm-latn-ml.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "kari", + "nt\u025bn\u025b", + "tarata", + "araba", + "alamisa", + "juma", + "sibiri" + ], + "MONTH": [ + "zanwuye", + "feburuye", + "marisi", + "awirili", + "m\u025b", + "zuw\u025bn", + "zuluye", + "uti", + "s\u025btanburu", + "\u0254kut\u0254buru", + "nowanburu", + "desanburu" + ], + "SHORTDAY": [ + "kar", + "nt\u025b", + "tar", + "ara", + "ala", + "jum", + "sib" + ], + "SHORTMONTH": [ + "zan", + "feb", + "mar", + "awi", + "m\u025b", + "zuw", + "zul", + "uti", + "s\u025bt", + "\u0254ku", + "now", + "des" + ], + "fullDate": "EEEE d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM, y HH:mm:ss", + "mediumDate": "d MMM, y", + "mediumTime": "HH:mm:ss", + "short": "d/M/y HH:mm", + "shortDate": "d/M/y", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "CFA", + "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": "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/public/app/bower_components/angular-i18n/angular-locale_bm-latn.js b/public/app/bower_components/angular-i18n/angular-locale_bm-latn.js new file mode 100644 index 00000000..cc90ba44 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_bm-latn.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "kari", + "nt\u025bn\u025b", + "tarata", + "araba", + "alamisa", + "juma", + "sibiri" + ], + "MONTH": [ + "zanwuye", + "feburuye", + "marisi", + "awirili", + "m\u025b", + "zuw\u025bn", + "zuluye", + "uti", + "s\u025btanburu", + "\u0254kut\u0254buru", + "nowanburu", + "desanburu" + ], + "SHORTDAY": [ + "kar", + "nt\u025b", + "tar", + "ara", + "ala", + "jum", + "sib" + ], + "SHORTMONTH": [ + "zan", + "feb", + "mar", + "awi", + "m\u025b", + "zuw", + "zul", + "uti", + "s\u025bt", + "\u0254ku", + "now", + "des" + ], + "fullDate": "EEEE d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM, y HH:mm:ss", + "mediumDate": "d MMM, y", + "mediumTime": "HH:mm:ss", + "short": "d/M/y HH:mm", + "shortDate": "d/M/y", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "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": "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/public/app/bower_components/angular-i18n/angular-locale_bn-bd.js b/public/app/bower_components/angular-i18n/angular-locale_bn-bd.js index df9cd7d1..2443e9b5 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bn-bd.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bn-bd.js @@ -12,7 +12,7 @@ $provide.value("$locale", { "\u09b8\u09cb\u09ae\u09ac\u09be\u09b0", "\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0", "\u09ac\u09c1\u09a7\u09ac\u09be\u09b0", - "\u09ac\u09c3\u09b9\u09b7\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", + "\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", "\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0", "\u09b6\u09a8\u09bf\u09ac\u09be\u09b0" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_bn-in.js b/public/app/bower_components/angular-i18n/angular-locale_bn-in.js index 73f43294..2183318e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bn-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bn-in.js @@ -12,7 +12,7 @@ $provide.value("$locale", { "\u09b8\u09cb\u09ae\u09ac\u09be\u09b0", "\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0", "\u09ac\u09c1\u09a7\u09ac\u09be\u09b0", - "\u09ac\u09c3\u09b9\u09b7\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", + "\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", "\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0", "\u09b6\u09a8\u09bf\u09ac\u09be\u09b0" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_bn.js b/public/app/bower_components/angular-i18n/angular-locale_bn.js index 118cf63c..4d6730dd 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bn.js @@ -12,7 +12,7 @@ $provide.value("$locale", { "\u09b8\u09cb\u09ae\u09ac\u09be\u09b0", "\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0", "\u09ac\u09c1\u09a7\u09ac\u09be\u09b0", - "\u09ac\u09c3\u09b9\u09b7\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", + "\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0", "\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0", "\u09b6\u09a8\u09bf\u09ac\u09be\u09b0" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_bo-cn.js b/public/app/bower_components/angular-i18n/angular-locale_bo-cn.js index fffa99ae..79e1087c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bo-cn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bo-cn.js @@ -29,9 +29,9 @@ $provide.value("$locale", { "\u0f42\u0f5f\u0f60\u0f0b\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0f44\u0f66\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "MONTH": [ @@ -52,9 +52,9 @@ $provide.value("$locale", { "\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f66\u0f44\u0f66\u0f0b", + "\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "SHORTMONTH": [ @@ -72,7 +72,7 @@ $provide.value("$locale", { "\u0f5f\u0fb3\u0f0b\u0f21\u0f22" ], "fullDate": "y MMMM d, EEEE", - "longDate": "\u0f66\u0fa6\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", + "longDate": "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", "medium": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd HH:mm:ss", "mediumDate": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_bo-in.js b/public/app/bower_components/angular-i18n/angular-locale_bo-in.js index 54de930b..64b482c8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bo-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bo-in.js @@ -29,9 +29,9 @@ $provide.value("$locale", { "\u0f42\u0f5f\u0f60\u0f0b\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0f44\u0f66\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "MONTH": [ @@ -52,9 +52,9 @@ $provide.value("$locale", { "\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f66\u0f44\u0f66\u0f0b", + "\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "SHORTMONTH": [ @@ -72,7 +72,7 @@ $provide.value("$locale", { "\u0f5f\u0fb3\u0f0b\u0f21\u0f22" ], "fullDate": "y MMMM d, EEEE", - "longDate": "\u0f66\u0fa6\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", + "longDate": "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", "medium": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd HH:mm:ss", "mediumDate": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_bo.js b/public/app/bower_components/angular-i18n/angular-locale_bo.js index 881b1b31..c97bc68f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bo.js @@ -29,9 +29,9 @@ $provide.value("$locale", { "\u0f42\u0f5f\u0f60\u0f0b\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0f44\u0f66\u0f0b", + "\u0f42\u0f5f\u0f60\u0f0b\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "MONTH": [ @@ -52,9 +52,9 @@ $provide.value("$locale", { "\u0f49\u0f72\u0f0b\u0f58\u0f0b", "\u0f5f\u0fb3\u0f0b\u0f56\u0f0b", "\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b", - "\u0f67\u0fb3\u0f42\u0f0b\u0f54\u0f0b", + "\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b", "\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74\u0f0b", - "\u0f66\u0f44\u0f66\u0f0b", + "\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b", "\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b" ], "SHORTMONTH": [ @@ -72,7 +72,7 @@ $provide.value("$locale", { "\u0f5f\u0fb3\u0f0b\u0f21\u0f22" ], "fullDate": "y MMMM d, EEEE", - "longDate": "\u0f66\u0fa6\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", + "longDate": "\u0f66\u0fa4\u0fb1\u0f72\u0f0b\u0f63\u0f7c\u0f0by MMMM\u0f60\u0f72\u0f0b\u0f59\u0f7a\u0f66\u0f0bd\u0f51", "medium": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd HH:mm:ss", "mediumDate": "y \u0f63\u0f7c\u0f0b\u0f60\u0f72\u0f0bMMM\u0f59\u0f7a\u0f66\u0f0bd", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_br-fr.js b/public/app/bower_components/angular-i18n/angular-locale_br-fr.js index ae40e7d1..c63e558a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_br-fr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_br-fr.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "A.M.", + "G.M." ], "DAY": [ "Sul", @@ -31,13 +31,13 @@ $provide.value("$locale", { "Kerzu" ], "SHORTDAY": [ - "sul", - "lun", - "meu.", - "mer.", - "yaou", - "gwe.", - "sad." + "Sul", + "Lun", + "Meu.", + "Mer.", + "Yaou", + "Gwe.", + "Sad." ], "SHORTMONTH": [ "Gen", @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4\u00a0-", - "negSuf": "", - "posPre": "\u00a4\u00a0", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_br.js b/public/app/bower_components/angular-i18n/angular-locale_br.js index c93fc74e..08114a67 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_br.js +++ b/public/app/bower_components/angular-i18n/angular-locale_br.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "A.M.", + "G.M." ], "DAY": [ "Sul", @@ -31,13 +31,13 @@ $provide.value("$locale", { "Kerzu" ], "SHORTDAY": [ - "sul", - "lun", - "meu.", - "mer.", - "yaou", - "gwe.", - "sad." + "Sul", + "Lun", + "Meu.", + "Mer.", + "Yaou", + "Gwe.", + "Sad." ], "SHORTMONTH": [ "Gen", @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4\u00a0-", - "negSuf": "", - "posPre": "\u00a4\u00a0", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_bs-latn-ba.js b/public/app/bower_components/angular-i18n/angular-locale_bs-latn-ba.js index 9e8c87ad..978b4519 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bs-latn-ba.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bs-latn-ba.js @@ -22,7 +22,7 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "pre podne", + "prije podne", "popodne" ], "DAY": [ @@ -42,7 +42,7 @@ $provide.value("$locale", { "maj", "juni", "juli", - "avgust", + "august", "septembar", "oktobar", "novembar", @@ -65,7 +65,7 @@ $provide.value("$locale", { "maj", "jun", "jul", - "avg", + "aug", "sep", "okt", "nov", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, dd. MMMM y.", "longDate": "dd. MMMM y.", - "medium": "dd.MM.y. HH:mm:ss", - "mediumDate": "dd.MM.y.", + "medium": "dd. MMM. y. HH:mm:ss", + "mediumDate": "dd. MMM. y.", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy. HH:mm", "shortDate": "dd.MM.yy.", @@ -102,10 +102,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4\u00a0-", - "negSuf": "", - "posPre": "\u00a4\u00a0", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_bs-latn.js b/public/app/bower_components/angular-i18n/angular-locale_bs-latn.js index 3250375a..ae0a3ba3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bs-latn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bs-latn.js @@ -22,7 +22,7 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "pre podne", + "prije podne", "popodne" ], "DAY": [ @@ -42,7 +42,7 @@ $provide.value("$locale", { "maj", "juni", "juli", - "avgust", + "august", "septembar", "oktobar", "novembar", @@ -65,7 +65,7 @@ $provide.value("$locale", { "maj", "jun", "jul", - "avg", + "aug", "sep", "okt", "nov", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, dd. MMMM y.", "longDate": "dd. MMMM y.", - "medium": "dd.MM.y. HH:mm:ss", - "mediumDate": "dd.MM.y.", + "medium": "dd. MMM. y. HH:mm:ss", + "mediumDate": "dd. MMM. y.", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy. HH:mm", "shortDate": "dd.MM.yy.", @@ -102,10 +102,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4\u00a0-", - "negSuf": "", - "posPre": "\u00a4\u00a0", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_bs.js b/public/app/bower_components/angular-i18n/angular-locale_bs.js index 298ea431..11edf78b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_bs.js +++ b/public/app/bower_components/angular-i18n/angular-locale_bs.js @@ -22,7 +22,7 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "pre podne", + "prije podne", "popodne" ], "DAY": [ @@ -42,7 +42,7 @@ $provide.value("$locale", { "maj", "juni", "juli", - "avgust", + "august", "septembar", "oktobar", "novembar", @@ -65,7 +65,7 @@ $provide.value("$locale", { "maj", "jun", "jul", - "avg", + "aug", "sep", "okt", "nov", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, dd. MMMM y.", "longDate": "dd. MMMM y.", - "medium": "dd.MM.y. HH:mm:ss", - "mediumDate": "dd.MM.y.", + "medium": "dd. MMM. y. HH:mm:ss", + "mediumDate": "dd. MMM. y.", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy. HH:mm", "shortDate": "dd.MM.yy.", @@ -102,10 +102,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4\u00a0-", - "negSuf": "", - "posPre": "\u00a4\u00a0", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca-ad.js b/public/app/bower_components/angular-i18n/angular-locale_ca-ad.js index 92ee60f9..988c3c1c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca-ad.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca-ad.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca-es-valencia.js b/public/app/bower_components/angular-i18n/angular-locale_ca-es-valencia.js index 781bf6ca..4a1e28a6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca-es-valencia.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca-es-valencia.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca-es.js b/public/app/bower_components/angular-i18n/angular-locale_ca-es.js index 37dcf763..f83aacf2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca-es.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca-es.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca-fr.js b/public/app/bower_components/angular-i18n/angular-locale_ca-fr.js index e6c94d3a..232bb242 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca-fr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca-fr.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca-it.js b/public/app/bower_components/angular-i18n/angular-locale_ca-it.js index fa5fb74b..ef4c3f57 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca-it.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca-it.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ca.js b/public/app/bower_components/angular-i18n/angular-locale_ca.js index 486f7771..845f1e31 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ca.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ca.js @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "gen.", - "feb.", + "febr.", "mar\u00e7", "abr.", "maig", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM 'de' y", "longDate": "d MMMM 'de' y", - "medium": "dd/MM/y H:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d MMM y H:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_cy-gb.js b/public/app/bower_components/angular-i18n/angular-locale_cy-gb.js index 5b090542..6c96f5c6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_cy-gb.js +++ b/public/app/bower_components/angular-i18n/angular-locale_cy-gb.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/y HH:mm", - "shortDate": "dd/MM/y", + "short": "dd/MM/yy HH:mm", + "shortDate": "dd/MM/yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_cy.js b/public/app/bower_components/angular-i18n/angular-locale_cy.js index 87aadb94..18708b52 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_cy.js +++ b/public/app/bower_components/angular-i18n/angular-locale_cy.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/y HH:mm", - "shortDate": "dd/MM/y", + "short": "dd/MM/yy HH:mm", + "shortDate": "dd/MM/yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_da-dk.js b/public/app/bower_components/angular-i18n/angular-locale_da-dk.js index 92f549f9..ddce855c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_da-dk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_da-dk.js @@ -85,7 +85,7 @@ $provide.value("$locale", { "dec." ], "fullDate": "EEEE 'den' d. MMMM y", - "longDate": "d. MMM y", + "longDate": "d. MMMM y", "medium": "dd/MM/y HH.mm.ss", "mediumDate": "dd/MM/y", "mediumTime": "HH.mm.ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_da-gl.js b/public/app/bower_components/angular-i18n/angular-locale_da-gl.js index 179f0e47..bd713366 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_da-gl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_da-gl.js @@ -85,7 +85,7 @@ $provide.value("$locale", { "dec." ], "fullDate": "EEEE 'den' d. MMMM y", - "longDate": "d. MMM y", + "longDate": "d. MMMM y", "medium": "dd/MM/y HH.mm.ss", "mediumDate": "dd/MM/y", "mediumTime": "HH.mm.ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_da.js b/public/app/bower_components/angular-i18n/angular-locale_da.js index 9d4a5d32..ca257cc3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_da.js +++ b/public/app/bower_components/angular-i18n/angular-locale_da.js @@ -85,7 +85,7 @@ $provide.value("$locale", { "dec." ], "fullDate": "EEEE 'den' d. MMMM y", - "longDate": "d. MMM y", + "longDate": "d. MMMM y", "medium": "dd/MM/y HH.mm.ss", "mediumDate": "dd/MM/y", "mediumTime": "HH.mm.ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_de-at.js b/public/app/bower_components/angular-i18n/angular-locale_de-at.js index 75a4e3cb..53c651bf 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_de-at.js +++ b/public/app/bower_components/angular-i18n/angular-locale_de-at.js @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, dd. MMMM y", "longDate": "dd. MMMM y", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "medium": "dd. MMM y HH:mm:ss", + "mediumDate": "dd. MMM y", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_dsb-de.js b/public/app/bower_components/angular-i18n/angular-locale_dsb-de.js new file mode 100644 index 00000000..5601383c --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_dsb-de.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "dopo\u0142dnja", + "w\u00f3tpo\u0142dnja" + ], + "DAY": [ + "nje\u017aela", + "p\u00f3nje\u017aele", + "wa\u0142tora", + "srjoda", + "stw\u00f3rtk", + "p\u011btk", + "sobota" + ], + "MONTH": [ + "januara", + "februara", + "m\u011brca", + "apryla", + "maja", + "junija", + "julija", + "awgusta", + "septembra", + "oktobra", + "nowembra", + "decembra" + ], + "SHORTDAY": [ + "nje", + "p\u00f3n", + "wa\u0142", + "srj", + "stw", + "p\u011bt", + "sob" + ], + "SHORTMONTH": [ + "jan.", + "feb.", + "m\u011br.", + "apr.", + "maj.", + "jun.", + "jul.", + "awg.", + "sep.", + "okt.", + "now.", + "dec." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d.M.y H:mm:ss", + "mediumDate": "d.M.y", + "mediumTime": "H:mm:ss", + "short": "d.M.yy H:mm", + "shortDate": "d.M.yy", + "shortTime": "H:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "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": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_dsb.js b/public/app/bower_components/angular-i18n/angular-locale_dsb.js new file mode 100644 index 00000000..4cde28f2 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_dsb.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "dopo\u0142dnja", + "w\u00f3tpo\u0142dnja" + ], + "DAY": [ + "nje\u017aela", + "p\u00f3nje\u017aele", + "wa\u0142tora", + "srjoda", + "stw\u00f3rtk", + "p\u011btk", + "sobota" + ], + "MONTH": [ + "januara", + "februara", + "m\u011brca", + "apryla", + "maja", + "junija", + "julija", + "awgusta", + "septembra", + "oktobra", + "nowembra", + "decembra" + ], + "SHORTDAY": [ + "nje", + "p\u00f3n", + "wa\u0142", + "srj", + "stw", + "p\u011bt", + "sob" + ], + "SHORTMONTH": [ + "jan.", + "feb.", + "m\u011br.", + "apr.", + "maj.", + "jun.", + "jul.", + "awg.", + "sep.", + "okt.", + "now.", + "dec." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d.M.y H:mm:ss", + "mediumDate": "d.M.y", + "mediumTime": "H:mm:ss", + "short": "d.M.yy H:mm", + "shortDate": "d.M.yy", + "shortTime": "H:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "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": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_en-150.js b/public/app/bower_components/angular-i18n/angular-locale_en-150.js index 1eaa820b..bb362029 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-150.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-150.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-au.js b/public/app/bower_components/angular-i18n/angular-locale_en-au.js index 03f5fd7b..0cd27dbd 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-au.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-au.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-be.js b/public/app/bower_components/angular-i18n/angular-locale_en-be.js index 0ffec93b..8fc40941 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-be.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-be.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-dg.js b/public/app/bower_components/angular-i18n/angular-locale_en-dg.js index 98a1c800..56dacaae 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-dg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-dg.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "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" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-fk.js b/public/app/bower_components/angular-i18n/angular-locale_en-fk.js index b8f2ce17..4a9af0d1 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-fk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-fk.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "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" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-gg.js b/public/app/bower_components/angular-i18n/angular-locale_en-gg.js index 3f502d97..a7dbbe05 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-gg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-gg.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "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" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-gi.js b/public/app/bower_components/angular-i18n/angular-locale_en-gi.js index 5dbe1b62..cef1470b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-gi.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-gi.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "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" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-hk.js b/public/app/bower_components/angular-i18n/angular-locale_en-hk.js index 117c7695..d754ed05 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-hk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-hk.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,13 +71,13 @@ $provide.value("$locale", { "Nov", "Dec" ], - "fullDate": "EEEE, d MMMM, y", - "longDate": "d MMMM, y", - "medium": "d MMM, y h:mm:ss a", - "mediumDate": "d MMM, y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y h:mm:ss a", + "mediumDate": "d MMM y", "mediumTime": "h:mm:ss a", - "short": "d/M/yy h:mm a", - "shortDate": "d/M/yy", + "short": "d/M/y h:mm a", + "shortDate": "d/M/y", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-ie.js b/public/app/bower_components/angular-i18n/angular-locale_en-ie.js index a4a40f8e..16caaa63 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-ie.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-ie.js @@ -72,13 +72,13 @@ $provide.value("$locale", { "Dec" ], "fullDate": "EEEE d MMMM 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" + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u20ac", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-im.js b/public/app/bower_components/angular-i18n/angular-locale_en-im.js index 49857629..a5cf5bb7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-im.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-im.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "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" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-in.js b/public/app/bower_components/angular-i18n/angular-locale_en-in.js index 23cdd9db..302a941c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-in.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-io.js b/public/app/bower_components/angular-i18n/angular-locale_en-io.js index 9c6a8be1..c58f045c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-io.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-io.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "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" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-je.js b/public/app/bower_components/angular-i18n/angular-locale_en-je.js index 60291ff4..3a8c79c8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-je.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-je.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "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" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-mo.js b/public/app/bower_components/angular-i18n/angular-locale_en-mo.js index 52eac37a..816edf00 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-mo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-mo.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "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" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "MOP", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-mt.js b/public/app/bower_components/angular-i18n/angular-locale_en-mt.js index 27eb3692..0b8eb3ef 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-mt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-mt.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -73,12 +73,12 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM y", "longDate": "dd MMMM y", - "medium": "dd MMM y h:mm:ss a", + "medium": "dd MMM y HH:mm:ss", "mediumDate": "dd MMM y", - "mediumTime": "h:mm:ss a", - "short": "dd/MM/y h:mm a", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", "shortDate": "dd/MM/y", - "shortTime": "h:mm a" + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u20ac", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-my.js b/public/app/bower_components/angular-i18n/angular-locale_en-my.js new file mode 100644 index 00000000..083838c0 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_en-my.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "MONTH": [ + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December" + ], + "SHORTDAY": [ + "Sun", + "Mon", + "Tue", + "Wed", + "Thu", + "Fri", + "Sat" + ], + "SHORTMONTH": [ + "Jan", + "Feb", + "Mar", + "Apr", + "May", + "Jun", + "Jul", + "Aug", + "Sep", + "Oct", + "Nov", + "Dec" + ], + "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": "RM", + "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-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/public/app/bower_components/angular-i18n/angular-locale_en-nz.js b/public/app/bower_components/angular-i18n/angular-locale_en-nz.js index a025b2c0..1b38701f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-nz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-nz.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-pk.js b/public/app/bower_components/angular-i18n/angular-locale_en-pk.js index ad20eb10..92b25676 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-pk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-pk.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-sg.js b/public/app/bower_components/angular-i18n/angular-locale_en-sg.js index 3a819c3f..fa0ba784 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-sg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-sg.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-sh.js b/public/app/bower_components/angular-i18n/angular-locale_en-sh.js index fe89591c..2e858730 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-sh.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-sh.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "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" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u00a3", diff --git a/public/app/bower_components/angular-i18n/angular-locale_en-vg.js b/public/app/bower_components/angular-i18n/angular-locale_en-vg.js index a814d0f9..547a0c7f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_en-vg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_en-vg.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "am", + "pm" ], "DAY": [ "Sunday", @@ -71,14 +71,14 @@ $provide.value("$locale", { "Nov", "Dec" ], - "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" + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/y HH:mm", + "shortDate": "dd/MM/y", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-419.js b/public/app/bower_components/angular-i18n/angular-locale_es-419.js index 9c23e94c..fe3022f3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-419.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-419.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ar.js b/public/app/bower_components/angular-i18n/angular-locale_es-ar.js index aa9d0166..29a20887 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ar.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ar.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-bo.js b/public/app/bower_components/angular-i18n/angular-locale_es-bo.js index 26828bca..ead66e4e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-bo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-bo.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "Bs", @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-cl.js b/public/app/bower_components/angular-i18n/angular-locale_es-cl.js index fc84ae29..461ac29e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-cl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-cl.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "dd-MM-y H:mm:ss", + "medium": "dd-MM-y h:mm:ss a", "mediumDate": "dd-MM-y", - "mediumTime": "H:mm:ss", - "short": "dd-MM-yy H:mm", + "mediumTime": "h:mm:ss a", + "short": "dd-MM-yy h:mm a", "shortDate": "dd-MM-yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-co.js b/public/app/bower_components/angular-i18n/angular-locale_es-co.js index 7a929adc..cf447547 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-co.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-co.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,7 +48,7 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-cr.js b/public/app/bower_components/angular-i18n/angular-locale_es-cr.js index 3dc01eea..5682e9b0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-cr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-cr.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "\u20a1", @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-cu.js b/public/app/bower_components/angular-i18n/angular-locale_es-cu.js index a2c8695e..cd49522a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-cu.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-cu.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-do.js b/public/app/bower_components/angular-i18n/angular-locale_es-do.js index 833b8291..ddb4b41d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-do.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-do.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ea.js b/public/app/bower_components/angular-i18n/angular-locale_es-ea.js index 2233f375..cc1684c0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ea.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ea.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ec.js b/public/app/bower_components/angular-i18n/angular-locale_es-ec.js index 15f46c8f..27b09388 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ec.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ec.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-es.js b/public/app/bower_components/angular-i18n/angular-locale_es-es.js index 81967539..2d689335 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-es.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-es.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-gq.js b/public/app/bower_components/angular-i18n/angular-locale_es-gq.js index 2f92c53c..b274cbff 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-gq.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-gq.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-gt.js b/public/app/bower_components/angular-i18n/angular-locale_es-gt.js index 62685ee6..0e9b86f0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-gt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-gt.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/MM/y H:mm:ss", + "medium": "d/MM/y h:mm:ss a", "mediumDate": "d/MM/y", - "mediumTime": "H:mm:ss", - "short": "d/MM/yy H:mm", + "mediumTime": "h:mm:ss a", + "short": "d/MM/yy h:mm a", "shortDate": "d/MM/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "Q", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-hn.js b/public/app/bower_components/angular-i18n/angular-locale_es-hn.js index 80aa6acc..dff7efd4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-hn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-hn.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE dd 'de' MMMM 'de' y", "longDate": "dd 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "L", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ic.js b/public/app/bower_components/angular-i18n/angular-locale_es-ic.js index f280db63..468afbe4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ic.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ic.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-mx.js b/public/app/bower_components/angular-i18n/angular-locale_es-mx.js index 9a64d0a0..a3d99aa0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-mx.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-mx.js @@ -31,36 +31,36 @@ $provide.value("$locale", { "diciembre" ], "SHORTDAY": [ - "dom.", - "lun.", - "mar.", - "mi\u00e9r.", - "jue.", - "vier.", + "dom", + "lun", + "mar", + "mi\u00e9", + "jue", + "vie", "s\u00e1b" ], "SHORTMONTH": [ - "ene.", - "febr.", - "mzo.", - "abr.", - "my.", - "jun.", - "jul.", - "ag.", - "set.", - "oct.", - "nov.", - "dic." + "ene", + "feb", + "mar", + "abr", + "may", + "jun", + "jul", + "ago", + "sep", + "oct", + "nov", + "dic" ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "dd/MM/y HH:mm:ss", + "medium": "dd/MM/y H:mm:ss", "mediumDate": "dd/MM/y", - "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", + "mediumTime": "H:mm:ss", + "short": "dd/MM/yy H:mm", "shortDate": "dd/MM/yy", - "shortTime": "HH:mm" + "shortTime": "H:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ni.js b/public/app/bower_components/angular-i18n/angular-locale_es-ni.js index 21ffe12f..5f5f5966 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ni.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ni.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "C$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-pa.js b/public/app/bower_components/angular-i18n/angular-locale_es-pa.js index 7a2beb96..543aab19 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-pa.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-pa.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "MM/dd/y H:mm:ss", + "medium": "MM/dd/y h:mm:ss a", "mediumDate": "MM/dd/y", - "mediumTime": "H:mm:ss", - "short": "MM/dd/yy H:mm", + "mediumTime": "h:mm:ss a", + "short": "MM/dd/yy h:mm a", "shortDate": "MM/dd/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "B/.", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-pe.js b/public/app/bower_components/angular-i18n/angular-locale_es-pe.js index b18343a6..39297d94 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-pe.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-pe.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/MM/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/MM/yy h:mm a", "shortDate": "d/MM/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "S/.", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ph.js b/public/app/bower_components/angular-i18n/angular-locale_es-ph.js index fbf78cf0..a51444bd 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ph.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ph.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-pr.js b/public/app/bower_components/angular-i18n/angular-locale_es-pr.js index d1b32788..8b7d7b7c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-pr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-pr.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,7 +48,7 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." @@ -64,8 +64,8 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-py.js b/public/app/bower_components/angular-i18n/angular-locale_es-py.js index 55e3db0c..59cf9814 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-py.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-py.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "Gs", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-sv.js b/public/app/bower_components/angular-i18n/angular-locale_es-sv.js index 05621f7c..9f3182a6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-sv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-sv.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-us.js b/public/app/bower_components/angular-i18n/angular-locale_es-us.js index 7e6d5088..915c7373 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-us.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-us.js @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,24 +48,24 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "MMM d, y h:mm:ss a", - "mediumDate": "MMM d, y", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "h:mm:ss a", - "short": "M/d/yy h:mm a", - "shortDate": "M/d/yy", + "short": "d/M/yy h:mm a", + "shortDate": "d/M/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", - "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", "PATTERNS": [ { "gSize": 3, @@ -84,10 +84,10 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a0\u00a4", - "posPre": "", - "posSuf": "\u00a0\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-uy.js b/public/app/bower_components/angular-i18n/angular-locale_es-uy.js index c3330494..856cd07f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-uy.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-uy.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "$", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es-ve.js b/public/app/bower_components/angular-i18n/angular-locale_es-ve.js index 65a667c3..5af81067 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es-ve.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es-ve.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "a. m.", - "p. m." + "a.\u00a0m.", + "p.\u00a0m." ], "DAY": [ "domingo", @@ -25,7 +25,7 @@ $provide.value("$locale", { "junio", "julio", "agosto", - "septiembre", + "setiembre", "octubre", "noviembre", "diciembre" @@ -48,19 +48,19 @@ $provide.value("$locale", { "jun.", "jul.", "ago.", - "sept.", + "set.", "oct.", "nov.", "dic." ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", - "mediumTime": "H:mm:ss", - "short": "d/M/yy H:mm", + "medium": "d 'de' MMM 'de' y h:mm:ss a", + "mediumDate": "d 'de' MMM 'de' y", + "mediumTime": "h:mm:ss a", + "short": "d/M/yy h:mm a", "shortDate": "d/M/yy", - "shortTime": "H:mm" + "shortTime": "h:mm a" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "Bs", diff --git a/public/app/bower_components/angular-i18n/angular-locale_es.js b/public/app/bower_components/angular-i18n/angular-locale_es.js index 647890bf..cce1c131 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_es.js +++ b/public/app/bower_components/angular-i18n/angular-locale_es.js @@ -55,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "d/M/y H:mm:ss", - "mediumDate": "d/M/y", + "medium": "d 'de' MMM 'de' y H:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "H:mm:ss", "short": "d/M/yy H:mm", "shortDate": "d/M/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_et-ee.js b/public/app/bower_components/angular-i18n/angular-locale_et-ee.js index f1456fea..5a4d6593 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_et-ee.js +++ b/public/app/bower_components/angular-i18n/angular-locale_et-ee.js @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d. MMMM y", "longDate": "d. MMMM y", - "medium": "dd.MM.y H:mm.ss", - "mediumDate": "dd.MM.y", + "medium": "d. MMM y H:mm.ss", + "mediumDate": "d. MMM y", "mediumTime": "H:mm.ss", "short": "dd.MM.yy H:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_et.js b/public/app/bower_components/angular-i18n/angular-locale_et.js index e1d6093e..bade0a01 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_et.js +++ b/public/app/bower_components/angular-i18n/angular-locale_et.js @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d. MMMM y", "longDate": "d. MMMM y", - "medium": "dd.MM.y H:mm.ss", - "mediumDate": "dd.MM.y", + "medium": "d. MMM y H:mm.ss", + "mediumDate": "d. MMM y", "mediumTime": "H:mm.ss", "short": "dd.MM.yy H:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_eu-es.js b/public/app/bower_components/angular-i18n/angular-locale_eu-es.js index a6d6d23d..2734ba09 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_eu-es.js +++ b/public/app/bower_components/angular-i18n/angular-locale_eu-es.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "y MMM d HH:mm:ss", "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", - "short": "y-MM-dd HH:mm", - "shortDate": "y-MM-dd", + "short": "y/MM/dd HH:mm", + "shortDate": "y/MM/dd", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_eu.js b/public/app/bower_components/angular-i18n/angular-locale_eu.js index 8a55b138..53714803 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_eu.js +++ b/public/app/bower_components/angular-i18n/angular-locale_eu.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "y MMM d HH:mm:ss", "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", - "short": "y-MM-dd HH:mm", - "shortDate": "y-MM-dd", + "short": "y/MM/dd HH:mm", + "shortDate": "y/MM/dd", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_fr-ch.js b/public/app/bower_components/angular-i18n/angular-locale_fr-ch.js index be55e9f3..bb51a7da 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_fr-ch.js +++ b/public/app/bower_components/angular-i18n/angular-locale_fr-ch.js @@ -65,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "CHF", "DECIMAL_SEP": ".", - "GROUP_SEP": "'", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, diff --git a/public/app/bower_components/angular-i18n/angular-locale_gd-gb.js b/public/app/bower_components/angular-i18n/angular-locale_gd-gb.js index 39b47a0d..c9b2db6f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_gd-gb.js +++ b/public/app/bower_components/angular-i18n/angular-locale_gd-gb.js @@ -30,23 +30,23 @@ $provide.value("$locale", { "DiLuain", "DiM\u00e0irt", "DiCiadain", - "Diardaoin", + "DiarDaoin", "DihAoine", "DiSathairne" ], "MONTH": [ - "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" + "dhen Fhaoilleach", + "dhen Ghearran", + "dhen Mh\u00e0rt", + "dhen Ghiblean", + "dhen Ch\u00e8itean", + "dhen \u00d2gmhios", + "dhen Iuchar", + "dhen L\u00f9nastal", + "dhen t-Sultain", + "dhen D\u00e0mhair", + "dhen t-Samhain", + "dhen D\u00f9bhlachd" ], "SHORTDAY": [ "DiD", @@ -71,8 +71,8 @@ $provide.value("$locale", { "Samh", "D\u00f9bh" ], - "fullDate": "EEEE, d MMMM y", - "longDate": "d MMMM y", + "fullDate": "EEEE, d'mh' MMMM y", + "longDate": "d'mh' MMMM y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_gd.js b/public/app/bower_components/angular-i18n/angular-locale_gd.js index 5d8d68da..f45d324d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_gd.js +++ b/public/app/bower_components/angular-i18n/angular-locale_gd.js @@ -30,23 +30,23 @@ $provide.value("$locale", { "DiLuain", "DiM\u00e0irt", "DiCiadain", - "Diardaoin", + "DiarDaoin", "DihAoine", "DiSathairne" ], "MONTH": [ - "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" + "dhen Fhaoilleach", + "dhen Ghearran", + "dhen Mh\u00e0rt", + "dhen Ghiblean", + "dhen Ch\u00e8itean", + "dhen \u00d2gmhios", + "dhen Iuchar", + "dhen L\u00f9nastal", + "dhen t-Sultain", + "dhen D\u00e0mhair", + "dhen t-Samhain", + "dhen D\u00f9bhlachd" ], "SHORTDAY": [ "DiD", @@ -71,8 +71,8 @@ $provide.value("$locale", { "Samh", "D\u00f9bh" ], - "fullDate": "EEEE, d MMMM y", - "longDate": "d MMMM y", + "fullDate": "EEEE, d'mh' MMMM y", + "longDate": "d'mh' MMMM y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_gsw-fr.js b/public/app/bower_components/angular-i18n/angular-locale_gsw-fr.js new file mode 100644 index 00000000..7bf4b584 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_gsw-fr.js @@ -0,0 +1,97 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "vorm.", + "nam." + ], + "DAY": [ + "Sunntig", + "M\u00e4\u00e4ntig", + "Ziischtig", + "Mittwuch", + "Dunschtig", + "Friitig", + "Samschtig" + ], + "MONTH": [ + "Januar", + "Februar", + "M\u00e4rz", + "April", + "Mai", + "Juni", + "Juli", + "Auguscht", + "Sept\u00e4mber", + "Oktoober", + "Nov\u00e4mber", + "Dez\u00e4mber" + ], + "SHORTDAY": [ + "Su.", + "M\u00e4.", + "Zi.", + "Mi.", + "Du.", + "Fr.", + "Sa." + ], + "SHORTMONTH": [ + "Jan", + "Feb", + "M\u00e4r", + "Apr", + "Mai", + "Jun", + "Jul", + "Aug", + "Sep", + "Okt", + "Nov", + "Dez" + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "dd.MM.y HH:mm:ss", + "mediumDate": "dd.MM.y", + "mediumTime": "HH:mm:ss", + "short": "dd.MM.yy HH:mm", + "shortDate": "dd.MM.yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ".", + "GROUP_SEP": "\u2019", + "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": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "gsw-fr", + "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_gu-in.js b/public/app/bower_components/angular-i18n/angular-locale_gu-in.js index 9065f454..e9059a97 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_gu-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_gu-in.js @@ -47,7 +47,7 @@ $provide.value("$locale", { "\u0aae\u0ac7", "\u0a9c\u0ac2\u0aa8", "\u0a9c\u0ac1\u0ab2\u0abe\u0a88", - "\u0a91\u0a97\u0ab8\u0acd\u0a9f", + "\u0a91\u0a97", "\u0ab8\u0aaa\u0acd\u0a9f\u0ac7", "\u0a91\u0a95\u0acd\u0a9f\u0acb", "\u0aa8\u0ab5\u0ac7", @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM, y hh:mm:ss a", "mediumDate": "d MMM, y", "mediumTime": "hh:mm:ss a", - "short": "d-MM-yy hh:mm a", - "shortDate": "d-MM-yy", + "short": "d/M/yy hh:mm a", + "shortDate": "d/M/yy", "shortTime": "hh:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_gu.js b/public/app/bower_components/angular-i18n/angular-locale_gu.js index 0e20f7c5..2f8e7e1a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_gu.js +++ b/public/app/bower_components/angular-i18n/angular-locale_gu.js @@ -47,7 +47,7 @@ $provide.value("$locale", { "\u0aae\u0ac7", "\u0a9c\u0ac2\u0aa8", "\u0a9c\u0ac1\u0ab2\u0abe\u0a88", - "\u0a91\u0a97\u0ab8\u0acd\u0a9f", + "\u0a91\u0a97", "\u0ab8\u0aaa\u0acd\u0a9f\u0ac7", "\u0a91\u0a95\u0acd\u0a9f\u0acb", "\u0aa8\u0ab5\u0ac7", @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM, y hh:mm:ss a", "mediumDate": "d MMM, y", "mediumTime": "hh:mm:ss a", - "short": "d-MM-yy hh:mm a", - "shortDate": "d-MM-yy", + "short": "d/M/yy hh:mm a", + "shortDate": "d/M/yy", "shortTime": "hh:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-gh.js b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-gh.js index e168e449..b7ee3177 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-gh.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-gh.js @@ -31,7 +31,7 @@ $provide.value("$locale", { "Talata", "Laraba", "Alhamis", - "Jumma'a", + "Jumma\u02bca", "Asabar" ], "MONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ne.js b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ne.js index 6b34c92c..53ee55d7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ne.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ne.js @@ -31,7 +31,7 @@ $provide.value("$locale", { "Talata", "Laraba", "Alhamis", - "Jumma'a", + "Jumma\u02bca", "Asabar" ], "MONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ng.js b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ng.js index 262338f3..141a32a6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ng.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ha-latn-ng.js @@ -31,7 +31,7 @@ $provide.value("$locale", { "Talata", "Laraba", "Alhamis", - "Jumma'a", + "Jumma\u02bca", "Asabar" ], "MONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_ha-latn.js b/public/app/bower_components/angular-i18n/angular-locale_ha-latn.js index 7fdd7a2d..5f392435 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ha-latn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ha-latn.js @@ -31,7 +31,7 @@ $provide.value("$locale", { "Talata", "Laraba", "Alhamis", - "Jumma'a", + "Jumma\u02bca", "Asabar" ], "MONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_ha.js b/public/app/bower_components/angular-i18n/angular-locale_ha.js index 7fd74208..30146d32 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ha.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ha.js @@ -31,7 +31,7 @@ $provide.value("$locale", { "Talata", "Laraba", "Alhamis", - "Jumma'a", + "Jumma\u02bca", "Asabar" ], "MONTH": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_he-il.js b/public/app/bower_components/angular-i18n/angular-locale_he-il.js index cdf66c3b..804e25bd 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_he-il.js +++ b/public/app/bower_components/angular-i18n/angular-locale_he-il.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d \u05d1MMM y HH:mm:ss", "mediumDate": "d \u05d1MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.y HH:mm", + "shortDate": "d.M.y", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_he.js b/public/app/bower_components/angular-i18n/angular-locale_he.js index 1c7d62b0..6b525ca7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_he.js +++ b/public/app/bower_components/angular-i18n/angular-locale_he.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d \u05d1MMM y HH:mm:ss", "mediumDate": "d \u05d1MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.y HH:mm", + "shortDate": "d.M.y", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hi-in.js b/public/app/bower_components/angular-i18n/angular-locale_hi-in.js index 7420d14b..e1b0b8b2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hi-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hi-in.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "\u091c\u0941\u0932\u093e\u0908", "\u0905\u0917\u0938\u094d\u0924", "\u0938\u093f\u0924\u0902\u092c\u0930", - "\u0905\u0915\u094d\u091f\u0942\u092c\u0930", + "\u0905\u0915\u094d\u0924\u0942\u092c\u0930", "\u0928\u0935\u0902\u092c\u0930", "\u0926\u093f\u0938\u0902\u092c\u0930" ], @@ -40,26 +40,26 @@ $provide.value("$locale", { "\u0936\u0928\u093f" ], "SHORTMONTH": [ - "\u091c\u0928", - "\u092b\u093c\u0930", + "\u091c\u0928\u0970", + "\u092b\u093c\u0930\u0970", "\u092e\u093e\u0930\u094d\u091a", - "\u0905\u092a\u094d\u0930\u0948", + "\u0905\u092a\u094d\u0930\u0948\u0932", "\u092e\u0908", "\u091c\u0942\u0928", - "\u091c\u0941\u0932\u093e", - "\u0905\u0917", - "\u0938\u093f\u0924\u0902", - "\u0905\u0915\u094d\u091f\u0942", - "\u0928\u0935\u0902", - "\u0926\u093f\u0938\u0902" + "\u091c\u0941\u0932\u0970", + "\u0905\u0917\u0970", + "\u0938\u093f\u0924\u0970", + "\u0905\u0915\u094d\u0924\u0942\u0970", + "\u0928\u0935\u0970", + "\u0926\u093f\u0938\u0970" ], "fullDate": "EEEE, d MMMM y", "longDate": "d MMMM y", - "medium": "dd-MM-y h:mm:ss a", - "mediumDate": "dd-MM-y", + "medium": "dd/MM/y h:mm:ss a", + "mediumDate": "dd/MM/y", "mediumTime": "h:mm:ss a", - "short": "d-M-yy h:mm a", - "shortDate": "d-M-yy", + "short": "d/M/yy h:mm a", + "shortDate": "d/M/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hi.js b/public/app/bower_components/angular-i18n/angular-locale_hi.js index b3385905..d800a286 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hi.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hi.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "\u091c\u0941\u0932\u093e\u0908", "\u0905\u0917\u0938\u094d\u0924", "\u0938\u093f\u0924\u0902\u092c\u0930", - "\u0905\u0915\u094d\u091f\u0942\u092c\u0930", + "\u0905\u0915\u094d\u0924\u0942\u092c\u0930", "\u0928\u0935\u0902\u092c\u0930", "\u0926\u093f\u0938\u0902\u092c\u0930" ], @@ -40,26 +40,26 @@ $provide.value("$locale", { "\u0936\u0928\u093f" ], "SHORTMONTH": [ - "\u091c\u0928", - "\u092b\u093c\u0930", + "\u091c\u0928\u0970", + "\u092b\u093c\u0930\u0970", "\u092e\u093e\u0930\u094d\u091a", - "\u0905\u092a\u094d\u0930\u0948", + "\u0905\u092a\u094d\u0930\u0948\u0932", "\u092e\u0908", "\u091c\u0942\u0928", - "\u091c\u0941\u0932\u093e", - "\u0905\u0917", - "\u0938\u093f\u0924\u0902", - "\u0905\u0915\u094d\u091f\u0942", - "\u0928\u0935\u0902", - "\u0926\u093f\u0938\u0902" + "\u091c\u0941\u0932\u0970", + "\u0905\u0917\u0970", + "\u0938\u093f\u0924\u0970", + "\u0905\u0915\u094d\u0924\u0942\u0970", + "\u0928\u0935\u0970", + "\u0926\u093f\u0938\u0970" ], "fullDate": "EEEE, d MMMM y", "longDate": "d MMMM y", - "medium": "dd-MM-y h:mm:ss a", - "mediumDate": "dd-MM-y", + "medium": "dd/MM/y h:mm:ss a", + "mediumDate": "dd/MM/y", "mediumTime": "h:mm:ss a", - "short": "d-M-yy h:mm a", - "shortDate": "d-M-yy", + "short": "d/M/yy h:mm a", + "shortDate": "d/M/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hr-ba.js b/public/app/bower_components/angular-i18n/angular-locale_hr-ba.js index 64fe0ebd..03a7a43b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hr-ba.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hr-ba.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d. MMM y. HH:mm:ss", "mediumDate": "d. MMM y.", "mediumTime": "HH:mm:ss", - "short": "d.M.yy. HH:mm", - "shortDate": "d.M.yy.", + "short": "dd.MM.y. HH:mm", + "shortDate": "dd.MM.y.", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hr-hr.js b/public/app/bower_components/angular-i18n/angular-locale_hr-hr.js index b23a2f06..492d82d7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hr-hr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hr-hr.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d. MMM y. HH:mm:ss", "mediumDate": "d. MMM y.", "mediumTime": "HH:mm:ss", - "short": "d.M.yy. HH:mm", - "shortDate": "d.M.yy.", + "short": "dd.MM.y. HH:mm", + "shortDate": "dd.MM.y.", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hr.js b/public/app/bower_components/angular-i18n/angular-locale_hr.js index 583ac952..baf75300 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hr.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d. MMM y. HH:mm:ss", "mediumDate": "d. MMM y.", "mediumTime": "HH:mm:ss", - "short": "d.M.yy. HH:mm", - "shortDate": "d.M.yy.", + "short": "dd.MM.y. HH:mm", + "shortDate": "dd.MM.y.", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_hsb-de.js b/public/app/bower_components/angular-i18n/angular-locale_hsb-de.js new file mode 100644 index 00000000..4c27db87 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_hsb-de.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "dopo\u0142dnja", + "popo\u0142dnju" + ], + "DAY": [ + "njed\u017aela", + "p\u00f3nd\u017aela", + "wutora", + "srjeda", + "\u0161tw\u00f3rtk", + "pjatk", + "sobota" + ], + "MONTH": [ + "januara", + "februara", + "m\u011brca", + "apryla", + "meje", + "junija", + "julija", + "awgusta", + "septembra", + "oktobra", + "nowembra", + "decembra" + ], + "SHORTDAY": [ + "nje", + "p\u00f3n", + "wut", + "srj", + "\u0161tw", + "pja", + "sob" + ], + "SHORTMONTH": [ + "jan.", + "feb.", + "m\u011br.", + "apr.", + "mej.", + "jun.", + "jul.", + "awg.", + "sep.", + "okt.", + "now.", + "dec." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d.M.y H:mm:ss", + "mediumDate": "d.M.y", + "mediumTime": "H:mm:ss", + "short": "d.M.yy H:mm 'hod\u017a'.", + "shortDate": "d.M.yy", + "shortTime": "H:mm 'hod\u017a'." + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "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": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_hsb.js b/public/app/bower_components/angular-i18n/angular-locale_hsb.js new file mode 100644 index 00000000..fbe9e8f7 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_hsb.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "dopo\u0142dnja", + "popo\u0142dnju" + ], + "DAY": [ + "njed\u017aela", + "p\u00f3nd\u017aela", + "wutora", + "srjeda", + "\u0161tw\u00f3rtk", + "pjatk", + "sobota" + ], + "MONTH": [ + "januara", + "februara", + "m\u011brca", + "apryla", + "meje", + "junija", + "julija", + "awgusta", + "septembra", + "oktobra", + "nowembra", + "decembra" + ], + "SHORTDAY": [ + "nje", + "p\u00f3n", + "wut", + "srj", + "\u0161tw", + "pja", + "sob" + ], + "SHORTMONTH": [ + "jan.", + "feb.", + "m\u011br.", + "apr.", + "mej.", + "jun.", + "jul.", + "awg.", + "sep.", + "okt.", + "now.", + "dec." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d.M.y H:mm:ss", + "mediumDate": "d.M.y", + "mediumTime": "H:mm:ss", + "short": "d.M.yy H:mm 'hod\u017a'.", + "shortDate": "d.M.yy", + "shortTime": "H:mm 'hod\u017a'." + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "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": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_hy-am.js b/public/app/bower_components/angular-i18n/angular-locale_hy-am.js index 92d2d52e..111ce69a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hy-am.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hy-am.js @@ -48,15 +48,15 @@ $provide.value("$locale", { "\u0570\u0576\u057d", "\u0570\u056c\u057d", "\u0585\u0563\u057d", - "\u057d\u057a\u057f", - "\u0570\u056f\u057f", - "\u0576\u0575\u0574", - "\u0564\u056f\u057f" + "\u057d\u0565\u057a", + "\u0570\u0578\u056f", + "\u0576\u0578\u0575", + "\u0564\u0565\u056f" ], "fullDate": "y\u0569. MMMM d, EEEE", "longDate": "dd MMMM, y\u0569.", - "medium": "dd MMM, y \u0569. H:mm:ss", - "mediumDate": "dd MMM, y \u0569.", + "medium": "dd MMM, y\u0569. H:mm:ss", + "mediumDate": "dd MMM, y\u0569.", "mediumTime": "H:mm:ss", "short": "dd.MM.yy H:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_hy.js b/public/app/bower_components/angular-i18n/angular-locale_hy.js index 8a9fb3f1..d13fbd6b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_hy.js +++ b/public/app/bower_components/angular-i18n/angular-locale_hy.js @@ -48,15 +48,15 @@ $provide.value("$locale", { "\u0570\u0576\u057d", "\u0570\u056c\u057d", "\u0585\u0563\u057d", - "\u057d\u057a\u057f", - "\u0570\u056f\u057f", - "\u0576\u0575\u0574", - "\u0564\u056f\u057f" + "\u057d\u0565\u057a", + "\u0570\u0578\u056f", + "\u0576\u0578\u0575", + "\u0564\u0565\u056f" ], "fullDate": "y\u0569. MMMM d, EEEE", "longDate": "dd MMMM, y\u0569.", - "medium": "dd MMM, y \u0569. H:mm:ss", - "mediumDate": "dd MMM, y \u0569.", + "medium": "dd MMM, y\u0569. H:mm:ss", + "mediumDate": "dd MMM, y\u0569.", "mediumTime": "H:mm:ss", "short": "dd.MM.yy H:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_it-it.js b/public/app/bower_components/angular-i18n/angular-locale_it-it.js index d56ebc2f..148ec8a5 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_it-it.js +++ b/public/app/bower_components/angular-i18n/angular-locale_it-it.js @@ -72,9 +72,9 @@ $provide.value("$locale", { "dic" ], "fullDate": "EEEE d MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MMM/y HH:mm:ss", - "mediumDate": "dd/MMM/y", + "longDate": "d MMMM y", + "medium": "dd MMM y HH:mm:ss", + "mediumDate": "dd MMM y", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_it-sm.js b/public/app/bower_components/angular-i18n/angular-locale_it-sm.js index 2d8eb250..6fe34b01 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_it-sm.js +++ b/public/app/bower_components/angular-i18n/angular-locale_it-sm.js @@ -72,9 +72,9 @@ $provide.value("$locale", { "dic" ], "fullDate": "EEEE d MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MMM/y HH:mm:ss", - "mediumDate": "dd/MMM/y", + "longDate": "d MMMM y", + "medium": "dd MMM y HH:mm:ss", + "mediumDate": "dd MMM y", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_it.js b/public/app/bower_components/angular-i18n/angular-locale_it.js index 01874854..14389ca3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_it.js +++ b/public/app/bower_components/angular-i18n/angular-locale_it.js @@ -72,9 +72,9 @@ $provide.value("$locale", { "dic" ], "fullDate": "EEEE d MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MMM/y HH:mm:ss", - "mediumDate": "dd/MMM/y", + "longDate": "d MMMM y", + "medium": "dd MMM y HH:mm:ss", + "mediumDate": "dd MMM y", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_iw.js b/public/app/bower_components/angular-i18n/angular-locale_iw.js index 2f1e0fc6..5c7ef23d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_iw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_iw.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d \u05d1MMM y HH:mm:ss", "mediumDate": "d \u05d1MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.y HH:mm", + "shortDate": "d.M.y", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_ka-ge.js b/public/app/bower_components/angular-i18n/angular-locale_ka-ge.js index b29decc3..d234e777 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ka-ge.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ka-ge.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u10d3\u10d8\u10da\u10d8\u10e1", - "\u10e1\u10d0\u10e6\u10d0\u10db\u10dd\u10e1" + "AM", + "PM" ], "DAY": [ "\u10d9\u10d5\u10d8\u10e0\u10d0", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ka.js b/public/app/bower_components/angular-i18n/angular-locale_ka.js index 4478fc63..cd4a0b78 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ka.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ka.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u10d3\u10d8\u10da\u10d8\u10e1", - "\u10e1\u10d0\u10e6\u10d0\u10db\u10dd\u10e1" + "AM", + "PM" ], "DAY": [ "\u10d9\u10d5\u10d8\u10e0\u10d0", diff --git a/public/app/bower_components/angular-i18n/angular-locale_kea-cv.js b/public/app/bower_components/angular-i18n/angular-locale_kea-cv.js index c224648d..6850856c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kea-cv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kea-cv.js @@ -36,7 +36,7 @@ $provide.value("$locale", { ], "MONTH": [ "Janeru", - "Fevereru", + "Febreru", "Marsu", "Abril", "Maiu", @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "Jan", - "Fev", + "Feb", "Mar", "Abr", "Mai", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'di' MMMM 'di' y", "longDate": "d 'di' MMMM 'di' y", - "medium": "d 'di' MMM 'di' y HH:mm:ss", - "mediumDate": "d 'di' MMM 'di' y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", "short": "d/M/y HH:mm", "shortDate": "d/M/y", @@ -83,7 +83,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "CVE", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -103,9 +103,9 @@ $provide.value("$locale", { "minFrac": 2, "minInt": 1, "negPre": "-", - "negSuf": "\u00a4", + "negSuf": "\u00a0\u00a4", "posPre": "", - "posSuf": "\u00a4" + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_kea.js b/public/app/bower_components/angular-i18n/angular-locale_kea.js index 71cb5d2b..30f40f37 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kea.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kea.js @@ -36,7 +36,7 @@ $provide.value("$locale", { ], "MONTH": [ "Janeru", - "Fevereru", + "Febreru", "Marsu", "Abril", "Maiu", @@ -59,7 +59,7 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "Jan", - "Fev", + "Feb", "Mar", "Abr", "Mai", @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'di' MMMM 'di' y", "longDate": "d 'di' MMMM 'di' y", - "medium": "d 'di' MMM 'di' y HH:mm:ss", - "mediumDate": "d 'di' MMM 'di' y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", "short": "d/M/y HH:mm", "shortDate": "d/M/y", @@ -83,7 +83,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "CVE", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -103,9 +103,9 @@ $provide.value("$locale", { "minFrac": 2, "minInt": 1, "negPre": "-", - "negSuf": "\u00a4", + "negSuf": "\u00a0\u00a4", "posPre": "", - "posSuf": "\u00a4" + "posSuf": "\u00a0\u00a4" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl-kz.js b/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl-kz.js index 38007bc5..367b96f1 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl-kz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl-kz.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0441\u043a\u0435 \u0434\u0435\u0439\u0456\u043d", - "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d" + "\u0442\u0430\u04a3\u0435\u0440\u0442\u0435\u04a3\u0433\u0456", + "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d\u0433\u0456" ], "DAY": [ "\u0436\u0435\u043a\u0441\u0435\u043d\u0431\u0456", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d" ], "SHORTDAY": [ - "\u0436\u0441.", - "\u0434\u0441.", - "\u0441\u0441.", - "\u0441\u0440.", - "\u0431\u0441.", - "\u0436\u043c.", - "\u0441\u0431." + "\u0436\u0435\u043a", + "\u0434\u04af\u0439", + "\u0441\u0435\u0439", + "\u0441\u04d9\u0440", + "\u0431\u0435\u0439", + "\u0436\u04b1\u043c\u0430", + "\u0441\u0435\u043d" ], "SHORTMONTH": [ "\u049b\u0430\u04a3.", @@ -53,10 +53,10 @@ $provide.value("$locale", { "\u049b\u0430\u0440.", "\u0436\u0435\u043b\u0442." ], - "fullDate": "EEEE, d MMMM y '\u0436'.", - "longDate": "d MMMM y '\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "y, dd-MMM HH:mm:ss", + "mediumDate": "y, dd-MMM", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl.js b/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl.js index 3529839b..a427fa6e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kk-cyrl.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0441\u043a\u0435 \u0434\u0435\u0439\u0456\u043d", - "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d" + "\u0442\u0430\u04a3\u0435\u0440\u0442\u0435\u04a3\u0433\u0456", + "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d\u0433\u0456" ], "DAY": [ "\u0436\u0435\u043a\u0441\u0435\u043d\u0431\u0456", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d" ], "SHORTDAY": [ - "\u0436\u0441.", - "\u0434\u0441.", - "\u0441\u0441.", - "\u0441\u0440.", - "\u0431\u0441.", - "\u0436\u043c.", - "\u0441\u0431." + "\u0436\u0435\u043a", + "\u0434\u04af\u0439", + "\u0441\u0435\u0439", + "\u0441\u04d9\u0440", + "\u0431\u0435\u0439", + "\u0436\u04b1\u043c\u0430", + "\u0441\u0435\u043d" ], "SHORTMONTH": [ "\u049b\u0430\u04a3.", @@ -53,10 +53,10 @@ $provide.value("$locale", { "\u049b\u0430\u0440.", "\u0436\u0435\u043b\u0442." ], - "fullDate": "EEEE, d MMMM y '\u0436'.", - "longDate": "d MMMM y '\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "y, dd-MMM HH:mm:ss", + "mediumDate": "y, dd-MMM", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_kk.js b/public/app/bower_components/angular-i18n/angular-locale_kk.js index 57e0f311..9de60877 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kk.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0441\u043a\u0435 \u0434\u0435\u0439\u0456\u043d", - "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d" + "\u0442\u0430\u04a3\u0435\u0440\u0442\u0435\u04a3\u0433\u0456", + "\u0442\u04af\u0441\u0442\u0435\u043d \u043a\u0435\u0439\u0456\u043d\u0433\u0456" ], "DAY": [ "\u0436\u0435\u043a\u0441\u0435\u043d\u0431\u0456", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d" ], "SHORTDAY": [ - "\u0436\u0441.", - "\u0434\u0441.", - "\u0441\u0441.", - "\u0441\u0440.", - "\u0431\u0441.", - "\u0436\u043c.", - "\u0441\u0431." + "\u0436\u0435\u043a", + "\u0434\u04af\u0439", + "\u0441\u0435\u0439", + "\u0441\u04d9\u0440", + "\u0431\u0435\u0439", + "\u0436\u04b1\u043c\u0430", + "\u0441\u0435\u043d" ], "SHORTMONTH": [ "\u049b\u0430\u04a3.", @@ -53,10 +53,10 @@ $provide.value("$locale", { "\u049b\u0430\u0440.", "\u0436\u0435\u043b\u0442." ], - "fullDate": "EEEE, d MMMM y '\u0436'.", - "longDate": "d MMMM y '\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "y, dd-MMM HH:mm:ss", + "mediumDate": "y, dd-MMM", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_kln-ke.js b/public/app/bower_components/angular-i18n/angular-locale_kln-ke.js index e792cfae..dd6b1fc2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kln-ke.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kln-ke.js @@ -28,18 +28,18 @@ $provide.value("$locale", { "DAY": [ "Betutab tisap", "Betut netai", - "Betutab aeng'", + "Betutab aeng\u2019", "Betutab somok", - "Betutab ang'wan", + "Betutab ang\u2019wan", "Betutab mut", "Betutab lo" ], "MONTH": [ "Mulgul", - "Ng'atyato", + "Ng\u2019atyato", "Kiptamo", "Iwat kut", - "Ng'eiyet", + "Ng\u2019eiyet", "Waki", "Roptui", "Kipkogaga", diff --git a/public/app/bower_components/angular-i18n/angular-locale_kln.js b/public/app/bower_components/angular-i18n/angular-locale_kln.js index 9e53d306..c14ba19d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kln.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kln.js @@ -28,18 +28,18 @@ $provide.value("$locale", { "DAY": [ "Betutab tisap", "Betut netai", - "Betutab aeng'", + "Betutab aeng\u2019", "Betutab somok", - "Betutab ang'wan", + "Betutab ang\u2019wan", "Betutab mut", "Betutab lo" ], "MONTH": [ "Mulgul", - "Ng'atyato", + "Ng\u2019atyato", "Kiptamo", "Iwat kut", - "Ng'eiyet", + "Ng\u2019eiyet", "Waki", "Roptui", "Kipkogaga", diff --git a/public/app/bower_components/angular-i18n/angular-locale_km-kh.js b/public/app/bower_components/angular-i18n/angular-locale_km-kh.js index 21aca9cc..9e1eb22f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_km-kh.js +++ b/public/app/bower_components/angular-i18n/angular-locale_km-kh.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM y h:mm:ss a", "mediumDate": "d MMM y", "mediumTime": "h:mm:ss a", - "short": "d/M/y h:mm a", - "shortDate": "d/M/y", + "short": "d/M/yy h:mm a", + "shortDate": "d/M/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_km.js b/public/app/bower_components/angular-i18n/angular-locale_km.js index 8a094eed..879247bc 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_km.js +++ b/public/app/bower_components/angular-i18n/angular-locale_km.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d MMM y h:mm:ss a", "mediumDate": "d MMM y", "mediumTime": "h:mm:ss a", - "short": "d/M/y h:mm a", - "shortDate": "d/M/y", + "short": "d/M/yy h:mm a", + "shortDate": "d/M/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_kn-in.js b/public/app/bower_components/angular-i18n/angular-locale_kn-in.js index 53862d0e..e61f6cf0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kn-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kn-in.js @@ -4,11 +4,11 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "\u0caa\u0cc2\u0cb0\u0ccd\u0cb5\u0cbe\u0cb9\u0ccd\u0ca8", + "\u0c85\u0caa\u0cb0\u0cbe\u0cb9\u0ccd\u0ca8" ], "DAY": [ - "\u0cb0\u0cb5\u0cbf\u0cb5\u0cbe\u0cb0", + "\u0cad\u0cbe\u0ca8\u0cc1\u0cb5\u0cbe\u0cb0", "\u0cb8\u0ccb\u0cae\u0cb5\u0cbe\u0cb0", "\u0cae\u0c82\u0c97\u0cb3\u0cb5\u0cbe\u0cb0", "\u0cac\u0cc1\u0ca7\u0cb5\u0cbe\u0cb0", @@ -25,41 +25,41 @@ $provide.value("$locale", { "\u0c9c\u0cc2\u0ca8\u0ccd", "\u0c9c\u0cc1\u0cb2\u0cc8", "\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd", - "\u0cb8\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\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" ], "SHORTDAY": [ - "\u0cb0.", - "\u0cb8\u0ccb.", - "\u0cae\u0c82.", - "\u0cac\u0cc1.", - "\u0c97\u0cc1.", - "\u0cb6\u0cc1.", - "\u0cb6\u0ca8\u0cbf." + "\u0cad\u0cbe\u0ca8\u0cc1", + "\u0cb8\u0ccb\u0cae", + "\u0cae\u0c82\u0c97\u0cb3", + "\u0cac\u0cc1\u0ca7", + "\u0c97\u0cc1\u0cb0\u0cc1", + "\u0cb6\u0cc1\u0c95\u0ccd\u0cb0", + "\u0cb6\u0ca8\u0cbf" ], "SHORTMONTH": [ - "\u0c9c\u0ca8.", - "\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cc1.", - "\u0cae\u0cbe", - "\u0c8f\u0caa\u0ccd\u0cb0\u0cbf.", + "\u0c9c\u0ca8", + "\u0cab\u0cc6\u0cac\u0ccd\u0cb0", + "\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd", + "\u0c8f\u0caa\u0ccd\u0cb0\u0cbf", "\u0cae\u0cc7", - "\u0c9c\u0cc2", - "\u0c9c\u0cc1.", - "\u0c86\u0c97.", - "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82.", - "\u0c85\u0c95\u0ccd\u0c9f\u0ccb.", - "\u0ca8\u0cb5\u0cc6\u0c82.", - "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82." + "\u0c9c\u0cc2\u0ca8\u0ccd", + "\u0c9c\u0cc1\u0cb2\u0cc8", + "\u0c86\u0c97", + "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82", + "\u0c85\u0c95\u0ccd\u0c9f\u0ccb", + "\u0ca8\u0cb5\u0cc6\u0c82", + "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82" ], - "fullDate": "d MMMM y, EEEE", - "longDate": "d MMMM y", - "medium": "d MMM y hh:mm:ss a", - "mediumDate": "d MMM y", + "fullDate": "EEEE, MMMM d, y", + "longDate": "MMMM d, y", + "medium": "MMM d, y hh:mm:ss a", + "mediumDate": "MMM d, y", "mediumTime": "hh:mm:ss a", - "short": "d-M-yy hh:mm a", - "shortDate": "d-M-yy", + "short": "M/d/yy hh:mm a", + "shortDate": "M/d/yy", "shortTime": "hh:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_kn.js b/public/app/bower_components/angular-i18n/angular-locale_kn.js index bf2cf50b..6d9cdd12 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_kn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_kn.js @@ -4,11 +4,11 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "\u0caa\u0cc2\u0cb0\u0ccd\u0cb5\u0cbe\u0cb9\u0ccd\u0ca8", + "\u0c85\u0caa\u0cb0\u0cbe\u0cb9\u0ccd\u0ca8" ], "DAY": [ - "\u0cb0\u0cb5\u0cbf\u0cb5\u0cbe\u0cb0", + "\u0cad\u0cbe\u0ca8\u0cc1\u0cb5\u0cbe\u0cb0", "\u0cb8\u0ccb\u0cae\u0cb5\u0cbe\u0cb0", "\u0cae\u0c82\u0c97\u0cb3\u0cb5\u0cbe\u0cb0", "\u0cac\u0cc1\u0ca7\u0cb5\u0cbe\u0cb0", @@ -25,41 +25,41 @@ $provide.value("$locale", { "\u0c9c\u0cc2\u0ca8\u0ccd", "\u0c9c\u0cc1\u0cb2\u0cc8", "\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd", - "\u0cb8\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\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" ], "SHORTDAY": [ - "\u0cb0.", - "\u0cb8\u0ccb.", - "\u0cae\u0c82.", - "\u0cac\u0cc1.", - "\u0c97\u0cc1.", - "\u0cb6\u0cc1.", - "\u0cb6\u0ca8\u0cbf." + "\u0cad\u0cbe\u0ca8\u0cc1", + "\u0cb8\u0ccb\u0cae", + "\u0cae\u0c82\u0c97\u0cb3", + "\u0cac\u0cc1\u0ca7", + "\u0c97\u0cc1\u0cb0\u0cc1", + "\u0cb6\u0cc1\u0c95\u0ccd\u0cb0", + "\u0cb6\u0ca8\u0cbf" ], "SHORTMONTH": [ - "\u0c9c\u0ca8.", - "\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cc1.", - "\u0cae\u0cbe", - "\u0c8f\u0caa\u0ccd\u0cb0\u0cbf.", + "\u0c9c\u0ca8", + "\u0cab\u0cc6\u0cac\u0ccd\u0cb0", + "\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd", + "\u0c8f\u0caa\u0ccd\u0cb0\u0cbf", "\u0cae\u0cc7", - "\u0c9c\u0cc2", - "\u0c9c\u0cc1.", - "\u0c86\u0c97.", - "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82.", - "\u0c85\u0c95\u0ccd\u0c9f\u0ccb.", - "\u0ca8\u0cb5\u0cc6\u0c82.", - "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82." + "\u0c9c\u0cc2\u0ca8\u0ccd", + "\u0c9c\u0cc1\u0cb2\u0cc8", + "\u0c86\u0c97", + "\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82", + "\u0c85\u0c95\u0ccd\u0c9f\u0ccb", + "\u0ca8\u0cb5\u0cc6\u0c82", + "\u0ca1\u0cbf\u0cb8\u0cc6\u0c82" ], - "fullDate": "d MMMM y, EEEE", - "longDate": "d MMMM y", - "medium": "d MMM y hh:mm:ss a", - "mediumDate": "d MMM y", + "fullDate": "EEEE, MMMM d, y", + "longDate": "MMMM d, y", + "medium": "MMM d, y hh:mm:ss a", + "mediumDate": "MMM d, y", "mediumTime": "hh:mm:ss a", - "short": "d-M-yy hh:mm a", - "shortDate": "d-M-yy", + "short": "M/d/yy hh:mm a", + "shortDate": "M/d/yy", "shortTime": "hh:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl-kg.js b/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl-kg.js index 9d926161..fcfc0149 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl-kg.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl-kg.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0448\u043a\u04e9 \u0447\u0435\u0439\u0438\u043d\u043a\u0438", - "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d\u043a\u0438" + "\u0442\u0430\u04a3\u043a\u044b", + "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d" ], "DAY": [ - "\u0416\u0435\u043a", - "\u0414\u04af\u0439", - "\u0428\u0435\u0439", - "\u0428\u0430\u0440", - "\u0411\u0435\u0439", - "\u0416\u0443\u043c", - "\u0418\u0448\u043c" + "\u0436\u0435\u043a\u0448\u0435\u043c\u0431\u0438", + "\u0434\u04af\u0439\u0448\u04e9\u043c\u0431\u04af", + "\u0448\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0448\u0430\u0440\u0448\u0435\u043c\u0431\u0438", + "\u0431\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u0435\u043c\u0431\u0438" ], "MONTH": [ "\u044f\u043d\u0432\u0430\u0440\u044c", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0434\u0435\u043a\u0430\u0431\u0440\u044c" ], "SHORTDAY": [ - "\u0416\u043a", - "\u0414\u0448", - "\u0428\u0435", - "\u0428\u0430", - "\u0411\u0448", - "\u0416\u043c", - "\u0418\u0448" + "\u0436\u0435\u043a.", + "\u0434\u04af\u0439.", + "\u0448\u0435\u0439\u0448.", + "\u0448\u0430\u0440\u0448.", + "\u0431\u0435\u0439\u0448.", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u043c." ], "SHORTMONTH": [ "\u044f\u043d\u0432.", @@ -54,9 +54,9 @@ $provide.value("$locale", { "\u0434\u0435\u043a." ], "fullDate": "EEEE, d-MMMM, y-'\u0436'.", - "longDate": "d-MMMM, y-'\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl.js b/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl.js index c4e8066b..dd41ca36 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ky-cyrl.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0448\u043a\u04e9 \u0447\u0435\u0439\u0438\u043d\u043a\u0438", - "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d\u043a\u0438" + "\u0442\u0430\u04a3\u043a\u044b", + "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d" ], "DAY": [ - "\u0416\u0435\u043a", - "\u0414\u04af\u0439", - "\u0428\u0435\u0439", - "\u0428\u0430\u0440", - "\u0411\u0435\u0439", - "\u0416\u0443\u043c", - "\u0418\u0448\u043c" + "\u0436\u0435\u043a\u0448\u0435\u043c\u0431\u0438", + "\u0434\u04af\u0439\u0448\u04e9\u043c\u0431\u04af", + "\u0448\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0448\u0430\u0440\u0448\u0435\u043c\u0431\u0438", + "\u0431\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u0435\u043c\u0431\u0438" ], "MONTH": [ "\u044f\u043d\u0432\u0430\u0440\u044c", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0434\u0435\u043a\u0430\u0431\u0440\u044c" ], "SHORTDAY": [ - "\u0416\u043a", - "\u0414\u0448", - "\u0428\u0435", - "\u0428\u0430", - "\u0411\u0448", - "\u0416\u043c", - "\u0418\u0448" + "\u0436\u0435\u043a.", + "\u0434\u04af\u0439.", + "\u0448\u0435\u0439\u0448.", + "\u0448\u0430\u0440\u0448.", + "\u0431\u0435\u0439\u0448.", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u043c." ], "SHORTMONTH": [ "\u044f\u043d\u0432.", @@ -54,9 +54,9 @@ $provide.value("$locale", { "\u0434\u0435\u043a." ], "fullDate": "EEEE, d-MMMM, y-'\u0436'.", - "longDate": "d-MMMM, y-'\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ky.js b/public/app/bower_components/angular-i18n/angular-locale_ky.js index 26e823cc..9db5b3c5 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ky.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ky.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "\u0442\u04af\u0448\u043a\u04e9 \u0447\u0435\u0439\u0438\u043d\u043a\u0438", - "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d\u043a\u0438" + "\u0442\u0430\u04a3\u043a\u044b", + "\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d" ], "DAY": [ - "\u0416\u0435\u043a", - "\u0414\u04af\u0439", - "\u0428\u0435\u0439", - "\u0428\u0430\u0440", - "\u0411\u0435\u0439", - "\u0416\u0443\u043c", - "\u0418\u0448\u043c" + "\u0436\u0435\u043a\u0448\u0435\u043c\u0431\u0438", + "\u0434\u04af\u0439\u0448\u04e9\u043c\u0431\u04af", + "\u0448\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0448\u0430\u0440\u0448\u0435\u043c\u0431\u0438", + "\u0431\u0435\u0439\u0448\u0435\u043c\u0431\u0438", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u0435\u043c\u0431\u0438" ], "MONTH": [ "\u044f\u043d\u0432\u0430\u0440\u044c", @@ -31,13 +31,13 @@ $provide.value("$locale", { "\u0434\u0435\u043a\u0430\u0431\u0440\u044c" ], "SHORTDAY": [ - "\u0416\u043a", - "\u0414\u0448", - "\u0428\u0435", - "\u0428\u0430", - "\u0411\u0448", - "\u0416\u043c", - "\u0418\u0448" + "\u0436\u0435\u043a.", + "\u0434\u04af\u0439.", + "\u0448\u0435\u0439\u0448.", + "\u0448\u0430\u0440\u0448.", + "\u0431\u0435\u0439\u0448.", + "\u0436\u0443\u043c\u0430", + "\u0438\u0448\u043c." ], "SHORTMONTH": [ "\u044f\u043d\u0432.", @@ -54,9 +54,9 @@ $provide.value("$locale", { "\u0434\u0435\u043a." ], "fullDate": "EEEE, d-MMMM, y-'\u0436'.", - "longDate": "d-MMMM, y-'\u0436'.", - "medium": "dd.MM.y HH:mm:ss", - "mediumDate": "dd.MM.y", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_lb-lu.js b/public/app/bower_components/angular-i18n/angular-locale_lb-lu.js new file mode 100644 index 00000000..4acd71d3 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_lb-lu.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "moies", + "nom\u00ebttes" + ], + "DAY": [ + "Sonndeg", + "M\u00e9indeg", + "D\u00ebnschdeg", + "M\u00ebttwoch", + "Donneschdeg", + "Freideg", + "Samschdeg" + ], + "MONTH": [ + "Januar", + "Februar", + "M\u00e4erz", + "Abr\u00ebll", + "Mee", + "Juni", + "Juli", + "August", + "September", + "Oktober", + "November", + "Dezember" + ], + "SHORTDAY": [ + "Son.", + "M\u00e9i.", + "D\u00ebn.", + "M\u00ebt.", + "Don.", + "Fre.", + "Sam." + ], + "SHORTMONTH": [ + "Jan.", + "Feb.", + "M\u00e4e.", + "Abr.", + "Mee", + "Juni", + "Juli", + "Aug.", + "Sep.", + "Okt.", + "Nov.", + "Dez." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d. MMM y HH:mm:ss", + "mediumDate": "d. MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd.MM.yy HH:mm", + "shortDate": "dd.MM.yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "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": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_lb.js b/public/app/bower_components/angular-i18n/angular-locale_lb.js new file mode 100644 index 00000000..71fec48d --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_lb.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "moies", + "nom\u00ebttes" + ], + "DAY": [ + "Sonndeg", + "M\u00e9indeg", + "D\u00ebnschdeg", + "M\u00ebttwoch", + "Donneschdeg", + "Freideg", + "Samschdeg" + ], + "MONTH": [ + "Januar", + "Februar", + "M\u00e4erz", + "Abr\u00ebll", + "Mee", + "Juni", + "Juli", + "August", + "September", + "Oktober", + "November", + "Dezember" + ], + "SHORTDAY": [ + "Son.", + "M\u00e9i.", + "D\u00ebn.", + "M\u00ebt.", + "Don.", + "Fre.", + "Sam." + ], + "SHORTMONTH": [ + "Jan.", + "Feb.", + "M\u00e4e.", + "Abr.", + "Mee", + "Juni", + "Juli", + "Aug.", + "Sep.", + "Okt.", + "Nov.", + "Dez." + ], + "fullDate": "EEEE, d. MMMM y", + "longDate": "d. MMMM y", + "medium": "d. MMM y HH:mm:ss", + "mediumDate": "d. MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd.MM.yy HH:mm", + "shortDate": "dd.MM.yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "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": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_lt-lt.js b/public/app/bower_components/angular-i18n/angular-locale_lt-lt.js index 2775c1f3..e19343b2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_lt-lt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_lt-lt.js @@ -35,18 +35,18 @@ $provide.value("$locale", { "\u0161e\u0161tadienis" ], "MONTH": [ - "sausis", - "vasaris", - "kovas", - "balandis", - "gegu\u017e\u0117", - "bir\u017eelis", - "liepa", - "rugpj\u016btis", - "rugs\u0117jis", - "spalis", - "lapkritis", - "gruodis" + "sausio", + "vasario", + "kovo", + "baland\u017eio", + "gegu\u017e\u0117s", + "bir\u017eelio", + "liepos", + "rugpj\u016b\u010dio", + "rugs\u0117jo", + "spalio", + "lapkri\u010dio", + "gruod\u017eio" ], "SHORTDAY": [ "sk", @@ -73,15 +73,15 @@ $provide.value("$locale", { ], "fullDate": "y 'm'. MMMM d 'd'., EEEE", "longDate": "y 'm'. MMMM d 'd'.", - "medium": "y MMM d HH:mm:ss", - "mediumDate": "y MMM d", + "medium": "y-MM-dd HH:mm:ss", + "mediumDate": "y-MM-dd", "mediumTime": "HH:mm:ss", "short": "y-MM-dd HH:mm", "shortDate": "y-MM-dd", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { - "CURRENCY_SYM": "Lt", + "CURRENCY_SYM": "\u20ac", "DECIMAL_SEP": ",", "GROUP_SEP": "\u00a0", "PATTERNS": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_lt.js b/public/app/bower_components/angular-i18n/angular-locale_lt.js index 02f8921d..aea8cdd2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_lt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_lt.js @@ -35,18 +35,18 @@ $provide.value("$locale", { "\u0161e\u0161tadienis" ], "MONTH": [ - "sausis", - "vasaris", - "kovas", - "balandis", - "gegu\u017e\u0117", - "bir\u017eelis", - "liepa", - "rugpj\u016btis", - "rugs\u0117jis", - "spalis", - "lapkritis", - "gruodis" + "sausio", + "vasario", + "kovo", + "baland\u017eio", + "gegu\u017e\u0117s", + "bir\u017eelio", + "liepos", + "rugpj\u016b\u010dio", + "rugs\u0117jo", + "spalio", + "lapkri\u010dio", + "gruod\u017eio" ], "SHORTDAY": [ "sk", @@ -73,15 +73,15 @@ $provide.value("$locale", { ], "fullDate": "y 'm'. MMMM d 'd'., EEEE", "longDate": "y 'm'. MMMM d 'd'.", - "medium": "y MMM d HH:mm:ss", - "mediumDate": "y MMM d", + "medium": "y-MM-dd HH:mm:ss", + "mediumDate": "y-MM-dd", "mediumTime": "HH:mm:ss", "short": "y-MM-dd HH:mm", "shortDate": "y-MM-dd", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { - "CURRENCY_SYM": "Lt", + "CURRENCY_SYM": "\u20ac", "DECIMAL_SEP": ",", "GROUP_SEP": "\u00a0", "PATTERNS": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_luo-ke.js b/public/app/bower_components/angular-i18n/angular-locale_luo-ke.js index 3f7ce262..f9087dc8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_luo-ke.js +++ b/public/app/bower_components/angular-i18n/angular-locale_luo-ke.js @@ -30,7 +30,7 @@ $provide.value("$locale", { "Wuok Tich", "Tich Ariyo", "Tich Adek", - "Tich Ang'wen", + "Tich Ang\u2019wen", "Tich Abich", "Ngeso" ], @@ -38,7 +38,7 @@ $provide.value("$locale", { "Dwe mar Achiel", "Dwe mar Ariyo", "Dwe mar Adek", - "Dwe mar Ang'wen", + "Dwe mar Ang\u2019wen", "Dwe mar Abich", "Dwe mar Auchiel", "Dwe mar Abiriyo", diff --git a/public/app/bower_components/angular-i18n/angular-locale_luo.js b/public/app/bower_components/angular-i18n/angular-locale_luo.js index 99b12d1b..11e51ea2 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_luo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_luo.js @@ -30,7 +30,7 @@ $provide.value("$locale", { "Wuok Tich", "Tich Ariyo", "Tich Adek", - "Tich Ang'wen", + "Tich Ang\u2019wen", "Tich Abich", "Ngeso" ], @@ -38,7 +38,7 @@ $provide.value("$locale", { "Dwe mar Achiel", "Dwe mar Ariyo", "Dwe mar Adek", - "Dwe mar Ang'wen", + "Dwe mar Ang\u2019wen", "Dwe mar Abich", "Dwe mar Auchiel", "Dwe mar Abiriyo", diff --git a/public/app/bower_components/angular-i18n/angular-locale_lv-lv.js b/public/app/bower_components/angular-i18n/angular-locale_lv-lv.js index f9356fa6..343b8b9a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_lv-lv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_lv-lv.js @@ -97,8 +97,8 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, - "lgSize": 3, + "gSize": 0, + "lgSize": 0, "maxFrac": 2, "minFrac": 2, "minInt": 1, diff --git a/public/app/bower_components/angular-i18n/angular-locale_lv.js b/public/app/bower_components/angular-i18n/angular-locale_lv.js index aa31eda5..8cdceb63 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_lv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_lv.js @@ -97,8 +97,8 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, - "lgSize": 3, + "gSize": 0, + "lgSize": 0, "maxFrac": 2, "minFrac": 2, "minInt": 1, diff --git a/public/app/bower_components/angular-i18n/angular-locale_mgh-mz.js b/public/app/bower_components/angular-i18n/angular-locale_mgh-mz.js index e60a2459..41860482 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mgh-mz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mgh-mz.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "wichishu", - "mchochil'l" + "mchochil\u2019l" ], "DAY": [ "Sabato", @@ -46,7 +46,7 @@ $provide.value("$locale", { "Mweri wo tisa", "Mweri wo kumi", "Mweri wo kumi na moja", - "Mweri wo kumi na yel'li" + "Mweri wo kumi na yel\u2019li" ], "SHORTDAY": [ "Sab", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mgh.js b/public/app/bower_components/angular-i18n/angular-locale_mgh.js index e5c14b90..ee4fedcf 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mgh.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mgh.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "wichishu", - "mchochil'l" + "mchochil\u2019l" ], "DAY": [ "Sabato", @@ -46,7 +46,7 @@ $provide.value("$locale", { "Mweri wo tisa", "Mweri wo kumi", "Mweri wo kumi na moja", - "Mweri wo kumi na yel'li" + "Mweri wo kumi na yel\u2019li" ], "SHORTDAY": [ "Sab", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mk-mk.js b/public/app/bower_components/angular-i18n/angular-locale_mk-mk.js index 30b8e34f..e7a3d04b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mk-mk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mk-mk.js @@ -71,8 +71,8 @@ $provide.value("$locale", { "\u043d\u043e\u0435\u043c.", "\u0434\u0435\u043a." ], - "fullDate": "EEEE, dd MMMM y '\u0433'.", - "longDate": "dd MMMM y '\u0433'.", + "fullDate": "EEEE, dd MMMM y", + "longDate": "dd MMMM y", "medium": "dd.M.y HH:mm:ss", "mediumDate": "dd.M.y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mk.js b/public/app/bower_components/angular-i18n/angular-locale_mk.js index 027cca29..94618a5d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mk.js @@ -71,8 +71,8 @@ $provide.value("$locale", { "\u043d\u043e\u0435\u043c.", "\u0434\u0435\u043a." ], - "fullDate": "EEEE, dd MMMM y '\u0433'.", - "longDate": "dd MMMM y '\u0433'.", + "fullDate": "EEEE, dd MMMM y", + "longDate": "dd MMMM y", "medium": "dd.M.y HH:mm:ss", "mediumDate": "dd.M.y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ml-in.js b/public/app/bower_components/angular-i18n/angular-locale_ml-in.js index f58fb8e0..64ec7282 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ml-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ml-in.js @@ -79,15 +79,15 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a4", - "posPre": "", - "posSuf": "\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_ml.js b/public/app/bower_components/angular-i18n/angular-locale_ml.js index 80990e2f..7a880ce1 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ml.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ml.js @@ -79,15 +79,15 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "-", - "negSuf": "\u00a4", - "posPre": "", - "posSuf": "\u00a4" + "negPre": "\u00a4-", + "negSuf": "", + "posPre": "\u00a4", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl-mn.js b/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl-mn.js index 36c40a00..0d91c7eb 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl-mn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl-mn.js @@ -53,8 +53,8 @@ $provide.value("$locale", { "11-\u0440 \u0441\u0430\u0440", "12-\u0440 \u0441\u0430\u0440" ], - "fullDate": "EEEE, y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' dd", - "longDate": "y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' d", + "fullDate": "EEEE, y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", + "longDate": "y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", "medium": "y MMM d HH:mm:ss", "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl.js b/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl.js index 02d1520e..7b9fe6fb 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mn-cyrl.js @@ -53,8 +53,8 @@ $provide.value("$locale", { "11-\u0440 \u0441\u0430\u0440", "12-\u0440 \u0441\u0430\u0440" ], - "fullDate": "EEEE, y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' dd", - "longDate": "y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' d", + "fullDate": "EEEE, y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", + "longDate": "y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", "medium": "y MMM d HH:mm:ss", "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mn.js b/public/app/bower_components/angular-i18n/angular-locale_mn.js index 4ac32a41..7c284c20 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mn.js @@ -53,8 +53,8 @@ $provide.value("$locale", { "11-\u0440 \u0441\u0430\u0440", "12-\u0440 \u0441\u0430\u0440" ], - "fullDate": "EEEE, y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' dd", - "longDate": "y '\u043e\u043d\u044b' MMMM '\u0441\u0430\u0440\u044b\u043d' d", + "fullDate": "EEEE, y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", + "longDate": "y '\u043e\u043d\u044b' MM '\u0441\u0430\u0440\u044b\u043d' d", "medium": "y MMM d HH:mm:ss", "mediumDate": "y MMM d", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mr-in.js b/public/app/bower_components/angular-i18n/angular-locale_mr-in.js index bf8c79ee..fc608100 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mr-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mr-in.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "[AM]", - "[PM]" + "\u092e.\u092a\u0942.", + "\u092e.\u0909." ], "DAY": [ "\u0930\u0935\u093f\u0935\u093e\u0930", @@ -68,7 +68,7 @@ $provide.value("$locale", { "GROUP_SEP": ",", "PATTERNS": [ { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 3, "minFrac": 0, diff --git a/public/app/bower_components/angular-i18n/angular-locale_mr.js b/public/app/bower_components/angular-i18n/angular-locale_mr.js index 1546413f..bf441203 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mr.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "[AM]", - "[PM]" + "\u092e.\u092a\u0942.", + "\u092e.\u0909." ], "DAY": [ "\u0930\u0935\u093f\u0935\u093e\u0930", @@ -68,7 +68,7 @@ $provide.value("$locale", { "GROUP_SEP": ",", "PATTERNS": [ { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 3, "minFrac": 0, diff --git a/public/app/bower_components/angular-i18n/angular-locale_mt-mt.js b/public/app/bower_components/angular-i18n/angular-locale_mt-mt.js index 957b69eb..b0b41c9b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mt-mt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mt-mt.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "QN", - "WN" + "AM", + "PM" ], "DAY": [ "Il-\u0126add", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mt.js b/public/app/bower_components/angular-i18n/angular-locale_mt.js index 7907b678..2d0b1c4e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mt.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "QN", - "WN" + "AM", + "PM" ], "DAY": [ "Il-\u0126add", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mua-cm.js b/public/app/bower_components/angular-i18n/angular-locale_mua-cm.js index a1ff1153..9496099e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mua-cm.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mua-cm.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "lilli" ], "DAY": [ - "Com'yakke", + "Com\u2019yakke", "Comlaa\u0257ii", "Comzyii\u0257ii", "Comkolle", diff --git a/public/app/bower_components/angular-i18n/angular-locale_mua.js b/public/app/bower_components/angular-i18n/angular-locale_mua.js index c7b4a2f3..4f0e180f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_mua.js +++ b/public/app/bower_components/angular-i18n/angular-locale_mua.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "lilli" ], "DAY": [ - "Com'yakke", + "Com\u2019yakke", "Comlaa\u0257ii", "Comzyii\u0257ii", "Comkolle", diff --git a/public/app/bower_components/angular-i18n/angular-locale_my-mm.js b/public/app/bower_components/angular-i18n/angular-locale_my-mm.js index 3b98a889..cf3691c3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_my-mm.js +++ b/public/app/bower_components/angular-i18n/angular-locale_my-mm.js @@ -40,26 +40,26 @@ $provide.value("$locale", { "\u1005\u1014\u1031" ], "SHORTMONTH": [ - "\u1007\u1014\u103a\u1014\u101d\u102b\u101b\u102e", - "\u1016\u1031\u1016\u1031\u102c\u103a\u101d\u102b\u101b\u102e", + "\u1007\u1014\u103a", + "\u1016\u1031", "\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" + "\u1007\u1030", + "\u1029", + "\u1005\u1000\u103a", + "\u1021\u1031\u102c\u1000\u103a", + "\u1014\u102d\u102f", + "\u1012\u102e" ], - "fullDate": "EEEE, y MMMM dd", - "longDate": "y MMMM d", - "medium": "y MMM d HH:mm:ss", - "mediumDate": "y MMM d", + "fullDate": "EEEE, dd MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "yy/MM/dd HH:mm", - "shortDate": "yy/MM/dd", + "short": "dd-MM-yy HH:mm", + "shortDate": "dd-MM-yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_my.js b/public/app/bower_components/angular-i18n/angular-locale_my.js index 6e7edd51..01c098fd 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_my.js +++ b/public/app/bower_components/angular-i18n/angular-locale_my.js @@ -40,26 +40,26 @@ $provide.value("$locale", { "\u1005\u1014\u1031" ], "SHORTMONTH": [ - "\u1007\u1014\u103a\u1014\u101d\u102b\u101b\u102e", - "\u1016\u1031\u1016\u1031\u102c\u103a\u101d\u102b\u101b\u102e", + "\u1007\u1014\u103a", + "\u1016\u1031", "\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" + "\u1007\u1030", + "\u1029", + "\u1005\u1000\u103a", + "\u1021\u1031\u102c\u1000\u103a", + "\u1014\u102d\u102f", + "\u1012\u102e" ], - "fullDate": "EEEE, y MMMM dd", - "longDate": "y MMMM d", - "medium": "y MMM d HH:mm:ss", - "mediumDate": "y MMM d", + "fullDate": "EEEE, dd MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "yy/MM/dd HH:mm", - "shortDate": "yy/MM/dd", + "short": "dd-MM-yy HH:mm", + "shortDate": "dd-MM-yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nb-no.js b/public/app/bower_components/angular-i18n/angular-locale_nb-no.js index 1cf952ea..227cc208 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nb-no.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nb-no.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH.mm.ss", "mediumDate": "d. MMM y", "mediumTime": "HH.mm.ss", - "short": "dd.MM.yy HH.mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH.mm", + "shortDate": "dd.MM.y", "shortTime": "HH.mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nb-sj.js b/public/app/bower_components/angular-i18n/angular-locale_nb-sj.js index 463b1867..3626313e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nb-sj.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nb-sj.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH.mm.ss", "mediumDate": "d. MMM y", "mediumTime": "HH.mm.ss", - "short": "dd.MM.yy HH.mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH.mm", + "shortDate": "dd.MM.y", "shortTime": "HH.mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nb.js b/public/app/bower_components/angular-i18n/angular-locale_nb.js index 47982afd..fc54f158 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nb.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nb.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH.mm.ss", "mediumDate": "d. MMM y", "mediumTime": "HH.mm.ss", - "short": "dd.MM.yy HH.mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH.mm", + "shortDate": "dd.MM.y", "shortTime": "HH.mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_ne-in.js b/public/app/bower_components/angular-i18n/angular-locale_ne-in.js index 95c34643..7aac84ed 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ne-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ne-in.js @@ -84,9 +84,9 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", + "negPre": "\u00a4\u00a0-", "negSuf": "", - "posPre": "\u00a4", + "posPre": "\u00a4\u00a0", "posSuf": "" } ] diff --git a/public/app/bower_components/angular-i18n/angular-locale_ne-np.js b/public/app/bower_components/angular-i18n/angular-locale_ne-np.js index 5987d4d6..ad00bc49 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ne-np.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ne-np.js @@ -84,9 +84,9 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", + "negPre": "\u00a4\u00a0-", "negSuf": "", - "posPre": "\u00a4", + "posPre": "\u00a4\u00a0", "posSuf": "" } ] diff --git a/public/app/bower_components/angular-i18n/angular-locale_ne.js b/public/app/bower_components/angular-i18n/angular-locale_ne.js index de55d962..d278adae 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ne.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ne.js @@ -84,9 +84,9 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", + "negPre": "\u00a4\u00a0-", "negSuf": "", - "posPre": "\u00a4", + "posPre": "\u00a4\u00a0", "posSuf": "" } ] diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-aw.js b/public/app/bower_components/angular-i18n/angular-locale_nl-aw.js index 8a9d640d..52ae309f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-aw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-aw.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-be.js b/public/app/bower_components/angular-i18n/angular-locale_nl-be.js index 9031ff5e..bd8a569f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-be.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-be.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-bq.js b/public/app/bower_components/angular-i18n/angular-locale_nl-bq.js index 61e60bed..5bf5d851 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-bq.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-bq.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-cw.js b/public/app/bower_components/angular-i18n/angular-locale_nl-cw.js index c2197595..ec766ee6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-cw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-cw.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-nl.js b/public/app/bower_components/angular-i18n/angular-locale_nl-nl.js index 764245c1..9a4a5213 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-nl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-nl.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-sr.js b/public/app/bower_components/angular-i18n/angular-locale_nl-sr.js index ee428caf..0586aca7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-sr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-sr.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl-sx.js b/public/app/bower_components/angular-i18n/angular-locale_nl-sx.js index b3be861f..aa2b37e8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl-sx.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl-sx.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nl.js b/public/app/bower_components/angular-i18n/angular-locale_nl.js index ac19d54c..bee9598d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nl.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "a.m.", + "p.m." ], "DAY": [ "zondag", diff --git a/public/app/bower_components/angular-i18n/angular-locale_nn-no.js b/public/app/bower_components/angular-i18n/angular-locale_nn-no.js index 7e1408ff..cb16b292 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nn-no.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nn-no.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH:mm:ss", "mediumDate": "d. MMM y", "mediumTime": "HH:mm:ss", - "short": "dd.MM.yy HH:mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH:mm", + "shortDate": "dd.MM.y", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nn.js b/public/app/bower_components/angular-i18n/angular-locale_nn.js index f786e739..5d25b37c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nn.js @@ -76,8 +76,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH:mm:ss", "mediumDate": "d. MMM y", "mediumTime": "HH:mm:ss", - "short": "dd.MM.yy HH:mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH:mm", + "shortDate": "dd.MM.y", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_no-no.js b/public/app/bower_components/angular-i18n/angular-locale_no-no.js index 74211791..94232f40 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_no-no.js +++ b/public/app/bower_components/angular-i18n/angular-locale_no-no.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH.mm.ss", "mediumDate": "d. MMM y", "mediumTime": "HH.mm.ss", - "short": "dd.MM.yy HH.mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH.mm", + "shortDate": "dd.MM.y", "shortTime": "HH.mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_no.js b/public/app/bower_components/angular-i18n/angular-locale_no.js index d63d8855..222d64d4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_no.js +++ b/public/app/bower_components/angular-i18n/angular-locale_no.js @@ -58,8 +58,8 @@ $provide.value("$locale", { "medium": "d. MMM y HH.mm.ss", "mediumDate": "d. MMM y", "mediumTime": "HH.mm.ss", - "short": "dd.MM.yy HH.mm", - "shortDate": "dd.MM.yy", + "short": "dd.MM.y HH.mm", + "shortDate": "dd.MM.y", "shortTime": "HH.mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nso-za.js b/public/app/bower_components/angular-i18n/angular-locale_nso-za.js index f586e09a..35e4532b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nso-za.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nso-za.js @@ -82,7 +82,7 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "R", - "DECIMAL_SEP": ",", + "DECIMAL_SEP": ".", "GROUP_SEP": "\u00a0", "PATTERNS": [ { diff --git a/public/app/bower_components/angular-i18n/angular-locale_nso.js b/public/app/bower_components/angular-i18n/angular-locale_nso.js index 399e9150..d24ff6c5 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_nso.js +++ b/public/app/bower_components/angular-i18n/angular-locale_nso.js @@ -82,7 +82,7 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "R", - "DECIMAL_SEP": ",", + "DECIMAL_SEP": ".", "GROUP_SEP": "\u00a0", "PATTERNS": [ { diff --git a/public/app/bower_components/angular-i18n/angular-locale_or-in.js b/public/app/bower_components/angular-i18n/angular-locale_or-in.js index 54b3004d..ecfbcb43 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_or-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_or-in.js @@ -18,10 +18,10 @@ $provide.value("$locale", { ], "MONTH": [ "\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40", - "\u0b2b\u0b47\u0b2c\u0b4d\u0b30\u0b41\u0b5f\u0b3e\u0b30\u0b40", + "\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40", "\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a", "\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32", - "\u0b2e\u0b47", + "\u0b2e\u0b07", "\u0b1c\u0b41\u0b28", "\u0b1c\u0b41\u0b32\u0b3e\u0b07", "\u0b05\u0b17\u0b37\u0b4d\u0b1f", @@ -41,10 +41,10 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40", - "\u0b2b\u0b47\u0b2c\u0b4d\u0b30\u0b41\u0b5f\u0b3e\u0b30\u0b40", + "\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40", "\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a", "\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32", - "\u0b2e\u0b47", + "\u0b2e\u0b07", "\u0b1c\u0b41\u0b28", "\u0b1c\u0b41\u0b32\u0b3e\u0b07", "\u0b05\u0b17\u0b37\u0b4d\u0b1f", diff --git a/public/app/bower_components/angular-i18n/angular-locale_or.js b/public/app/bower_components/angular-i18n/angular-locale_or.js index e355aa84..b53ab02c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_or.js +++ b/public/app/bower_components/angular-i18n/angular-locale_or.js @@ -18,10 +18,10 @@ $provide.value("$locale", { ], "MONTH": [ "\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40", - "\u0b2b\u0b47\u0b2c\u0b4d\u0b30\u0b41\u0b5f\u0b3e\u0b30\u0b40", + "\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40", "\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a", "\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32", - "\u0b2e\u0b47", + "\u0b2e\u0b07", "\u0b1c\u0b41\u0b28", "\u0b1c\u0b41\u0b32\u0b3e\u0b07", "\u0b05\u0b17\u0b37\u0b4d\u0b1f", @@ -41,10 +41,10 @@ $provide.value("$locale", { ], "SHORTMONTH": [ "\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40", - "\u0b2b\u0b47\u0b2c\u0b4d\u0b30\u0b41\u0b5f\u0b3e\u0b30\u0b40", + "\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40", "\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a", "\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32", - "\u0b2e\u0b47", + "\u0b2e\u0b07", "\u0b1c\u0b41\u0b28", "\u0b1c\u0b41\u0b32\u0b3e\u0b07", "\u0b05\u0b17\u0b37\u0b4d\u0b1f", diff --git a/public/app/bower_components/angular-i18n/angular-locale_pa-arab-pk.js b/public/app/bower_components/angular-i18n/angular-locale_pa-arab-pk.js index 35da6037..66f1d7ca 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pa-arab-pk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pa-arab-pk.js @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u062f\u0633\u0645\u0628\u0631" ], "SHORTDAY": [ - "\u0a10\u0a24.", - "\u0a38\u0a4b\u0a2e.", - "\u0a2e\u0a70\u0a17\u0a32.", - "\u0a2c\u0a41\u0a27.", - "\u0a35\u0a40\u0a30.", - "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30.", - "\u0a38\u0a3c\u0a28\u0a40." + "\u0627\u062a\u0648\u0627\u0631", + "\u067e\u06cc\u0631", + "\u0645\u0646\u06af\u0644", + "\u0628\u064f\u062f\u06be", + "\u062c\u0645\u0639\u0631\u0627\u062a", + "\u062c\u0645\u0639\u06c1", + "\u06c1\u0641\u062a\u06c1" ], "SHORTMONTH": [ - "\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" + "\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" ], "fullDate": "EEEE, dd MMMM y", "longDate": "d MMMM y", @@ -65,10 +65,10 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "Rs", "DECIMAL_SEP": "\u066b", - "GROUP_SEP": ",", + "GROUP_SEP": "\u066c", "PATTERNS": [ { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 3, "minFrac": 0, @@ -79,14 +79,14 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", + "negPre": "\u00a4\u00a0-", "negSuf": "", - "posPre": "\u00a4", + "posPre": "\u00a4\u00a0", "posSuf": "" } ] diff --git a/public/app/bower_components/angular-i18n/angular-locale_pa-arab.js b/public/app/bower_components/angular-i18n/angular-locale_pa-arab.js index c67d8d23..ffd6df41 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pa-arab.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pa-arab.js @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u062f\u0633\u0645\u0628\u0631" ], "SHORTDAY": [ - "\u0a10\u0a24.", - "\u0a38\u0a4b\u0a2e.", - "\u0a2e\u0a70\u0a17\u0a32.", - "\u0a2c\u0a41\u0a27.", - "\u0a35\u0a40\u0a30.", - "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30.", - "\u0a38\u0a3c\u0a28\u0a40." + "\u0627\u062a\u0648\u0627\u0631", + "\u067e\u06cc\u0631", + "\u0645\u0646\u06af\u0644", + "\u0628\u064f\u062f\u06be", + "\u062c\u0645\u0639\u0631\u0627\u062a", + "\u062c\u0645\u0639\u06c1", + "\u06c1\u0641\u062a\u06c1" ], "SHORTMONTH": [ - "\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" + "\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" ], "fullDate": "EEEE, dd MMMM y", "longDate": "d MMMM y", @@ -65,10 +65,10 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "Rs", "DECIMAL_SEP": "\u066b", - "GROUP_SEP": ",", + "GROUP_SEP": "\u066c", "PATTERNS": [ { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 3, "minFrac": 0, @@ -79,14 +79,14 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 2, + "gSize": 3, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", + "negPre": "\u00a4\u00a0-", "negSuf": "", - "posPre": "\u00a4", + "posPre": "\u00a4\u00a0", "posSuf": "" } ] diff --git a/public/app/bower_components/angular-i18n/angular-locale_pa-guru-in.js b/public/app/bower_components/angular-i18n/angular-locale_pa-guru-in.js index 467f35db..7f014b69 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pa-guru-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pa-guru-in.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "\u0a2a\u0a42.\u0a26\u0a41.", + "\u0a2c\u0a3e.\u0a26\u0a41." ], "DAY": [ "\u0a10\u0a24\u0a35\u0a3e\u0a30", "\u0a38\u0a4b\u0a2e\u0a35\u0a3e\u0a30", "\u0a2e\u0a70\u0a17\u0a32\u0a35\u0a3e\u0a30", - "\u0a2c\u0a41\u0a27\u0a35\u0a3e\u0a30", + "\u0a2c\u0a41\u0a71\u0a27\u0a35\u0a3e\u0a30", "\u0a35\u0a40\u0a30\u0a35\u0a3e\u0a30", "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30\u0a35\u0a3e\u0a30", - "\u0a38\u0a3c\u0a28\u0a40\u0a35\u0a3e\u0a30" + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30\u0a35\u0a3e\u0a30" ], "MONTH": [ "\u0a1c\u0a28\u0a35\u0a30\u0a40", @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u0a26\u0a38\u0a70\u0a2c\u0a30" ], "SHORTDAY": [ - "\u0a10\u0a24.", - "\u0a38\u0a4b\u0a2e.", - "\u0a2e\u0a70\u0a17\u0a32.", - "\u0a2c\u0a41\u0a27.", - "\u0a35\u0a40\u0a30.", - "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30.", - "\u0a38\u0a3c\u0a28\u0a40." + "\u0a10\u0a24", + "\u0a38\u0a4b\u0a2e", + "\u0a2e\u0a70\u0a17\u0a32", + "\u0a2c\u0a41\u0a71\u0a27", + "\u0a35\u0a40\u0a30", + "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30", + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30" ], "SHORTMONTH": [ - "\u0a1c\u0a28\u0a35\u0a30\u0a40", - "\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40", + "\u0a1c\u0a28", + "\u0a2b\u0a3c\u0a30", "\u0a2e\u0a3e\u0a30\u0a1a", - "\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32", + "\u0a05\u0a2a\u0a4d\u0a30\u0a48", "\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" + "\u0a1c\u0a41\u0a32\u0a3e", + "\u0a05\u0a17", + "\u0a38\u0a24\u0a70", + "\u0a05\u0a15\u0a24\u0a42", + "\u0a28\u0a35\u0a70", + "\u0a26\u0a38\u0a70" ], "fullDate": "EEEE, d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_pa-guru.js b/public/app/bower_components/angular-i18n/angular-locale_pa-guru.js index 021980f7..f15ce9d8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pa-guru.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pa-guru.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "\u0a2a\u0a42.\u0a26\u0a41.", + "\u0a2c\u0a3e.\u0a26\u0a41." ], "DAY": [ "\u0a10\u0a24\u0a35\u0a3e\u0a30", "\u0a38\u0a4b\u0a2e\u0a35\u0a3e\u0a30", "\u0a2e\u0a70\u0a17\u0a32\u0a35\u0a3e\u0a30", - "\u0a2c\u0a41\u0a27\u0a35\u0a3e\u0a30", + "\u0a2c\u0a41\u0a71\u0a27\u0a35\u0a3e\u0a30", "\u0a35\u0a40\u0a30\u0a35\u0a3e\u0a30", "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30\u0a35\u0a3e\u0a30", - "\u0a38\u0a3c\u0a28\u0a40\u0a35\u0a3e\u0a30" + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30\u0a35\u0a3e\u0a30" ], "MONTH": [ "\u0a1c\u0a28\u0a35\u0a30\u0a40", @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u0a26\u0a38\u0a70\u0a2c\u0a30" ], "SHORTDAY": [ - "\u0a10\u0a24.", - "\u0a38\u0a4b\u0a2e.", - "\u0a2e\u0a70\u0a17\u0a32.", - "\u0a2c\u0a41\u0a27.", - "\u0a35\u0a40\u0a30.", - "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30.", - "\u0a38\u0a3c\u0a28\u0a40." + "\u0a10\u0a24", + "\u0a38\u0a4b\u0a2e", + "\u0a2e\u0a70\u0a17\u0a32", + "\u0a2c\u0a41\u0a71\u0a27", + "\u0a35\u0a40\u0a30", + "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30", + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30" ], "SHORTMONTH": [ - "\u0a1c\u0a28\u0a35\u0a30\u0a40", - "\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40", + "\u0a1c\u0a28", + "\u0a2b\u0a3c\u0a30", "\u0a2e\u0a3e\u0a30\u0a1a", - "\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32", + "\u0a05\u0a2a\u0a4d\u0a30\u0a48", "\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" + "\u0a1c\u0a41\u0a32\u0a3e", + "\u0a05\u0a17", + "\u0a38\u0a24\u0a70", + "\u0a05\u0a15\u0a24\u0a42", + "\u0a28\u0a35\u0a70", + "\u0a26\u0a38\u0a70" ], "fullDate": "EEEE, d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_pa.js b/public/app/bower_components/angular-i18n/angular-locale_pa.js index 6b2a8021..61963dcf 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pa.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pa.js @@ -4,17 +4,17 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "\u0a2a\u0a42.\u0a26\u0a41.", + "\u0a2c\u0a3e.\u0a26\u0a41." ], "DAY": [ "\u0a10\u0a24\u0a35\u0a3e\u0a30", "\u0a38\u0a4b\u0a2e\u0a35\u0a3e\u0a30", "\u0a2e\u0a70\u0a17\u0a32\u0a35\u0a3e\u0a30", - "\u0a2c\u0a41\u0a27\u0a35\u0a3e\u0a30", + "\u0a2c\u0a41\u0a71\u0a27\u0a35\u0a3e\u0a30", "\u0a35\u0a40\u0a30\u0a35\u0a3e\u0a30", "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30\u0a35\u0a3e\u0a30", - "\u0a38\u0a3c\u0a28\u0a40\u0a35\u0a3e\u0a30" + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30\u0a35\u0a3e\u0a30" ], "MONTH": [ "\u0a1c\u0a28\u0a35\u0a30\u0a40", @@ -31,27 +31,27 @@ $provide.value("$locale", { "\u0a26\u0a38\u0a70\u0a2c\u0a30" ], "SHORTDAY": [ - "\u0a10\u0a24.", - "\u0a38\u0a4b\u0a2e.", - "\u0a2e\u0a70\u0a17\u0a32.", - "\u0a2c\u0a41\u0a27.", - "\u0a35\u0a40\u0a30.", - "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30.", - "\u0a38\u0a3c\u0a28\u0a40." + "\u0a10\u0a24", + "\u0a38\u0a4b\u0a2e", + "\u0a2e\u0a70\u0a17\u0a32", + "\u0a2c\u0a41\u0a71\u0a27", + "\u0a35\u0a40\u0a30", + "\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30", + "\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30" ], "SHORTMONTH": [ - "\u0a1c\u0a28\u0a35\u0a30\u0a40", - "\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40", + "\u0a1c\u0a28", + "\u0a2b\u0a3c\u0a30", "\u0a2e\u0a3e\u0a30\u0a1a", - "\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32", + "\u0a05\u0a2a\u0a4d\u0a30\u0a48", "\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" + "\u0a1c\u0a41\u0a32\u0a3e", + "\u0a05\u0a17", + "\u0a38\u0a24\u0a70", + "\u0a05\u0a15\u0a24\u0a42", + "\u0a28\u0a35\u0a70", + "\u0a26\u0a38\u0a70" ], "fullDate": "EEEE, d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-ao.js b/public/app/bower_components/angular-i18n/angular-locale_pt-ao.js index 8e8007bf..cf7dbe71 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-ao.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-ao.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "Kz", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-ao", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-br.js b/public/app/bower_components/angular-i18n/angular-locale_pt-br.js index 737c3442..1872e7a9 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-br.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-br.js @@ -1,37 +1,6 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ @@ -86,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d 'de' MMM 'de' y HH:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", @@ -123,6 +92,6 @@ $provide.value("$locale", { ] }, "id": "pt-br", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-cv.js b/public/app/bower_components/angular-i18n/angular-locale_pt-cv.js index db1452c2..45846c81 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-cv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-cv.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "CVE", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-cv", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-gw.js b/public/app/bower_components/angular-i18n/angular-locale_pt-gw.js index d9d1b519..8aee8662 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-gw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-gw.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "CFA", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-gw", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-mo.js b/public/app/bower_components/angular-i18n/angular-locale_pt-mo.js index 46e900d8..e5a1520f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-mo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-mo.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "MOP", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-mo", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-mz.js b/public/app/bower_components/angular-i18n/angular-locale_pt-mz.js index 1333b32f..524e3595 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-mz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-mz.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "MTn", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-mz", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-pt.js b/public/app/bower_components/angular-i18n/angular-locale_pt-pt.js index 3d7f998e..2ad53e6b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-pt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-pt.js @@ -1,37 +1,6 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ @@ -48,18 +17,18 @@ $provide.value("$locale", { "s\u00e1bado" ], "MONTH": [ - "Janeiro", - "Fevereiro", - "Mar\u00e7o", - "Abril", - "Maio", - "Junho", - "Julho", - "Agosto", - "Setembro", - "Outubro", - "Novembro", - "Dezembro" + "janeiro", + "fevereiro", + "mar\u00e7o", + "abril", + "maio", + "junho", + "julho", + "agosto", + "setembro", + "outubro", + "novembro", + "dezembro" ], "SHORTDAY": [ "dom", @@ -71,18 +40,18 @@ $provide.value("$locale", { "s\u00e1b" ], "SHORTMONTH": [ - "Jan", - "Fev", - "Mar", - "Abr", - "Mai", - "Jun", - "Jul", - "Ago", - "Set", - "Out", - "Nov", - "Dez" + "jan", + "fev", + "mar", + "abr", + "mai", + "jun", + "jul", + "ago", + "set", + "out", + "nov", + "dez" ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", @@ -123,6 +92,6 @@ $provide.value("$locale", { ] }, "id": "pt-pt", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-st.js b/public/app/bower_components/angular-i18n/angular-locale_pt-st.js index e1736c30..d6e02715 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-st.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-st.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "Db", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-st", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt-tl.js b/public/app/bower_components/angular-i18n/angular-locale_pt-tl.js index 92924f61..517773ee 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt-tl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt-tl.js @@ -1,42 +1,11 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "da manh\u00e3", + "da tarde" ], "DAY": [ "domingo", @@ -96,7 +65,7 @@ $provide.value("$locale", { "NUMBER_FORMATS": { "CURRENCY_SYM": "$", "DECIMAL_SEP": ",", - "GROUP_SEP": ".", + "GROUP_SEP": "\u00a0", "PATTERNS": [ { "gSize": 3, @@ -115,14 +84,14 @@ $provide.value("$locale", { "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "", - "posPre": "\u00a4", - "posSuf": "" + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" } ] }, "id": "pt-tl", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_pt.js b/public/app/bower_components/angular-i18n/angular-locale_pt.js index 8aa48b80..9fc521b8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_pt.js +++ b/public/app/bower_components/angular-i18n/angular-locale_pt.js @@ -1,37 +1,6 @@ 'use strict'; angular.module("ngLocale", [], ["$provide", function($provide) { var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; -function getDecimals(n) { - n = n + ''; - var i = n.indexOf('.'); - return (i == -1) ? 0 : n.length - i - 1; -} - -function getVF(n, opt_precision) { - var v = opt_precision; - - if (undefined === v) { - v = Math.min(getDecimals(n), 3); - } - - var base = Math.pow(10, v); - var f = ((n * base) | 0) % base; - return {v: v, f: f}; -} - -function getWT(v, f) { - if (f === 0) { - return {w: 0, t: 0}; - } - - while ((f % 10) === 0) { - f /= 10; - v--; - } - - return {w: v, t: f}; -} - $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ @@ -86,8 +55,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d 'de' MMMM 'de' y", "longDate": "d 'de' MMMM 'de' y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "medium": "d 'de' MMM 'de' y HH:mm:ss", + "mediumDate": "d 'de' MMM 'de' y", "mediumTime": "HH:mm:ss", "short": "dd/MM/yy HH:mm", "shortDate": "dd/MM/yy", @@ -123,6 +92,6 @@ $provide.value("$locale", { ] }, "id": "pt", - "pluralCat": function(n, opt_precision) { var i = n | 0; var vf = getVF(n, opt_precision); var wt = getWT(vf.v, vf.f); if (i == 1 && vf.v == 0 || i == 0 && wt.t == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} + "pluralCat": function(n, opt_precision) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} }); }]); diff --git a/public/app/bower_components/angular-i18n/angular-locale_qu-bo.js b/public/app/bower_components/angular-i18n/angular-locale_qu-bo.js new file mode 100644 index 00000000..e394c4bc --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_qu-bo.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "a.m.", + "p.m." + ], + "DAY": [ + "Domingo", + "Lunes", + "Martes", + "Mi\u00e9rcoles", + "Jueves", + "Viernes", + "S\u00e1bado" + ], + "MONTH": [ + "Qulla puquy", + "Hatun puquy", + "Pauqar waray", + "Ayriwa", + "Aymuray", + "Inti raymi", + "Anta Sitwa", + "Qhapaq Sitwa", + "Uma raymi", + "Kantaray", + "Ayamarq\u02bca", + "Kapaq Raymi" + ], + "SHORTDAY": [ + "Dom", + "Lun", + "Mar", + "Mi\u00e9", + "Jue", + "Vie", + "Sab" + ], + "SHORTMONTH": [ + "Qul", + "Hat", + "Pau", + "Ayr", + "Aym", + "Int", + "Ant", + "Qha", + "Uma", + "Kan", + "Aya", + "Kap" + ], + "fullDate": "EEEE, d MMMM, y", + "longDate": "y MMMM d", + "medium": "y MMM d hh:mm:ss a", + "mediumDate": "y MMM d", + "mediumTime": "hh:mm:ss a", + "short": "dd/MM/y hh:mm a", + "shortDate": "dd/MM/y", + "shortTime": "hh:mm a" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "Bs", + "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\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_qu-ec.js b/public/app/bower_components/angular-i18n/angular-locale_qu-ec.js new file mode 100644 index 00000000..afb3073e --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_qu-ec.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "a.m.", + "p.m." + ], + "DAY": [ + "Domingo", + "Lunes", + "Martes", + "Mi\u00e9rcoles", + "Jueves", + "Viernes", + "S\u00e1bado" + ], + "MONTH": [ + "Qulla puquy", + "Hatun puquy", + "Pauqar waray", + "Ayriwa", + "Aymuray", + "Inti raymi", + "Anta Sitwa", + "Qhapaq Sitwa", + "Uma raymi", + "Kantaray", + "Ayamarq\u02bca", + "Kapaq Raymi" + ], + "SHORTDAY": [ + "Dom", + "Lun", + "Mar", + "Mi\u00e9", + "Jue", + "Vie", + "Sab" + ], + "SHORTMONTH": [ + "Qul", + "Hat", + "Pau", + "Ayr", + "Aym", + "Int", + "Ant", + "Qha", + "Uma", + "Kan", + "Aya", + "Kap" + ], + "fullDate": "EEEE, d MMMM, y", + "longDate": "y MMMM d", + "medium": "y MMM d hh:mm:ss a", + "mediumDate": "y MMM d", + "mediumTime": "hh:mm:ss a", + "short": "dd/MM/y hh:mm a", + "shortDate": "dd/MM/y", + "shortTime": "hh: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\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_qu-pe.js b/public/app/bower_components/angular-i18n/angular-locale_qu-pe.js new file mode 100644 index 00000000..c8c11d35 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_qu-pe.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "a.m.", + "p.m." + ], + "DAY": [ + "Domingo", + "Lunes", + "Martes", + "Mi\u00e9rcoles", + "Jueves", + "Viernes", + "S\u00e1bado" + ], + "MONTH": [ + "Qulla puquy", + "Hatun puquy", + "Pauqar waray", + "Ayriwa", + "Aymuray", + "Inti raymi", + "Anta Sitwa", + "Qhapaq Sitwa", + "Uma raymi", + "Kantaray", + "Ayamarq\u02bca", + "Kapaq Raymi" + ], + "SHORTDAY": [ + "Dom", + "Lun", + "Mar", + "Mi\u00e9", + "Jue", + "Vie", + "Sab" + ], + "SHORTMONTH": [ + "Qul", + "Hat", + "Pau", + "Ayr", + "Aym", + "Int", + "Ant", + "Qha", + "Uma", + "Kan", + "Aya", + "Kap" + ], + "fullDate": "EEEE, d MMMM, y", + "longDate": "y MMMM d", + "medium": "y MMM d hh:mm:ss a", + "mediumDate": "y MMM d", + "mediumTime": "hh:mm:ss a", + "short": "dd/MM/y hh:mm a", + "shortDate": "dd/MM/y", + "shortTime": "hh:mm a" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "S/.", + "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\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_qu.js b/public/app/bower_components/angular-i18n/angular-locale_qu.js new file mode 100644 index 00000000..53166755 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_qu.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "a.m.", + "p.m." + ], + "DAY": [ + "Domingo", + "Lunes", + "Martes", + "Mi\u00e9rcoles", + "Jueves", + "Viernes", + "S\u00e1bado" + ], + "MONTH": [ + "Qulla puquy", + "Hatun puquy", + "Pauqar waray", + "Ayriwa", + "Aymuray", + "Inti raymi", + "Anta Sitwa", + "Qhapaq Sitwa", + "Uma raymi", + "Kantaray", + "Ayamarq\u02bca", + "Kapaq Raymi" + ], + "SHORTDAY": [ + "Dom", + "Lun", + "Mar", + "Mi\u00e9", + "Jue", + "Vie", + "Sab" + ], + "SHORTMONTH": [ + "Qul", + "Hat", + "Pau", + "Ayr", + "Aym", + "Int", + "Ant", + "Qha", + "Uma", + "Kan", + "Aya", + "Kap" + ], + "fullDate": "EEEE, d MMMM, y", + "longDate": "y MMMM d", + "medium": "y MMM d hh:mm:ss a", + "mediumDate": "y MMM d", + "mediumTime": "hh:mm:ss a", + "short": "dd/MM/y hh:mm a", + "shortDate": "dd/MM/y", + "shortTime": "hh:mm a" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "S/.", + "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\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_rn-bi.js b/public/app/bower_components/angular-i18n/angular-locale_rn-bi.js index f3c629b2..31d822fb 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_rn-bi.js +++ b/public/app/bower_components/angular-i18n/angular-locale_rn-bi.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "Z.MW." ], "DAY": [ - "Ku w'indwi", + "Ku w\u2019indwi", "Ku wa mbere", "Ku wa kabiri", "Ku wa gatatu", diff --git a/public/app/bower_components/angular-i18n/angular-locale_rn.js b/public/app/bower_components/angular-i18n/angular-locale_rn.js index 703f3813..2d7ac5e9 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_rn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_rn.js @@ -26,7 +26,7 @@ $provide.value("$locale", { "Z.MW." ], "DAY": [ - "Ku w'indwi", + "Ku w\u2019indwi", "Ku wa mbere", "Ku wa kabiri", "Ku wa gatatu", diff --git a/public/app/bower_components/angular-i18n/angular-locale_rof-tz.js b/public/app/bower_components/angular-i18n/angular-locale_rof-tz.js index 9eb177c8..b2d5c1ce 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_rof-tz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_rof-tz.js @@ -22,7 +22,7 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "kang'ama", + "kang\u2019ama", "kingoto" ], "DAY": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_rof.js b/public/app/bower_components/angular-i18n/angular-locale_rof.js index 9db1b0ce..21114d5e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_rof.js +++ b/public/app/bower_components/angular-i18n/angular-locale_rof.js @@ -22,7 +22,7 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "kang'ama", + "kang\u2019ama", "kingoto" ], "DAY": [ diff --git a/public/app/bower_components/angular-i18n/angular-locale_saq-ke.js b/public/app/bower_components/angular-i18n/angular-locale_saq-ke.js index 1152411b..7b8fb714 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_saq-ke.js +++ b/public/app/bower_components/angular-i18n/angular-locale_saq-ke.js @@ -28,7 +28,7 @@ $provide.value("$locale", { "DAY": [ "Mderot ee are", "Mderot ee kuni", - "Mderot ee ong'wan", + "Mderot ee ong\u2019wan", "Mderot ee inet", "Mderot ee ile", "Mderot ee sapa", @@ -38,7 +38,7 @@ $provide.value("$locale", { "Lapa le obo", "Lapa le waare", "Lapa le okuni", - "Lapa le ong'wan", + "Lapa le ong\u2019wan", "Lapa le imet", "Lapa le ile", "Lapa le sapa", diff --git a/public/app/bower_components/angular-i18n/angular-locale_saq.js b/public/app/bower_components/angular-i18n/angular-locale_saq.js index dd789f2e..7556ece6 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_saq.js +++ b/public/app/bower_components/angular-i18n/angular-locale_saq.js @@ -28,7 +28,7 @@ $provide.value("$locale", { "DAY": [ "Mderot ee are", "Mderot ee kuni", - "Mderot ee ong'wan", + "Mderot ee ong\u2019wan", "Mderot ee inet", "Mderot ee ile", "Mderot ee sapa", @@ -38,7 +38,7 @@ $provide.value("$locale", { "Lapa le obo", "Lapa le waare", "Lapa le okuni", - "Lapa le ong'wan", + "Lapa le ong\u2019wan", "Lapa le imet", "Lapa le ile", "Lapa le sapa", diff --git a/public/app/bower_components/angular-i18n/angular-locale_se-se.js b/public/app/bower_components/angular-i18n/angular-locale_se-se.js new file mode 100644 index 00000000..1a5192e8 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_se-se.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "i\u0111itbeaivet", + "eahketbeaivet" + ], + "DAY": [ + "sotnabeaivi", + "vuoss\u00e1rga", + "ma\u014b\u014beb\u00e1rga", + "gaskavahkku", + "duorasdat", + "bearjadat", + "l\u00e1vvardat" + ], + "MONTH": [ + "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" + ], + "SHORTDAY": [ + "sotn", + "vuos", + "ma\u014b", + "gask", + "duor", + "bear", + "l\u00e1v" + ], + "SHORTMONTH": [ + "o\u0111\u0111j", + "guov", + "njuk", + "cuo", + "mies", + "geas", + "suoi", + "borg", + "\u010dak\u010d", + "golg", + "sk\u00e1b", + "juov" + ], + "fullDate": "y MMMM d, EEEE", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", + "mediumTime": "HH:mm:ss", + "short": "y-MM-dd HH:mm", + "shortDate": "y-MM-dd", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "kr", + "DECIMAL_SEP": ",", + "GROUP_SEP": "\u00a0", + "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": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_sk-sk.js b/public/app/bower_components/angular-i18n/angular-locale_sk-sk.js index 3aff3537..d5a561f4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sk-sk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sk-sk.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "dopoludnia", + "odpoludnia" ], "DAY": [ "nede\u013ea", @@ -73,11 +73,11 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d. MMMM y", "longDate": "d. MMMM y", - "medium": "d.M.y H:mm:ss", - "mediumDate": "d.M.y", + "medium": "d. M. y H:mm:ss", + "mediumDate": "d. M. y", "mediumTime": "H:mm:ss", - "short": "d.M.y H:mm", - "shortDate": "d.M.y", + "short": "dd.MM.yy H:mm", + "shortDate": "dd.MM.yy", "shortTime": "H:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_sk.js b/public/app/bower_components/angular-i18n/angular-locale_sk.js index 914cec1b..3e8fcea8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sk.js @@ -22,8 +22,8 @@ function getVF(n, opt_precision) { $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "dopoludnia", + "odpoludnia" ], "DAY": [ "nede\u013ea", @@ -73,11 +73,11 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d. MMMM y", "longDate": "d. MMMM y", - "medium": "d.M.y H:mm:ss", - "mediumDate": "d.M.y", + "medium": "d. M. y H:mm:ss", + "mediumDate": "d. M. y", "mediumTime": "H:mm:ss", - "short": "d.M.y H:mm", - "shortDate": "d.M.y", + "short": "dd.MM.yy H:mm", + "shortDate": "dd.MM.yy", "shortTime": "H:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_smn-fi.js b/public/app/bower_components/angular-i18n/angular-locale_smn-fi.js new file mode 100644 index 00000000..ad729bfd --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_smn-fi.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "pasepeeivi", + "vuossaarg\u00e2", + "majebaarg\u00e2", + "koskoho", + "tuor\u00e2stuv", + "v\u00e1stuppeeivi", + "l\u00e1vurduv" + ], + "MONTH": [ + "M01", + "M02", + "M03", + "M04", + "M05", + "M06", + "M07", + "M08", + "M09", + "M10", + "M11", + "M12" + ], + "SHORTDAY": [ + "pa", + "vu", + "ma", + "ko", + "tu", + "v\u00e1", + "l\u00e1" + ], + "SHORTMONTH": [ + "M01", + "M02", + "M03", + "M04", + "M05", + "M06", + "M07", + "M08", + "M09", + "M10", + "M11", + "M12" + ], + "fullDate": "y MMMM d, EEEE", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", + "mediumTime": "HH:mm:ss", + "short": "y-MM-dd HH:mm", + "shortDate": "y-MM-dd", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "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\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_smn.js b/public/app/bower_components/angular-i18n/angular-locale_smn.js new file mode 100644 index 00000000..4c5a8b6a --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_smn.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "pasepeeivi", + "vuossaarg\u00e2", + "majebaarg\u00e2", + "koskoho", + "tuor\u00e2stuv", + "v\u00e1stuppeeivi", + "l\u00e1vurduv" + ], + "MONTH": [ + "M01", + "M02", + "M03", + "M04", + "M05", + "M06", + "M07", + "M08", + "M09", + "M10", + "M11", + "M12" + ], + "SHORTDAY": [ + "pa", + "vu", + "ma", + "ko", + "tu", + "v\u00e1", + "l\u00e1" + ], + "SHORTMONTH": [ + "M01", + "M02", + "M03", + "M04", + "M05", + "M06", + "M07", + "M08", + "M09", + "M10", + "M11", + "M12" + ], + "fullDate": "y MMMM d, EEEE", + "longDate": "y MMMM d", + "medium": "y MMM d HH:mm:ss", + "mediumDate": "y MMM d", + "mediumTime": "HH:mm:ss", + "short": "y-MM-dd HH:mm", + "shortDate": "y-MM-dd", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "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\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_sq-al.js b/public/app/bower_components/angular-i18n/angular-locale_sq-al.js index 80a9aa86..bf9f9269 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sq-al.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sq-al.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "N\u00ebn", "Dhj" ], - "fullDate": "EEEE, dd MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.yy HH:mm", + "shortDate": "d.M.yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_sq-mk.js b/public/app/bower_components/angular-i18n/angular-locale_sq-mk.js index cbb35081..c7fcbf9a 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sq-mk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sq-mk.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "N\u00ebn", "Dhj" ], - "fullDate": "EEEE, dd MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.yy HH:mm", + "shortDate": "d.M.yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_sq-xk.js b/public/app/bower_components/angular-i18n/angular-locale_sq-xk.js index 94c225a8..8ffa642b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sq-xk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sq-xk.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "N\u00ebn", "Dhj" ], - "fullDate": "EEEE, dd MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.yy HH:mm", + "shortDate": "d.M.yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_sq.js b/public/app/bower_components/angular-i18n/angular-locale_sq.js index 6b2289d9..6b458cd4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sq.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sq.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "N\u00ebn", "Dhj" ], - "fullDate": "EEEE, dd MMMM y", - "longDate": "dd MMMM y", - "medium": "dd/MM/y HH:mm:ss", - "mediumDate": "dd/MM/y", + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", - "short": "dd/MM/yy HH:mm", - "shortDate": "dd/MM/yy", + "short": "d.M.yy HH:mm", + "shortDate": "d.M.yy", "shortTime": "HH:mm" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-ba.js b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-ba.js index 5e4b3839..d9f3e6b9 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-ba.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-ba.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-me.js b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-me.js index 1aa82b41..dcdf4610 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-me.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-me.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-rs.js b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-rs.js index eea3ce78..72437869 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-rs.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-rs.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-xk.js b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-xk.js index 4ac313b4..c05b1d27 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-xk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl-xk.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl.js b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl.js index da4598bb..c20e3cdb 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-cyrl.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-ba.js b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-ba.js index 187875c4..81c67a55 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-ba.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-ba.js @@ -23,13 +23,13 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "pre podne", - "popodne" + "po podne" ], "DAY": [ "nedelja", "ponedeljak", "utorak", - "sreda", + "srijeda", "\u010detvrtak", "petak", "subota" @@ -40,8 +40,8 @@ $provide.value("$locale", { "mart", "april", "maj", - "jun", - "jul", + "juni", + "juli", "avgust", "septembar", "oktobar", @@ -52,7 +52,7 @@ $provide.value("$locale", { "ned", "pon", "uto", - "sre", + "sri", "\u010det", "pet", "sub" @@ -73,12 +73,12 @@ $provide.value("$locale", { ], "fullDate": "EEEE, dd. MMMM y.", "longDate": "dd. MMMM y.", - "medium": "dd.MM.y. HH.mm.ss", - "mediumDate": "dd.MM.y.", - "mediumTime": "HH.mm.ss", - "short": "d.M.yy. HH.mm", - "shortDate": "d.M.yy.", - "shortTime": "HH.mm" + "medium": "y-MM-dd HH:mm:ss", + "mediumDate": "y-MM-dd", + "mediumTime": "HH:mm:ss", + "short": "yy-MM-dd HH:mm", + "shortDate": "yy-MM-dd", + "shortTime": "HH:mm" }, "NUMBER_FORMATS": { "CURRENCY_SYM": "KM", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-me.js b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-me.js index ee687b5e..ab5e884f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-me.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-me.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "pre podne", - "popodne" + "po podne" ], "DAY": [ "nedelja", @@ -72,7 +72,7 @@ $provide.value("$locale", { "dec" ], "fullDate": "EEEE, dd. MMMM y.", - "longDate": "d.MM.y.", + "longDate": "dd. MMMM y.", "medium": "dd.MM.y. HH.mm.ss", "mediumDate": "dd.MM.y.", "mediumTime": "HH.mm.ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-rs.js b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-rs.js index c43501a8..578782f1 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-rs.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-rs.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "pre podne", - "popodne" + "po podne" ], "DAY": [ "nedelja", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-xk.js b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-xk.js index 1815c87a..ca7ae8e4 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-latn-xk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-latn-xk.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "pre podne", - "popodne" + "po podne" ], "DAY": [ "nedelja", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr-latn.js b/public/app/bower_components/angular-i18n/angular-locale_sr-latn.js index affadb13..8de1f715 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr-latn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr-latn.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "pre podne", - "popodne" + "po podne" ], "DAY": [ "nedelja", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sr.js b/public/app/bower_components/angular-i18n/angular-locale_sr.js index b68a366c..6e4f5e5f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sr.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sr.js @@ -23,7 +23,7 @@ $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ "\u043f\u0440\u0435 \u043f\u043e\u0434\u043d\u0435", - "\u043f\u043e\u043f\u043e\u0434\u043d\u0435" + "\u043f\u043e \u043f\u043e\u0434\u043d\u0435" ], "DAY": [ "\u043d\u0435\u0434\u0435\u0459\u0430", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sv-ax.js b/public/app/bower_components/angular-i18n/angular-locale_sv-ax.js index 26eeb5e4..1296a304 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sv-ax.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sv-ax.js @@ -58,18 +58,18 @@ $provide.value("$locale", { "l\u00f6r" ], "SHORTMONTH": [ - "jan", - "feb", - "mar", - "apr", + "jan.", + "feb.", + "mars", + "apr.", "maj", - "jun", - "jul", - "aug", - "sep", - "okt", - "nov", - "dec" + "juni", + "juli", + "aug.", + "sep.", + "okt.", + "nov.", + "dec." ], "fullDate": "EEEE d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sv-fi.js b/public/app/bower_components/angular-i18n/angular-locale_sv-fi.js index a21ca31b..7ccf4d6d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sv-fi.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sv-fi.js @@ -58,18 +58,18 @@ $provide.value("$locale", { "l\u00f6r" ], "SHORTMONTH": [ - "jan", - "feb", - "mar", - "apr", + "jan.", + "feb.", + "mars", + "apr.", "maj", - "jun", - "jul", - "aug", - "sep", - "okt", - "nov", - "dec" + "juni", + "juli", + "aug.", + "sep.", + "okt.", + "nov.", + "dec." ], "fullDate": "EEEE'en' 'den' d:'e' MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sv-se.js b/public/app/bower_components/angular-i18n/angular-locale_sv-se.js index 7cc24fb9..52ef0d52 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sv-se.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sv-se.js @@ -58,18 +58,18 @@ $provide.value("$locale", { "l\u00f6r" ], "SHORTMONTH": [ - "jan", - "feb", - "mar", - "apr", + "jan.", + "feb.", + "mars", + "apr.", "maj", - "jun", - "jul", - "aug", - "sep", - "okt", - "nov", - "dec" + "juni", + "juli", + "aug.", + "sep.", + "okt.", + "nov.", + "dec." ], "fullDate": "EEEE d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_sv.js b/public/app/bower_components/angular-i18n/angular-locale_sv.js index f49263c8..2943207f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_sv.js +++ b/public/app/bower_components/angular-i18n/angular-locale_sv.js @@ -58,18 +58,18 @@ $provide.value("$locale", { "l\u00f6r" ], "SHORTMONTH": [ - "jan", - "feb", - "mar", - "apr", + "jan.", + "feb.", + "mars", + "apr.", "maj", - "jun", - "jul", - "aug", - "sep", - "okt", - "nov", - "dec" + "juni", + "juli", + "aug.", + "sep.", + "okt.", + "nov.", + "dec." ], "fullDate": "EEEE d MMMM y", "longDate": "d MMMM y", diff --git a/public/app/bower_components/angular-i18n/angular-locale_te-in.js b/public/app/bower_components/angular-i18n/angular-locale_te-in.js index e730e9cd..eedaa20d 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_te-in.js +++ b/public/app/bower_components/angular-i18n/angular-locale_te-in.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "[AM]", + "[PM]" ], "DAY": [ "\u0c06\u0c26\u0c3f\u0c35\u0c3e\u0c30\u0c02", @@ -20,7 +20,7 @@ $provide.value("$locale", { "\u0c1c\u0c28\u0c35\u0c30\u0c3f", "\u0c2b\u0c3f\u0c2c\u0c4d\u0c30\u0c35\u0c30\u0c3f", "\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f", - "\u0c0e\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d", + "\u0c0f\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d", "\u0c2e\u0c47", "\u0c1c\u0c42\u0c28\u0c4d", "\u0c1c\u0c41\u0c32\u0c48", @@ -53,10 +53,10 @@ $provide.value("$locale", { "\u0c28\u0c35\u0c02", "\u0c21\u0c3f\u0c38\u0c46\u0c02" ], - "fullDate": "d MMMM y EEEE", - "longDate": "d MMMM y", - "medium": "d MMM y h:mm:ss a", - "mediumDate": "d MMM y", + "fullDate": "d, MMMM y, EEEE", + "longDate": "d MMMM, y", + "medium": "d MMM, y h:mm:ss a", + "mediumDate": "d MMM, y", "mediumTime": "h:mm:ss a", "short": "dd-MM-yy h:mm a", "shortDate": "dd-MM-yy", @@ -68,7 +68,7 @@ $provide.value("$locale", { "GROUP_SEP": ",", "PATTERNS": [ { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 3, "minFrac": 0, @@ -79,7 +79,7 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 2, "minFrac": 2, diff --git a/public/app/bower_components/angular-i18n/angular-locale_te.js b/public/app/bower_components/angular-i18n/angular-locale_te.js index 33ae47e7..5eb8ffd0 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_te.js +++ b/public/app/bower_components/angular-i18n/angular-locale_te.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "[AM]", + "[PM]" ], "DAY": [ "\u0c06\u0c26\u0c3f\u0c35\u0c3e\u0c30\u0c02", @@ -20,7 +20,7 @@ $provide.value("$locale", { "\u0c1c\u0c28\u0c35\u0c30\u0c3f", "\u0c2b\u0c3f\u0c2c\u0c4d\u0c30\u0c35\u0c30\u0c3f", "\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f", - "\u0c0e\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d", + "\u0c0f\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d", "\u0c2e\u0c47", "\u0c1c\u0c42\u0c28\u0c4d", "\u0c1c\u0c41\u0c32\u0c48", @@ -53,10 +53,10 @@ $provide.value("$locale", { "\u0c28\u0c35\u0c02", "\u0c21\u0c3f\u0c38\u0c46\u0c02" ], - "fullDate": "d MMMM y EEEE", - "longDate": "d MMMM y", - "medium": "d MMM y h:mm:ss a", - "mediumDate": "d MMM y", + "fullDate": "d, MMMM y, EEEE", + "longDate": "d MMMM, y", + "medium": "d MMM, y h:mm:ss a", + "mediumDate": "d MMM, y", "mediumTime": "h:mm:ss a", "short": "dd-MM-yy h:mm a", "shortDate": "dd-MM-yy", @@ -68,7 +68,7 @@ $provide.value("$locale", { "GROUP_SEP": ",", "PATTERNS": [ { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 3, "minFrac": 0, @@ -79,7 +79,7 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 2, "minFrac": 2, diff --git a/public/app/bower_components/angular-i18n/angular-locale_teo-ke.js b/public/app/bower_components/angular-i18n/angular-locale_teo-ke.js index 4dd4a5c4..155d0080 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_teo-ke.js +++ b/public/app/bower_components/angular-i18n/angular-locale_teo-ke.js @@ -30,17 +30,17 @@ $provide.value("$locale", { "Nakaebarasa", "Nakaare", "Nakauni", - "Nakaung'on", + "Nakaung\u2019on", "Nakakany", "Nakasabiti" ], "MONTH": [ "Orara", "Omuk", - "Okwamg'", - "Odung'el", + "Okwamg\u2019", + "Odung\u2019el", "Omaruk", - "Omodok'king'ol", + "Omodok\u2019king\u2019ol", "Ojola", "Opedel", "Osokosokoma", diff --git a/public/app/bower_components/angular-i18n/angular-locale_teo-ug.js b/public/app/bower_components/angular-i18n/angular-locale_teo-ug.js index b8ddd48d..665601eb 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_teo-ug.js +++ b/public/app/bower_components/angular-i18n/angular-locale_teo-ug.js @@ -30,17 +30,17 @@ $provide.value("$locale", { "Nakaebarasa", "Nakaare", "Nakauni", - "Nakaung'on", + "Nakaung\u2019on", "Nakakany", "Nakasabiti" ], "MONTH": [ "Orara", "Omuk", - "Okwamg'", - "Odung'el", + "Okwamg\u2019", + "Odung\u2019el", "Omaruk", - "Omodok'king'ol", + "Omodok\u2019king\u2019ol", "Ojola", "Opedel", "Osokosokoma", diff --git a/public/app/bower_components/angular-i18n/angular-locale_teo.js b/public/app/bower_components/angular-i18n/angular-locale_teo.js index b3c5c997..9ebbf245 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_teo.js +++ b/public/app/bower_components/angular-i18n/angular-locale_teo.js @@ -30,17 +30,17 @@ $provide.value("$locale", { "Nakaebarasa", "Nakaare", "Nakauni", - "Nakaung'on", + "Nakaung\u2019on", "Nakakany", "Nakasabiti" ], "MONTH": [ "Orara", "Omuk", - "Okwamg'", - "Odung'el", + "Okwamg\u2019", + "Odung\u2019el", "Omaruk", - "Omodok'king'ol", + "Omodok\u2019king\u2019ol", "Ojola", "Opedel", "Osokosokoma", diff --git a/public/app/bower_components/angular-i18n/angular-locale_th-th.js b/public/app/bower_components/angular-i18n/angular-locale_th-th.js index 3df817a4..7ff104e3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_th-th.js +++ b/public/app/bower_components/angular-i18n/angular-locale_th-th.js @@ -54,7 +54,7 @@ $provide.value("$locale", { "\u0e18.\u0e04." ], "fullDate": "EEEE\u0e17\u0e35\u0e48 d MMMM G y", - "longDate": "d MMMM y", + "longDate": "d MMMM G y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_th.js b/public/app/bower_components/angular-i18n/angular-locale_th.js index 34acd0a9..aa9e4f5e 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_th.js +++ b/public/app/bower_components/angular-i18n/angular-locale_th.js @@ -54,7 +54,7 @@ $provide.value("$locale", { "\u0e18.\u0e04." ], "fullDate": "EEEE\u0e17\u0e35\u0e48 d MMMM G y", - "longDate": "d MMMM y", + "longDate": "d MMMM G y", "medium": "d MMM y HH:mm:ss", "mediumDate": "d MMM y", "mediumTime": "HH:mm:ss", diff --git a/public/app/bower_components/angular-i18n/angular-locale_tn-bw.js b/public/app/bower_components/angular-i18n/angular-locale_tn-bw.js index e14e794b..1146f725 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_tn-bw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_tn-bw.js @@ -82,7 +82,7 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "P", - "DECIMAL_SEP": ",", + "DECIMAL_SEP": ".", "GROUP_SEP": "\u00a0", "PATTERNS": [ { diff --git a/public/app/bower_components/angular-i18n/angular-locale_tn-za.js b/public/app/bower_components/angular-i18n/angular-locale_tn-za.js index 5fdeefd4..01b931ba 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_tn-za.js +++ b/public/app/bower_components/angular-i18n/angular-locale_tn-za.js @@ -82,7 +82,7 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "R", - "DECIMAL_SEP": ",", + "DECIMAL_SEP": ".", "GROUP_SEP": "\u00a0", "PATTERNS": [ { diff --git a/public/app/bower_components/angular-i18n/angular-locale_tn.js b/public/app/bower_components/angular-i18n/angular-locale_tn.js index b6c8c761..6b6161d3 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_tn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_tn.js @@ -82,7 +82,7 @@ $provide.value("$locale", { }, "NUMBER_FORMATS": { "CURRENCY_SYM": "R", - "DECIMAL_SEP": ",", + "DECIMAL_SEP": ".", "GROUP_SEP": "\u00a0", "PATTERNS": [ { diff --git a/public/app/bower_components/angular-i18n/angular-locale_ts-za.js b/public/app/bower_components/angular-i18n/angular-locale_ts-za.js index cafec73b..403e9540 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ts-za.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ts-za.js @@ -46,7 +46,7 @@ $provide.value("$locale", { "Ndzhati", "Nhlangula", "Hukuri", - "N'wendzamhala" + "N\u2019wendzamhala" ], "SHORTDAY": [ "Son", @@ -69,7 +69,7 @@ $provide.value("$locale", { "Ndz", "Nhl", "Huk", - "N'w" + "N\u2019w" ], "fullDate": "y MMMM d, EEEE", "longDate": "y MMMM d", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ts.js b/public/app/bower_components/angular-i18n/angular-locale_ts.js index 38bb944f..8f3004d7 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ts.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ts.js @@ -46,7 +46,7 @@ $provide.value("$locale", { "Ndzhati", "Nhlangula", "Hukuri", - "N'wendzamhala" + "N\u2019wendzamhala" ], "SHORTDAY": [ "Son", @@ -69,7 +69,7 @@ $provide.value("$locale", { "Ndz", "Nhl", "Huk", - "N'w" + "N\u2019w" ], "fullDate": "y MMMM d, EEEE", "longDate": "y MMMM d", diff --git a/public/app/bower_components/angular-i18n/angular-locale_uk-ua.js b/public/app/bower_components/angular-i18n/angular-locale_uk-ua.js index a75ae089..8e7d535b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_uk-ua.js +++ b/public/app/bower_components/angular-i18n/angular-locale_uk-ua.js @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM y '\u0440'.", "longDate": "d MMMM y '\u0440'.", - "medium": "d MMM y HH:mm:ss", - "mediumDate": "d MMM y", + "medium": "d MMM y '\u0440'. HH:mm:ss", + "mediumDate": "d MMM y '\u0440'.", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_uk.js b/public/app/bower_components/angular-i18n/angular-locale_uk.js index f8f9b55a..28d5496f 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_uk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_uk.js @@ -73,8 +73,8 @@ $provide.value("$locale", { ], "fullDate": "EEEE, d MMMM y '\u0440'.", "longDate": "d MMMM y '\u0440'.", - "medium": "d MMM y HH:mm:ss", - "mediumDate": "d MMM y", + "medium": "d MMM y '\u0440'. HH:mm:ss", + "mediumDate": "d MMM y '\u0440'.", "mediumTime": "HH:mm:ss", "short": "dd.MM.yy HH:mm", "shortDate": "dd.MM.yy", diff --git a/public/app/bower_components/angular-i18n/angular-locale_ur-pk.js b/public/app/bower_components/angular-i18n/angular-locale_ur-pk.js index 3bdebc5a..cd5fe199 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ur-pk.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ur-pk.js @@ -97,15 +97,15 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "\u200e", - "posPre": "\u00a4", - "posSuf": "\u200e" + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_ur.js b/public/app/bower_components/angular-i18n/angular-locale_ur.js index 17039157..f578c953 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_ur.js +++ b/public/app/bower_components/angular-i18n/angular-locale_ur.js @@ -97,15 +97,15 @@ $provide.value("$locale", { "posSuf": "" }, { - "gSize": 3, + "gSize": 2, "lgSize": 3, "maxFrac": 2, "minFrac": 2, "minInt": 1, - "negPre": "\u00a4-", - "negSuf": "\u200e", - "posPre": "\u00a4", - "posSuf": "\u200e" + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" } ] }, diff --git a/public/app/bower_components/angular-i18n/angular-locale_uz-latn-uz.js b/public/app/bower_components/angular-i18n/angular-locale_uz-latn-uz.js index b71c7cd0..28fef942 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_uz-latn-uz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_uz-latn-uz.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "TO", + "TK" ], "DAY": [ "yakshanba", @@ -25,8 +25,8 @@ $provide.value("$locale", { "Iyun", "Iyul", "Avgust", - "Sentyabr", - "Oktyabr", + "Sentabr", + "Oktabr", "Noyabr", "Dekabr" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_uz-latn.js b/public/app/bower_components/angular-i18n/angular-locale_uz-latn.js index 43572cbf..bc73e92b 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_uz-latn.js +++ b/public/app/bower_components/angular-i18n/angular-locale_uz-latn.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "TO", + "TK" ], "DAY": [ "yakshanba", @@ -25,8 +25,8 @@ $provide.value("$locale", { "Iyun", "Iyul", "Avgust", - "Sentyabr", - "Oktyabr", + "Sentabr", + "Oktabr", "Noyabr", "Dekabr" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_uz.js b/public/app/bower_components/angular-i18n/angular-locale_uz.js index c2bd79d8..2e57664c 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_uz.js +++ b/public/app/bower_components/angular-i18n/angular-locale_uz.js @@ -4,8 +4,8 @@ var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: " $provide.value("$locale", { "DATETIME_FORMATS": { "AMPMS": [ - "AM", - "PM" + "TO", + "TK" ], "DAY": [ "yakshanba", @@ -25,8 +25,8 @@ $provide.value("$locale", { "Iyun", "Iyul", "Avgust", - "Sentyabr", - "Oktyabr", + "Sentabr", + "Oktabr", "Noyabr", "Dekabr" ], diff --git a/public/app/bower_components/angular-i18n/angular-locale_yi-001.js b/public/app/bower_components/angular-i18n/angular-locale_yi-001.js new file mode 100644 index 00000000..22e8df73 --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_yi-001.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "\u05e4\u05d0\u05e8\u05de\u05d9\u05d8\u05d0\u05d2", + "\u05e0\u05d0\u05db\u05de\u05d9\u05d8\u05d0\u05d2" + ], + "DAY": [ + "\u05d6\u05d5\u05e0\u05d8\u05d9\u05e7", + "\u05de\u05d0\u05b8\u05e0\u05d8\u05d9\u05e7", + "\u05d3\u05d9\u05e0\u05e1\u05d8\u05d9\u05e7", + "\u05de\u05d9\u05d8\u05d5\u05d5\u05d0\u05da", + "\u05d3\u05d0\u05e0\u05e2\u05e8\u05e9\u05d8\u05d9\u05e7", + "\u05e4\u05bf\u05e8\u05f2\u05b7\u05d8\u05d9\u05e7", + "\u05e9\u05d1\u05ea" + ], + "MONTH": [ + "\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" + ], + "SHORTDAY": [ + "\u05d6\u05d5\u05e0\u05d8\u05d9\u05e7", + "\u05de\u05d0\u05b8\u05e0\u05d8\u05d9\u05e7", + "\u05d3\u05d9\u05e0\u05e1\u05d8\u05d9\u05e7", + "\u05de\u05d9\u05d8\u05d5\u05d5\u05d0\u05da", + "\u05d3\u05d0\u05e0\u05e2\u05e8\u05e9\u05d8\u05d9\u05e7", + "\u05e4\u05bf\u05e8\u05f2\u05b7\u05d8\u05d9\u05e7", + "\u05e9\u05d1\u05ea" + ], + "SHORTMONTH": [ + "\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" + ], + "fullDate": "EEEE, d\u05d8\u05df MMMM y", + "longDate": "d\u05d8\u05df MMMM y", + "medium": "d\u05d8\u05df MMM y HH:mm:ss", + "mediumDate": "d\u05d8\u05df MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/yy HH:mm", + "shortDate": "dd/MM/yy", + "shortTime": "HH:mm" + }, + "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\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_yi.js b/public/app/bower_components/angular-i18n/angular-locale_yi.js new file mode 100644 index 00000000..6598e95b --- /dev/null +++ b/public/app/bower_components/angular-i18n/angular-locale_yi.js @@ -0,0 +1,115 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +function getDecimals(n) { + n = n + ''; + var i = n.indexOf('.'); + return (i == -1) ? 0 : n.length - i - 1; +} + +function getVF(n, opt_precision) { + var v = opt_precision; + + if (undefined === v) { + v = Math.min(getDecimals(n), 3); + } + + var base = Math.pow(10, v); + var f = ((n * base) | 0) % base; + return {v: v, f: f}; +} + +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "\u05e4\u05d0\u05e8\u05de\u05d9\u05d8\u05d0\u05d2", + "\u05e0\u05d0\u05db\u05de\u05d9\u05d8\u05d0\u05d2" + ], + "DAY": [ + "\u05d6\u05d5\u05e0\u05d8\u05d9\u05e7", + "\u05de\u05d0\u05b8\u05e0\u05d8\u05d9\u05e7", + "\u05d3\u05d9\u05e0\u05e1\u05d8\u05d9\u05e7", + "\u05de\u05d9\u05d8\u05d5\u05d5\u05d0\u05da", + "\u05d3\u05d0\u05e0\u05e2\u05e8\u05e9\u05d8\u05d9\u05e7", + "\u05e4\u05bf\u05e8\u05f2\u05b7\u05d8\u05d9\u05e7", + "\u05e9\u05d1\u05ea" + ], + "MONTH": [ + "\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" + ], + "SHORTDAY": [ + "\u05d6\u05d5\u05e0\u05d8\u05d9\u05e7", + "\u05de\u05d0\u05b8\u05e0\u05d8\u05d9\u05e7", + "\u05d3\u05d9\u05e0\u05e1\u05d8\u05d9\u05e7", + "\u05de\u05d9\u05d8\u05d5\u05d5\u05d0\u05da", + "\u05d3\u05d0\u05e0\u05e2\u05e8\u05e9\u05d8\u05d9\u05e7", + "\u05e4\u05bf\u05e8\u05f2\u05b7\u05d8\u05d9\u05e7", + "\u05e9\u05d1\u05ea" + ], + "SHORTMONTH": [ + "\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" + ], + "fullDate": "EEEE, d\u05d8\u05df MMMM y", + "longDate": "d\u05d8\u05df MMMM y", + "medium": "d\u05d8\u05df MMM y HH:mm:ss", + "mediumDate": "d\u05d8\u05df MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/yy HH:mm", + "shortDate": "dd/MM/yy", + "shortTime": "HH:mm" + }, + "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\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "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/public/app/bower_components/angular-i18n/angular-locale_zh-hant-tw.js b/public/app/bower_components/angular-i18n/angular-locale_zh-hant-tw.js index c1582ec7..f64f1d00 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_zh-hant-tw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_zh-hant-tw.js @@ -53,7 +53,7 @@ $provide.value("$locale", { "11\u6708", "12\u6708" ], - "fullDate": "y\u5e74M\u6708d\u65e5EEEE", + "fullDate": "y\u5e74M\u6708d\u65e5 EEEE", "longDate": "y\u5e74M\u6708d\u65e5", "medium": "y\u5e74M\u6708d\u65e5 ah:mm:ss", "mediumDate": "y\u5e74M\u6708d\u65e5", diff --git a/public/app/bower_components/angular-i18n/angular-locale_zh-hant.js b/public/app/bower_components/angular-i18n/angular-locale_zh-hant.js index 31db6747..cf8957c8 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_zh-hant.js +++ b/public/app/bower_components/angular-i18n/angular-locale_zh-hant.js @@ -53,7 +53,7 @@ $provide.value("$locale", { "11\u6708", "12\u6708" ], - "fullDate": "y\u5e74M\u6708d\u65e5EEEE", + "fullDate": "y\u5e74M\u6708d\u65e5 EEEE", "longDate": "y\u5e74M\u6708d\u65e5", "medium": "y\u5e74M\u6708d\u65e5 ah:mm:ss", "mediumDate": "y\u5e74M\u6708d\u65e5", diff --git a/public/app/bower_components/angular-i18n/angular-locale_zh-tw.js b/public/app/bower_components/angular-i18n/angular-locale_zh-tw.js index d9ba29be..d9eb9e12 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_zh-tw.js +++ b/public/app/bower_components/angular-i18n/angular-locale_zh-tw.js @@ -53,7 +53,7 @@ $provide.value("$locale", { "11\u6708", "12\u6708" ], - "fullDate": "y\u5e74M\u6708d\u65e5EEEE", + "fullDate": "y\u5e74M\u6708d\u65e5 EEEE", "longDate": "y\u5e74M\u6708d\u65e5", "medium": "y\u5e74M\u6708d\u65e5 ah:mm:ss", "mediumDate": "y\u5e74M\u6708d\u65e5", diff --git a/public/app/bower_components/angular-i18n/angular-locale_zu-za.js b/public/app/bower_components/angular-i18n/angular-locale_zu-za.js index 36f2d58b..6d76b395 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_zu-za.js +++ b/public/app/bower_components/angular-i18n/angular-locale_zu-za.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "Nov", "Dis" ], - "fullDate": "EEEE dd MMMM y", - "longDate": "d MMMM y", - "medium": "d MMM y h:mm:ss a", - "mediumDate": "d MMM y", + "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": "y-MM-dd h:mm a", - "shortDate": "y-MM-dd", + "short": "M/d/yy h:mm a", + "shortDate": "M/d/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/angular-locale_zu.js b/public/app/bower_components/angular-i18n/angular-locale_zu.js index 0938a02a..1ad6b029 100644 --- a/public/app/bower_components/angular-i18n/angular-locale_zu.js +++ b/public/app/bower_components/angular-i18n/angular-locale_zu.js @@ -53,13 +53,13 @@ $provide.value("$locale", { "Nov", "Dis" ], - "fullDate": "EEEE dd MMMM y", - "longDate": "d MMMM y", - "medium": "d MMM y h:mm:ss a", - "mediumDate": "d MMM y", + "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": "y-MM-dd h:mm a", - "shortDate": "y-MM-dd", + "short": "M/d/yy h:mm a", + "shortDate": "M/d/yy", "shortTime": "h:mm a" }, "NUMBER_FORMATS": { diff --git a/public/app/bower_components/angular-i18n/bower.json b/public/app/bower_components/angular-i18n/bower.json index 8fec9129..e054c3fb 100644 --- a/public/app/bower_components/angular-i18n/bower.json +++ b/public/app/bower_components/angular-i18n/bower.json @@ -1,6 +1,6 @@ { "name": "angular-i18n", - "version": "1.3.1", + "version": "1.3.12", "ignore": [ "**/.*", "node_modules", diff --git a/public/app/bower_components/angular-i18n/package.json b/public/app/bower_components/angular-i18n/package.json index e57d0d32..20807f0b 100644 --- a/public/app/bower_components/angular-i18n/package.json +++ b/public/app/bower_components/angular-i18n/package.json @@ -1,6 +1,6 @@ { "name": "angular-i18n", - "version": "1.3.1", + "version": "1.3.12", "description": "AngularJS module for internationalization", "main": "angular-i18n.js", "scripts": { diff --git a/public/app/bower_components/angular-loader/.bower.json b/public/app/bower_components/angular-loader/.bower.json index aff09fae..53cce376 100644 --- a/public/app/bower_components/angular-loader/.bower.json +++ b/public/app/bower_components/angular-loader/.bower.json @@ -1,17 +1,17 @@ { "name": "angular-loader", - "version": "1.3.1", + "version": "1.3.12", "main": "./angular-loader.js", "ignore": [], "dependencies": { - "angular": "1.3.1" + "angular": "1.3.12" }, "homepage": "https://github.com/angular/bower-angular-loader", - "_release": "1.3.1", + "_release": "1.3.12", "_resolution": { "type": "version", - "tag": "v1.3.1", - "commit": "0e6defd9cd018dae882a33bd9b9a2c0e8c94719d" + "tag": "v1.3.12", + "commit": "447168dec97596a75e65146ccf46189f1fcb337a" }, "_source": "git://github.com/angular/bower-angular-loader.git", "_target": "~1.3.1", diff --git a/public/app/bower_components/angular-loader/angular-loader.js b/public/app/bower_components/angular-loader/angular-loader.js index 7fddeaeb..602ff10e 100644 --- a/public/app/bower_components/angular-loader/angular-loader.js +++ b/public/app/bower_components/angular-loader/angular-loader.js @@ -1,5 +1,5 @@ /** - * @license AngularJS v1.3.1 + * @license AngularJS v1.3.12 * (c) 2010-2014 Google, Inc. http://angularjs.org * License: MIT */ @@ -43,40 +43,23 @@ function minErr(module, ErrorConstructor) { prefix = '[' + (module ? module + ':' : '') + code + '] ', template = arguments[1], templateArgs = arguments, - stringify = function(obj) { - if (typeof obj === 'function') { - return obj.toString().replace(/ \{[\s\S]*$/, ''); - } else if (typeof obj === 'undefined') { - return 'undefined'; - } else if (typeof obj !== 'string') { - return JSON.stringify(obj); - } - return obj; - }, + message, i; message = prefix + template.replace(/\{\d+\}/g, function(match) { var index = +match.slice(1, -1), arg; if (index + 2 < templateArgs.length) { - arg = templateArgs[index + 2]; - if (typeof arg === 'function') { - return arg.toString().replace(/ ?\{[\s\S]*$/, ''); - } else if (typeof arg === 'undefined') { - return 'undefined'; - } else if (typeof arg !== 'string') { - return toJson(arg); - } - return arg; + return toDebugString(templateArgs[index + 2]); } return match; }); - message = message + '\nhttp://errors.angularjs.org/1.3.1/' + + message = message + '\nhttp://errors.angularjs.org/1.3.12/' + (module ? module + '/' : '') + code; for (i = 2; i < arguments.length; i++) { - message = message + (i == 2 ? '?' : '&') + 'p' + (i-2) + '=' + - encodeURIComponent(stringify(arguments[i])); + message = message + (i == 2 ? '?' : '&') + 'p' + (i - 2) + '=' + + encodeURIComponent(toDebugString(arguments[i])); } return new ErrorConstructor(message); }; diff --git a/public/app/bower_components/angular-loader/angular-loader.min.js b/public/app/bower_components/angular-loader/angular-loader.min.js index 9c2248e8..c0478de4 100644 --- a/public/app/bower_components/angular-loader/angular-loader.min.js +++ b/public/app/bower_components/angular-loader/angular-loader.min.js @@ -1,9 +1,9 @@ /* - AngularJS v1.3.1 + AngularJS v1.3.12 (c) 2010-2014 Google, Inc. http://angularjs.org License: MIT */ -(function(){'use strict';function d(b){return function(){var c=arguments[0],e;e="["+(b?b+":":"")+c+"] http://errors.angularjs.org/1.3.1/"+(b?b+"/":"")+c;for(c=1;c Please note that using Angular Material requires **Angular 1.3.x** or higher. - -Below is a sample set of commands: +To install and use the Angular Material distribution files, change to your project's root directory. ```bash -cd yourProjectDir +# To get the latest stable version, use Bower from the command line. +bower install angular-material + +# To get the most recent, last committed-to-master version use: +bower install angular-material#master + +# To save the bower settings for future use: bower install angular-material --save + +# Later, you can use easily update with: +bower update ``` -### Usage +> Please note that using Angular Material requires **Angular 1.3.x** or higher. + + +### Using the Bower-Material Library Now that you have installed [locally] the Angular libraries, simply include the scripts and stylesheet in your main HTML file: @@ -23,7 +33,6 @@ Now that you have installed [locally] the Angular libraries, simply include the - @@ -48,3 +57,60 @@ Now that you have installed [locally] the Angular libraries, simply include the ``` + +#### CDN + +CDN versions of Angular Material are now available at [Google Hosted Libraries](https://developers.google.com/speed/libraries/devguide#angularmaterial). + +With the Google CDN, you will not need to download local copies of the distribution files. Instead simply reference the CDN urls to easily use those remote library files. This is especially useful when using online tools such as CodePen, Plunkr, or jsFiddle. + +```html + + + + + + + + + + + + + + + + + + +``` + +> Note that the above sample references the 0.6.1 CDN release. Your version will change based on the latest stable release version. + +Developers seeking the latest, most-current build versions can use [RawGit.com](//rawgit.com) to +pull directly from the distribution GitHub +[Bower-Material](https://github.com/angular/bower-material) repository: + +```html + + + + + + + + + + + + + + + + + + +``` + +> Please note that the above RawGit access is intended **ONLY** for development purposes or sharing + low-traffic, temporary examples or demos with small numbers of people. diff --git a/public/app/bower_components/angular-material/angular-material.css b/public/app/bower_components/angular-material/angular-material.css index 03fa4b95..5ae0dc18 100644 --- a/public/app/bower_components/angular-material/angular-material.css +++ b/public/app/bower_components/angular-material/angular-material.css @@ -2,7 +2,7 @@ * Angular Material Design * https://github.com/angular/material * @license MIT - * v0.5.0 + * v0.7.1 */ *, *:before, *:after { box-sizing: border-box; } @@ -12,8 +12,8 @@ html, body { height: 100%; - color: rgba(0, 0, 0, 0.73); - background: #ffffff; + color: rgba(0, 0, 0, 0.87); + background: white; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -webkit-touch-callout: none; -webkit-text-size-adjust: 100%; @@ -31,7 +31,7 @@ html, body { font-weight: bold; } button, select, html, textarea, input { - font-family: 'RobotoDraft', 'Helvetica Neue', Helvetica, Arial; } + font-family: RobotoDraft, Roboto, 'Helvetica Neue', sans-serif; } body { margin: 0; @@ -42,7 +42,7 @@ body { padding: 10px; } button { - font-family: 'RobotoDraft', 'Helvetica Neue', Helvetica, Arial; } + font-family: RobotoDraft, Roboto, 'Helvetica Neue', sans-serif; } a { background: transparent; @@ -98,54 +98,6 @@ input[type="search"] { input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; } -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 100; - src: local('RobotoDraft Thin'), local('RobotoDraft-Thin'), url(//fonts.gstatic.com/s/robotodraft/v1/hope9NW9iJ5hh8P5PM_EAyeJLMOzE6CCkidNEpZOseY.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 300; - src: local('RobotoDraft Light'), local('RobotoDraft-Light'), url(//fonts.gstatic.com/s/robotodraft/v1/u0_CMoUf3y3-4Ss4ci-VwR_xHqYgAV9Bl_ZQbYUxnQU.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 400; - src: local('RobotoDraft'), local('RobotoDraft-Regular'), url(//fonts.gstatic.com/s/robotodraft/v1/0xES5Sl_v6oyT7dAKuoni4bN6UDyHWBl620a-IRfuBk.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 500; - src: local('RobotoDraft Medium'), local('RobotoDraft-Medium'), url(//fonts.gstatic.com/s/robotodraft/v1/u0_CMoUf3y3-4Ss4ci-VwSqHEX2q--o2so14pIEl08w.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 700; - src: local('RobotoDraft Bold'), local('RobotoDraft-Bold'), url(//fonts.gstatic.com/s/robotodraft/v1/u0_CMoUf3y3-4Ss4ci-VwTqR_3kx9_hJXbbyU8S6IN0.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: normal; - font-weight: 900; - src: local('RobotoDraft Black'), local('RobotoDraft-Black'), url(//fonts.gstatic.com/s/robotodraft/v1/u0_CMoUf3y3-4Ss4ci-VwUExzZ44ka2Lr5i-x5aWr0E.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: italic; - font-weight: 400; - src: local('RobotoDraft Italic'), local('RobotoDraft-Italic'), url(//fonts.gstatic.com/s/robotodraft/v1/er-TIW55l9KWsTS1x9bTftkZXW4sYc4BjuAIFc1SXII.woff) format('woff'); } - -@font-face { - font-family: 'RobotoDraft'; - font-style: italic; - font-weight: 700; - src: local('RobotoDraft Bold Italic'), local('RobotoDraft-BoldItalic'), url(//fonts.gstatic.com/s/robotodraft/v1/5SAvdU0uYYlH8OURAykt5wRV2F9RPTaqyJ4QibDfkzM.woff) format('woff'); } - .md-shadow { position: absolute; top: 0; @@ -155,38 +107,360 @@ input[type="search"] { border-radius: inherit; pointer-events: none; } -.md-shadow-bottom-z-1, md-button.md-raised:not([disabled]), md-button.md-fab { +.md-shadow-bottom-z-1, .md-button.md-raised:not([disabled]), .md-button.md-fab { box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26); } -.md-shadow-bottom-z-2, md-button.md-raised.focus:not([disabled]), md-button.md-raised:not([disabled]):hover, md-button.md-fab.focus:not([disabled]), md-button.md-fab:not([disabled]):hover { +.md-shadow-bottom-z-2, .md-button.md-raised:not([disabled]):focus, .md-button.md-raised:not([disabled]):hover, .md-button.md-fab:not([disabled]):focus, .md-button.md-fab:not([disabled]):hover { box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.4); } .md-shadow-animated.md-shadow { transition: box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1); } +/* + * A container inside of a rippling element (eg a button), + * which contains all of the individual ripples + */ +.md-ripple-container { + pointer-events: none; + position: absolute; + overflow: hidden; + left: 0; + top: 0; + width: 100%; + height: 100%; + transition: all 0.55s cubic-bezier(0.25, 0.8, 0.25, 1); } + +.md-ripple { + position: absolute; + -webkit-transform: scale(0); + transform: scale(0); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + opacity: 0; + border-radius: 50%; } + .md-ripple.md-ripple-placed { + transition: left 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), top 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), margin 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), border 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), width 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), height 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), -webkit-transform 0.65s cubic-bezier(0.25, 0.8, 0.25, 1); + transition: left 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), top 0.9s cubic-bezier(0.25, 0.8, 0.25, 1), margin 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), border 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), width 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), height 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.65s cubic-bezier(0.25, 0.8, 0.25, 1), transform 0.65s cubic-bezier(0.25, 0.8, 0.25, 1); } + .md-ripple.md-ripple-scaled { + -webkit-transform: scale(1); + transform: scale(1); } + .md-ripple.md-ripple-active, .md-ripple.md-ripple-full, .md-ripple.md-ripple-visible { + opacity: 0.2; } + +md-tab > .md-ripple-container .md-ripple { + box-sizing: content-box; + background-color: transparent !important; + border-width: 0; + border-style: solid; + opacity: 0.2; + -webkit-transform: none !important; + transform: none !important; } + md-tab > .md-ripple-container .md-ripple.md-ripple-active, md-tab > .md-ripple-container .md-ripple.md-ripple-full, md-tab > .md-ripple-container .md-ripple.md-ripple-visible { + opacity: 0.2; } + +/* Sizes: + 0 <= size <= 600 Phone + 600 <= size <= 960 Tablet + 960 <= size <= 1200 Tablet-Landscape + 1200 <= size PC +*/ [layout] { box-sizing: border-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } -[layout=vertical] { +[layout=column] { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } -[layout-padding], [layout][layout-padding] > [flex] { +[layout=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } + +[layout-padding], [layout-padding] > [flex] { padding: 8px; } -[layout-padding] + [layout-padding] { - margin-top: -8px; - padding-top: 0; } +[layout-margin], [layout-margin] > [flex] { + margin: 8px; } + +[layout-wrap] { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; } [layout-fill] { margin: 0; min-height: 100%; width: 100%; } +@-moz-document url-prefix() { + [layout-fill] { + margin: 0; + width: 100%; + min-height: auto; + height: inherit; } } + +[flex] { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; } + +[flex="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } + +[layout="row"] > [flex="0"] { + max-width: 0%; } + +[layout="column"] > [flex="0"] { + max-height: 0%; } + +[flex="5"] { + -webkit-flex: 0 0 5%; + -ms-flex: 0 0 5%; + flex: 0 0 5%; } + +[layout="row"] > [flex="5"] { + max-width: 5%; } + +[layout="column"] > [flex="5"] { + max-height: 5%; } + +[flex="10"] { + -webkit-flex: 0 0 10%; + -ms-flex: 0 0 10%; + flex: 0 0 10%; } + +[layout="row"] > [flex="10"] { + max-width: 10%; } + +[layout="column"] > [flex="10"] { + max-height: 10%; } + +[flex="15"] { + -webkit-flex: 0 0 15%; + -ms-flex: 0 0 15%; + flex: 0 0 15%; } + +[layout="row"] > [flex="15"] { + max-width: 15%; } + +[layout="column"] > [flex="15"] { + max-height: 15%; } + +[flex="20"] { + -webkit-flex: 0 0 20%; + -ms-flex: 0 0 20%; + flex: 0 0 20%; } + +[layout="row"] > [flex="20"] { + max-width: 20%; } + +[layout="column"] > [flex="20"] { + max-height: 20%; } + +[flex="25"] { + -webkit-flex: 0 0 25%; + -ms-flex: 0 0 25%; + flex: 0 0 25%; } + +[layout="row"] > [flex="25"] { + max-width: 25%; } + +[layout="column"] > [flex="25"] { + max-height: 25%; } + +[flex="30"] { + -webkit-flex: 0 0 30%; + -ms-flex: 0 0 30%; + flex: 0 0 30%; } + +[layout="row"] > [flex="30"] { + max-width: 30%; } + +[layout="column"] > [flex="30"] { + max-height: 30%; } + +[flex="35"] { + -webkit-flex: 0 0 35%; + -ms-flex: 0 0 35%; + flex: 0 0 35%; } + +[layout="row"] > [flex="35"] { + max-width: 35%; } + +[layout="column"] > [flex="35"] { + max-height: 35%; } + +[flex="40"] { + -webkit-flex: 0 0 40%; + -ms-flex: 0 0 40%; + flex: 0 0 40%; } + +[layout="row"] > [flex="40"] { + max-width: 40%; } + +[layout="column"] > [flex="40"] { + max-height: 40%; } + +[flex="45"] { + -webkit-flex: 0 0 45%; + -ms-flex: 0 0 45%; + flex: 0 0 45%; } + +[layout="row"] > [flex="45"] { + max-width: 45%; } + +[layout="column"] > [flex="45"] { + max-height: 45%; } + +[flex="50"] { + -webkit-flex: 0 0 50%; + -ms-flex: 0 0 50%; + flex: 0 0 50%; } + +[layout="row"] > [flex="50"] { + max-width: 50%; } + +[layout="column"] > [flex="50"] { + max-height: 50%; } + +[flex="55"] { + -webkit-flex: 0 0 55%; + -ms-flex: 0 0 55%; + flex: 0 0 55%; } + +[layout="row"] > [flex="55"] { + max-width: 55%; } + +[layout="column"] > [flex="55"] { + max-height: 55%; } + +[flex="60"] { + -webkit-flex: 0 0 60%; + -ms-flex: 0 0 60%; + flex: 0 0 60%; } + +[layout="row"] > [flex="60"] { + max-width: 60%; } + +[layout="column"] > [flex="60"] { + max-height: 60%; } + +[flex="65"] { + -webkit-flex: 0 0 65%; + -ms-flex: 0 0 65%; + flex: 0 0 65%; } + +[layout="row"] > [flex="65"] { + max-width: 65%; } + +[layout="column"] > [flex="65"] { + max-height: 65%; } + +[flex="70"] { + -webkit-flex: 0 0 70%; + -ms-flex: 0 0 70%; + flex: 0 0 70%; } + +[layout="row"] > [flex="70"] { + max-width: 70%; } + +[layout="column"] > [flex="70"] { + max-height: 70%; } + +[flex="75"] { + -webkit-flex: 0 0 75%; + -ms-flex: 0 0 75%; + flex: 0 0 75%; } + +[layout="row"] > [flex="75"] { + max-width: 75%; } + +[layout="column"] > [flex="75"] { + max-height: 75%; } + +[flex="80"] { + -webkit-flex: 0 0 80%; + -ms-flex: 0 0 80%; + flex: 0 0 80%; } + +[layout="row"] > [flex="80"] { + max-width: 80%; } + +[layout="column"] > [flex="80"] { + max-height: 80%; } + +[flex="85"] { + -webkit-flex: 0 0 85%; + -ms-flex: 0 0 85%; + flex: 0 0 85%; } + +[layout="row"] > [flex="85"] { + max-width: 85%; } + +[layout="column"] > [flex="85"] { + max-height: 85%; } + +[flex="90"] { + -webkit-flex: 0 0 90%; + -ms-flex: 0 0 90%; + flex: 0 0 90%; } + +[layout="row"] > [flex="90"] { + max-width: 90%; } + +[layout="column"] > [flex="90"] { + max-height: 90%; } + +[flex="95"] { + -webkit-flex: 0 0 95%; + -ms-flex: 0 0 95%; + flex: 0 0 95%; } + +[layout="row"] > [flex="95"] { + max-width: 95%; } + +[layout="column"] > [flex="95"] { + max-height: 95%; } + +[flex="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + +[layout="row"] > [flex="100"] { + max-width: 100%; } + +[layout="column"] > [flex="100"] { + max-height: 100%; } + +[layout="row"] > [flex="33"], [layout="row"] > [flex="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-width: 33.33%; } +[layout="row"] > [flex="66"], [layout="row"] > [flex="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-width: 66.66%; } + +[layout="column"] > [flex="33"], [layout="column"] > [flex="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } +[layout="column"] > [flex="66"], [layout="column"] > [flex="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } + [layout-align="center"], [layout-align="center center"], [layout-align="center start"], [layout-align="center end"] { -webkit-justify-content: center; -ms-flex-pack: center; @@ -222,1093 +496,2305 @@ input[type="search"] { -ms-flex-align: end; align-items: flex-end; } -[block] { - display: block; } +[flex-order="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } -[inline-block] { - display: inline-block; } - -[hide] { - display: none; } - -[show] { - display: inherit; } - -[flex] { - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; } - -[flex="5"] { - -webkit-flex: 0 0 5%; - -ms-flex: 0 0 5%; - flex: 0 0 5%; - max-width: 5%; } - -[flex="10"] { - -webkit-flex: 0 0 10%; - -ms-flex: 0 0 10%; - flex: 0 0 10%; - max-width: 10%; } - -[flex="15"] { - -webkit-flex: 0 0 15%; - -ms-flex: 0 0 15%; - flex: 0 0 15%; - max-width: 15%; } - -[flex="20"] { - -webkit-flex: 0 0 20%; - -ms-flex: 0 0 20%; - flex: 0 0 20%; - max-width: 20%; } - -[flex="25"] { - -webkit-flex: 0 0 25%; - -ms-flex: 0 0 25%; - flex: 0 0 25%; - max-width: 25%; } - -[flex="30"] { - -webkit-flex: 0 0 30%; - -ms-flex: 0 0 30%; - flex: 0 0 30%; - max-width: 30%; } - -[flex="35"] { - -webkit-flex: 0 0 35%; - -ms-flex: 0 0 35%; - flex: 0 0 35%; - max-width: 35%; } - -[flex="40"] { - -webkit-flex: 0 0 40%; - -ms-flex: 0 0 40%; - flex: 0 0 40%; - max-width: 40%; } - -[flex="45"] { - -webkit-flex: 0 0 45%; - -ms-flex: 0 0 45%; - flex: 0 0 45%; - max-width: 45%; } - -[flex="50"] { - -webkit-flex: 0 0 50%; - -ms-flex: 0 0 50%; - flex: 0 0 50%; - max-width: 50%; } - -[flex="55"] { - -webkit-flex: 0 0 55%; - -ms-flex: 0 0 55%; - flex: 0 0 55%; - max-width: 55%; } - -[flex="60"] { - -webkit-flex: 0 0 60%; - -ms-flex: 0 0 60%; - flex: 0 0 60%; - max-width: 60%; } - -[flex="65"] { - -webkit-flex: 0 0 65%; - -ms-flex: 0 0 65%; - flex: 0 0 65%; - max-width: 65%; } - -[flex="70"] { - -webkit-flex: 0 0 70%; - -ms-flex: 0 0 70%; - flex: 0 0 70%; - max-width: 70%; } - -[flex="75"] { - -webkit-flex: 0 0 75%; - -ms-flex: 0 0 75%; - flex: 0 0 75%; - max-width: 75%; } - -[flex="80"] { - -webkit-flex: 0 0 80%; - -ms-flex: 0 0 80%; - flex: 0 0 80%; - max-width: 80%; } - -[flex="85"] { - -webkit-flex: 0 0 85%; - -ms-flex: 0 0 85%; - flex: 0 0 85%; - max-width: 85%; } - -[flex="90"] { - -webkit-flex: 0 0 90%; - -ms-flex: 0 0 90%; - flex: 0 0 90%; - max-width: 90%; } - -[flex="95"] { - -webkit-flex: 0 0 95%; - -ms-flex: 0 0 95%; - flex: 0 0 95%; - max-width: 95%; } - -[flex="33"], [flex="34"] { - -webkit-flex: 0 0 33.33%; - -ms-flex: 0 0 33.33%; - flex: 0 0 33.33%; - max-width: 33.33%; } - -[flex="66"], [flex="67"] { - -webkit-flex: 0 0 66.66%; - -ms-flex: 0 0 66.66%; - flex: 0 0 66.66%; - max-width: 66.66%; } - -[offset="5"] { - margin-left: 5%; } - -[offset="10"] { - margin-left: 10%; } - -[offset="15"] { - margin-left: 15%; } - -[offset="20"] { - margin-left: 20%; } - -[offset="25"] { - margin-left: 25%; } - -[offset="30"] { - margin-left: 30%; } - -[offset="35"] { - margin-left: 35%; } - -[offset="40"] { - margin-left: 40%; } - -[offset="45"] { - margin-left: 45%; } - -[offset="50"] { - margin-left: 50%; } - -[offset="55"] { - margin-left: 55%; } - -[offset="60"] { - margin-left: 60%; } - -[offset="65"] { - margin-left: 65%; } - -[offset="70"] { - margin-left: 70%; } - -[offset="75"] { - margin-left: 75%; } - -[offset="80"] { - margin-left: 80%; } - -[offset="85"] { - margin-left: 85%; } - -[offset="90"] { - margin-left: 90%; } - -[offset="95"] { - margin-left: 95%; } - -[offset="33"], [offset="34"] { - margin-left: 33.33%; } - -[offset="66"], [offset="67"] { - margin-left: 66.66%; } - -[layout-order="1"] { +[flex-order="1"] { -webkit-order: 1; -ms-flex-order: 1; order: 1; } -[layout-order="2"] { +[flex-order="2"] { -webkit-order: 2; -ms-flex-order: 2; order: 2; } -[layout-order="3"] { +[flex-order="3"] { -webkit-order: 3; -ms-flex-order: 3; order: 3; } -[layout-order="4"] { +[flex-order="4"] { -webkit-order: 4; -ms-flex-order: 4; order: 4; } -[layout-order="5"] { +[flex-order="5"] { -webkit-order: 5; -ms-flex-order: 5; order: 5; } -[layout-order="6"] { +[flex-order="6"] { -webkit-order: 6; -ms-flex-order: 6; order: 6; } -@media (min-width: 600px) { +[flex-order="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } + +[flex-order="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + +[flex-order="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + +/** + * `hide-gt-sm show-gt-lg` should hide from 600px to 1200px + * `show-md hide-gt-sm` should show from 0px to 960px and hide at >960px + * `hide-gt-md show-gt-sm` should show everywhere (show overrides hide)` + */ +@media (max-width: 600px) { + [hide-sm]:not([show-sm]):not([show]), [hide]:not([show-sm]):not([show]) { + display: none; } + + [flex-order-sm="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } + + [flex-order-sm="1"] { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } + + [flex-order-sm="2"] { + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; } + + [flex-order-sm="3"] { + -webkit-order: 3; + -ms-flex-order: 3; + order: 3; } + + [flex-order-sm="4"] { + -webkit-order: 4; + -ms-flex-order: 4; + order: 4; } + + [flex-order-sm="5"] { + -webkit-order: 5; + -ms-flex-order: 5; + order: 5; } + + [flex-order-sm="6"] { + -webkit-order: 6; + -ms-flex-order: 6; + order: 6; } + + [flex-order-sm="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } + + [flex-order-sm="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-sm="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-sm="center"], [layout-align-sm="center center"], [layout-align-sm="center start"], [layout-align-sm="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-sm="end"], [layout-align-sm="end center"], [layout-align-sm="end start"], [layout-align-sm="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-sm="space-around"], [layout-align-sm="space-around center"], [layout-align-sm="space-around start"], [layout-align-sm="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-sm="space-between"], [layout-align-sm="space-between center"], [layout-align-sm="space-between start"], [layout-align-sm="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-sm="center center"], [layout-align-sm="start center"], [layout-align-sm="end center"], [layout-align-sm="space-between center"], [layout-align-sm="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-sm="center start"], [layout-align-sm="start start"], [layout-align-sm="end start"], [layout-align-sm="space-between start"], [layout-align-sm="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-sm="center end"], [layout-align-sm="start end"], [layout-align-sm="end end"], [layout-align-sm="space-between end"], [layout-align-sm="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-sm] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-sm=column] { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; } + + [layout-sm=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } + [flex-sm] { -webkit-flex: 1; -ms-flex: 1; flex: 1; } + [flex-sm="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } + + [layout="row"] > [flex-sm="0"] { + max-width: 0%; } + + [layout="column"] > [flex-sm="0"] { + max-height: 0%; } + [flex-sm="5"] { -webkit-flex: 0 0 5%; -ms-flex: 0 0 5%; - flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-sm="5"] { max-width: 5%; } + [layout="column"] > [flex-sm="5"] { + max-height: 5%; } + [flex-sm="10"] { -webkit-flex: 0 0 10%; -ms-flex: 0 0 10%; - flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-sm="10"] { max-width: 10%; } + [layout="column"] > [flex-sm="10"] { + max-height: 10%; } + [flex-sm="15"] { -webkit-flex: 0 0 15%; -ms-flex: 0 0 15%; - flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-sm="15"] { max-width: 15%; } + [layout="column"] > [flex-sm="15"] { + max-height: 15%; } + [flex-sm="20"] { -webkit-flex: 0 0 20%; -ms-flex: 0 0 20%; - flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-sm="20"] { max-width: 20%; } + [layout="column"] > [flex-sm="20"] { + max-height: 20%; } + [flex-sm="25"] { -webkit-flex: 0 0 25%; -ms-flex: 0 0 25%; - flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-sm="25"] { max-width: 25%; } + [layout="column"] > [flex-sm="25"] { + max-height: 25%; } + [flex-sm="30"] { -webkit-flex: 0 0 30%; -ms-flex: 0 0 30%; - flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-sm="30"] { max-width: 30%; } + [layout="column"] > [flex-sm="30"] { + max-height: 30%; } + [flex-sm="35"] { -webkit-flex: 0 0 35%; -ms-flex: 0 0 35%; - flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-sm="35"] { max-width: 35%; } + [layout="column"] > [flex-sm="35"] { + max-height: 35%; } + [flex-sm="40"] { -webkit-flex: 0 0 40%; -ms-flex: 0 0 40%; - flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-sm="40"] { max-width: 40%; } + [layout="column"] > [flex-sm="40"] { + max-height: 40%; } + [flex-sm="45"] { -webkit-flex: 0 0 45%; -ms-flex: 0 0 45%; - flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-sm="45"] { max-width: 45%; } + [layout="column"] > [flex-sm="45"] { + max-height: 45%; } + [flex-sm="50"] { -webkit-flex: 0 0 50%; -ms-flex: 0 0 50%; - flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-sm="50"] { max-width: 50%; } + [layout="column"] > [flex-sm="50"] { + max-height: 50%; } + [flex-sm="55"] { -webkit-flex: 0 0 55%; -ms-flex: 0 0 55%; - flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-sm="55"] { max-width: 55%; } + [layout="column"] > [flex-sm="55"] { + max-height: 55%; } + [flex-sm="60"] { -webkit-flex: 0 0 60%; -ms-flex: 0 0 60%; - flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-sm="60"] { max-width: 60%; } + [layout="column"] > [flex-sm="60"] { + max-height: 60%; } + [flex-sm="65"] { -webkit-flex: 0 0 65%; -ms-flex: 0 0 65%; - flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-sm="65"] { max-width: 65%; } + [layout="column"] > [flex-sm="65"] { + max-height: 65%; } + [flex-sm="70"] { -webkit-flex: 0 0 70%; -ms-flex: 0 0 70%; - flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-sm="70"] { max-width: 70%; } + [layout="column"] > [flex-sm="70"] { + max-height: 70%; } + [flex-sm="75"] { -webkit-flex: 0 0 75%; -ms-flex: 0 0 75%; - flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-sm="75"] { max-width: 75%; } + [layout="column"] > [flex-sm="75"] { + max-height: 75%; } + [flex-sm="80"] { -webkit-flex: 0 0 80%; -ms-flex: 0 0 80%; - flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-sm="80"] { max-width: 80%; } + [layout="column"] > [flex-sm="80"] { + max-height: 80%; } + [flex-sm="85"] { -webkit-flex: 0 0 85%; -ms-flex: 0 0 85%; - flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-sm="85"] { max-width: 85%; } + [layout="column"] > [flex-sm="85"] { + max-height: 85%; } + [flex-sm="90"] { -webkit-flex: 0 0 90%; -ms-flex: 0 0 90%; - flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-sm="90"] { max-width: 90%; } + [layout="column"] > [flex-sm="90"] { + max-height: 90%; } + [flex-sm="95"] { -webkit-flex: 0 0 95%; -ms-flex: 0 0 95%; - flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-sm="95"] { max-width: 95%; } - [flex-sm="33"], [flex-sm="34"] { + [layout="column"] > [flex-sm="95"] { + max-height: 95%; } + + [flex-sm="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-sm="100"] { + max-width: 100%; } + + [layout="column"] > [flex-sm="100"] { + max-height: 100%; } + + [layout="row"] > [flex-sm="33"], [layout="row"] > [flex-sm="34"] { -webkit-flex: 0 0 33.33%; -ms-flex: 0 0 33.33%; flex: 0 0 33.33%; max-width: 33.33%; } - - [flex-sm="66"], [flex-sm="67"] { + [layout="row"] > [flex-sm="66"], [layout="row"] > [flex-sm="67"] { -webkit-flex: 0 0 66.66%; -ms-flex: 0 0 66.66%; flex: 0 0 66.66%; max-width: 66.66%; } - [offset-sm="5"] { - margin-left: 5%; } + [layout="column"] > [flex-sm="33"], [layout="column"] > [flex-sm="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-sm="66"], [layout="column"] > [flex-sm="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } + } - [offset-sm="10"] { - margin-left: 10%; } +@media (min-width: 600px) { + [flex-order-gt-sm="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } - [offset-sm="15"] { - margin-left: 15%; } - - [offset-sm="20"] { - margin-left: 20%; } - - [offset-sm="25"] { - margin-left: 25%; } - - [offset-sm="30"] { - margin-left: 30%; } - - [offset-sm="35"] { - margin-left: 35%; } - - [offset-sm="40"] { - margin-left: 40%; } - - [offset-sm="45"] { - margin-left: 45%; } - - [offset-sm="50"] { - margin-left: 50%; } - - [offset-sm="55"] { - margin-left: 55%; } - - [offset-sm="60"] { - margin-left: 60%; } - - [offset-sm="65"] { - margin-left: 65%; } - - [offset-sm="70"] { - margin-left: 70%; } - - [offset-sm="75"] { - margin-left: 75%; } - - [offset-sm="80"] { - margin-left: 80%; } - - [offset-sm="85"] { - margin-left: 85%; } - - [offset-sm="90"] { - margin-left: 90%; } - - [offset-sm="95"] { - margin-left: 95%; } - - [offset-sm="33"], [offset-sm="34"] { - margin-left: 33.33%; } - - [offset-sm="66"], [offset-sm="67"] { - margin-left: 66.66%; } - - [layout-order-sm="1"] { + [flex-order-gt-sm="1"] { -webkit-order: 1; -ms-flex-order: 1; order: 1; } - [layout-order-sm="2"] { + [flex-order-gt-sm="2"] { -webkit-order: 2; -ms-flex-order: 2; order: 2; } - [layout-order-sm="3"] { + [flex-order-gt-sm="3"] { -webkit-order: 3; -ms-flex-order: 3; order: 3; } - [layout-order-sm="4"] { + [flex-order-gt-sm="4"] { -webkit-order: 4; -ms-flex-order: 4; order: 4; } - [layout-order-sm="5"] { + [flex-order-gt-sm="5"] { -webkit-order: 5; -ms-flex-order: 5; order: 5; } - [layout-order-sm="6"] { + [flex-order-gt-sm="6"] { -webkit-order: 6; -ms-flex-order: 6; order: 6; } - [layout-sm] { - -webkit-flex-direction: row; - -ms-flex-direction: row; - flex-direction: row; } + [flex-order-gt-sm="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } - [layout-sm=vertical] { + [flex-order-gt-sm="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-gt-sm="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-gt-sm="center"], [layout-align-gt-sm="center center"], [layout-align-gt-sm="center start"], [layout-align-gt-sm="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-gt-sm="end"], [layout-align-gt-sm="end center"], [layout-align-gt-sm="end start"], [layout-align-gt-sm="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-gt-sm="space-around"], [layout-align-gt-sm="space-around center"], [layout-align-gt-sm="space-around start"], [layout-align-gt-sm="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-gt-sm="space-between"], [layout-align-gt-sm="space-between center"], [layout-align-gt-sm="space-between start"], [layout-align-gt-sm="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-gt-sm="center center"], [layout-align-gt-sm="start center"], [layout-align-gt-sm="end center"], [layout-align-gt-sm="space-between center"], [layout-align-gt-sm="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-gt-sm="center start"], [layout-align-gt-sm="start start"], [layout-align-gt-sm="end start"], [layout-align-gt-sm="space-between start"], [layout-align-gt-sm="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-gt-sm="center end"], [layout-align-gt-sm="start end"], [layout-align-gt-sm="end end"], [layout-align-gt-sm="space-between end"], [layout-align-gt-sm="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-gt-sm] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-gt-sm=column] { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } - [block-sm] { - display: block; } + [layout-gt-sm=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } - [inline-block-sm] { - display: inline-block; } + [flex-gt-sm] { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; } - [show-sm] { - display: inherit; } + [flex-gt-sm="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } - [hide-sm] { - display: none; } + [layout="row"] > [flex-gt-sm="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-sm="0"] { + max-height: 0%; } + + [flex-gt-sm="5"] { + -webkit-flex: 0 0 5%; + -ms-flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-sm="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-sm="5"] { + max-height: 5%; } + + [flex-gt-sm="10"] { + -webkit-flex: 0 0 10%; + -ms-flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-sm="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-sm="10"] { + max-height: 10%; } + + [flex-gt-sm="15"] { + -webkit-flex: 0 0 15%; + -ms-flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-sm="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-sm="15"] { + max-height: 15%; } + + [flex-gt-sm="20"] { + -webkit-flex: 0 0 20%; + -ms-flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-sm="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-sm="20"] { + max-height: 20%; } + + [flex-gt-sm="25"] { + -webkit-flex: 0 0 25%; + -ms-flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-sm="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-sm="25"] { + max-height: 25%; } + + [flex-gt-sm="30"] { + -webkit-flex: 0 0 30%; + -ms-flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-sm="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-sm="30"] { + max-height: 30%; } + + [flex-gt-sm="35"] { + -webkit-flex: 0 0 35%; + -ms-flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-sm="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-sm="35"] { + max-height: 35%; } + + [flex-gt-sm="40"] { + -webkit-flex: 0 0 40%; + -ms-flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-sm="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-sm="40"] { + max-height: 40%; } + + [flex-gt-sm="45"] { + -webkit-flex: 0 0 45%; + -ms-flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-sm="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-sm="45"] { + max-height: 45%; } + + [flex-gt-sm="50"] { + -webkit-flex: 0 0 50%; + -ms-flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-sm="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-sm="50"] { + max-height: 50%; } + + [flex-gt-sm="55"] { + -webkit-flex: 0 0 55%; + -ms-flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-sm="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-sm="55"] { + max-height: 55%; } + + [flex-gt-sm="60"] { + -webkit-flex: 0 0 60%; + -ms-flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-sm="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-sm="60"] { + max-height: 60%; } + + [flex-gt-sm="65"] { + -webkit-flex: 0 0 65%; + -ms-flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-sm="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-sm="65"] { + max-height: 65%; } + + [flex-gt-sm="70"] { + -webkit-flex: 0 0 70%; + -ms-flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-sm="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-sm="70"] { + max-height: 70%; } + + [flex-gt-sm="75"] { + -webkit-flex: 0 0 75%; + -ms-flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-sm="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-sm="75"] { + max-height: 75%; } + + [flex-gt-sm="80"] { + -webkit-flex: 0 0 80%; + -ms-flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-sm="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-sm="80"] { + max-height: 80%; } + + [flex-gt-sm="85"] { + -webkit-flex: 0 0 85%; + -ms-flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-sm="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-sm="85"] { + max-height: 85%; } + + [flex-gt-sm="90"] { + -webkit-flex: 0 0 90%; + -ms-flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-sm="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-sm="90"] { + max-height: 90%; } + + [flex-gt-sm="95"] { + -webkit-flex: 0 0 95%; + -ms-flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-sm="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-sm="95"] { + max-height: 95%; } + + [flex-gt-sm="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-sm="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-sm="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-sm="33"], [layout="row"] > [flex-gt-sm="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-sm="66"], [layout="row"] > [flex-gt-sm="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-sm="33"], [layout="column"] > [flex-gt-sm="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-sm="66"], [layout="column"] > [flex-gt-sm="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } } -@media (min-width: 960px) { +@media (min-width: 600px) and (max-width: 960px) { + [hide]:not([show-gt-sm]):not([show-md]):not([show]), [hide-gt-sm]:not([show-gt-sm]):not([show-md]):not([show]) { + display: none; } + + [hide-md]:not([show-md]):not([show]) { + display: none; } + + [flex-order-md="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } + + [flex-order-md="1"] { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } + + [flex-order-md="2"] { + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; } + + [flex-order-md="3"] { + -webkit-order: 3; + -ms-flex-order: 3; + order: 3; } + + [flex-order-md="4"] { + -webkit-order: 4; + -ms-flex-order: 4; + order: 4; } + + [flex-order-md="5"] { + -webkit-order: 5; + -ms-flex-order: 5; + order: 5; } + + [flex-order-md="6"] { + -webkit-order: 6; + -ms-flex-order: 6; + order: 6; } + + [flex-order-md="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } + + [flex-order-md="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-md="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-md="center"], [layout-align-md="center center"], [layout-align-md="center start"], [layout-align-md="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-md="end"], [layout-align-md="end center"], [layout-align-md="end start"], [layout-align-md="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-md="space-around"], [layout-align-md="space-around center"], [layout-align-md="space-around start"], [layout-align-md="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-md="space-between"], [layout-align-md="space-between center"], [layout-align-md="space-between start"], [layout-align-md="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-md="center center"], [layout-align-md="start center"], [layout-align-md="end center"], [layout-align-md="space-between center"], [layout-align-md="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-md="center start"], [layout-align-md="start start"], [layout-align-md="end start"], [layout-align-md="space-between start"], [layout-align-md="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-md="center end"], [layout-align-md="start end"], [layout-align-md="end end"], [layout-align-md="space-between end"], [layout-align-md="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-md] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-md=column] { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; } + + [layout-md=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } + [flex-md] { -webkit-flex: 1; -ms-flex: 1; flex: 1; } + [flex-md="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } + + [layout="row"] > [flex-md="0"] { + max-width: 0%; } + + [layout="column"] > [flex-md="0"] { + max-height: 0%; } + [flex-md="5"] { -webkit-flex: 0 0 5%; -ms-flex: 0 0 5%; - flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-md="5"] { max-width: 5%; } + [layout="column"] > [flex-md="5"] { + max-height: 5%; } + [flex-md="10"] { -webkit-flex: 0 0 10%; -ms-flex: 0 0 10%; - flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-md="10"] { max-width: 10%; } + [layout="column"] > [flex-md="10"] { + max-height: 10%; } + [flex-md="15"] { -webkit-flex: 0 0 15%; -ms-flex: 0 0 15%; - flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-md="15"] { max-width: 15%; } + [layout="column"] > [flex-md="15"] { + max-height: 15%; } + [flex-md="20"] { -webkit-flex: 0 0 20%; -ms-flex: 0 0 20%; - flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-md="20"] { max-width: 20%; } + [layout="column"] > [flex-md="20"] { + max-height: 20%; } + [flex-md="25"] { -webkit-flex: 0 0 25%; -ms-flex: 0 0 25%; - flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-md="25"] { max-width: 25%; } + [layout="column"] > [flex-md="25"] { + max-height: 25%; } + [flex-md="30"] { -webkit-flex: 0 0 30%; -ms-flex: 0 0 30%; - flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-md="30"] { max-width: 30%; } + [layout="column"] > [flex-md="30"] { + max-height: 30%; } + [flex-md="35"] { -webkit-flex: 0 0 35%; -ms-flex: 0 0 35%; - flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-md="35"] { max-width: 35%; } + [layout="column"] > [flex-md="35"] { + max-height: 35%; } + [flex-md="40"] { -webkit-flex: 0 0 40%; -ms-flex: 0 0 40%; - flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-md="40"] { max-width: 40%; } + [layout="column"] > [flex-md="40"] { + max-height: 40%; } + [flex-md="45"] { -webkit-flex: 0 0 45%; -ms-flex: 0 0 45%; - flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-md="45"] { max-width: 45%; } + [layout="column"] > [flex-md="45"] { + max-height: 45%; } + [flex-md="50"] { -webkit-flex: 0 0 50%; -ms-flex: 0 0 50%; - flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-md="50"] { max-width: 50%; } + [layout="column"] > [flex-md="50"] { + max-height: 50%; } + [flex-md="55"] { -webkit-flex: 0 0 55%; -ms-flex: 0 0 55%; - flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-md="55"] { max-width: 55%; } + [layout="column"] > [flex-md="55"] { + max-height: 55%; } + [flex-md="60"] { -webkit-flex: 0 0 60%; -ms-flex: 0 0 60%; - flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-md="60"] { max-width: 60%; } + [layout="column"] > [flex-md="60"] { + max-height: 60%; } + [flex-md="65"] { -webkit-flex: 0 0 65%; -ms-flex: 0 0 65%; - flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-md="65"] { max-width: 65%; } + [layout="column"] > [flex-md="65"] { + max-height: 65%; } + [flex-md="70"] { -webkit-flex: 0 0 70%; -ms-flex: 0 0 70%; - flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-md="70"] { max-width: 70%; } + [layout="column"] > [flex-md="70"] { + max-height: 70%; } + [flex-md="75"] { -webkit-flex: 0 0 75%; -ms-flex: 0 0 75%; - flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-md="75"] { max-width: 75%; } + [layout="column"] > [flex-md="75"] { + max-height: 75%; } + [flex-md="80"] { -webkit-flex: 0 0 80%; -ms-flex: 0 0 80%; - flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-md="80"] { max-width: 80%; } + [layout="column"] > [flex-md="80"] { + max-height: 80%; } + [flex-md="85"] { -webkit-flex: 0 0 85%; -ms-flex: 0 0 85%; - flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-md="85"] { max-width: 85%; } + [layout="column"] > [flex-md="85"] { + max-height: 85%; } + [flex-md="90"] { -webkit-flex: 0 0 90%; -ms-flex: 0 0 90%; - flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-md="90"] { max-width: 90%; } + [layout="column"] > [flex-md="90"] { + max-height: 90%; } + [flex-md="95"] { -webkit-flex: 0 0 95%; -ms-flex: 0 0 95%; - flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-md="95"] { max-width: 95%; } - [flex-md="33"], [flex-md="34"] { + [layout="column"] > [flex-md="95"] { + max-height: 95%; } + + [flex-md="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-md="100"] { + max-width: 100%; } + + [layout="column"] > [flex-md="100"] { + max-height: 100%; } + + [layout="row"] > [flex-md="33"], [layout="row"] > [flex-md="34"] { -webkit-flex: 0 0 33.33%; -ms-flex: 0 0 33.33%; flex: 0 0 33.33%; max-width: 33.33%; } - - [flex-md="66"], [flex-md="67"] { + [layout="row"] > [flex-md="66"], [layout="row"] > [flex-md="67"] { -webkit-flex: 0 0 66.66%; -ms-flex: 0 0 66.66%; flex: 0 0 66.66%; max-width: 66.66%; } - [offset-md="5"] { - margin-left: 5%; } + [layout="column"] > [flex-md="33"], [layout="column"] > [flex-md="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-md="66"], [layout="column"] > [flex-md="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } + } - [offset-md="10"] { - margin-left: 10%; } +@media (min-width: 960px) { + [flex-order-gt-md="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } - [offset-md="15"] { - margin-left: 15%; } - - [offset-md="20"] { - margin-left: 20%; } - - [offset-md="25"] { - margin-left: 25%; } - - [offset-md="30"] { - margin-left: 30%; } - - [offset-md="35"] { - margin-left: 35%; } - - [offset-md="40"] { - margin-left: 40%; } - - [offset-md="45"] { - margin-left: 45%; } - - [offset-md="50"] { - margin-left: 50%; } - - [offset-md="55"] { - margin-left: 55%; } - - [offset-md="60"] { - margin-left: 60%; } - - [offset-md="65"] { - margin-left: 65%; } - - [offset-md="70"] { - margin-left: 70%; } - - [offset-md="75"] { - margin-left: 75%; } - - [offset-md="80"] { - margin-left: 80%; } - - [offset-md="85"] { - margin-left: 85%; } - - [offset-md="90"] { - margin-left: 90%; } - - [offset-md="95"] { - margin-left: 95%; } - - [offset-md="33"], [offset-md="34"] { - margin-left: 33.33%; } - - [offset-md="66"], [offset-md="67"] { - margin-left: 66.66%; } - - [layout-order-md="1"] { + [flex-order-gt-md="1"] { -webkit-order: 1; -ms-flex-order: 1; order: 1; } - [layout-order-md="2"] { + [flex-order-gt-md="2"] { -webkit-order: 2; -ms-flex-order: 2; order: 2; } - [layout-order-md="3"] { + [flex-order-gt-md="3"] { -webkit-order: 3; -ms-flex-order: 3; order: 3; } - [layout-order-md="4"] { + [flex-order-gt-md="4"] { -webkit-order: 4; -ms-flex-order: 4; order: 4; } - [layout-order-md="5"] { + [flex-order-gt-md="5"] { -webkit-order: 5; -ms-flex-order: 5; order: 5; } - [layout-order-md="6"] { + [flex-order-gt-md="6"] { -webkit-order: 6; -ms-flex-order: 6; order: 6; } - [layout-md] { - -webkit-flex-direction: row; - -ms-flex-direction: row; - flex-direction: row; } + [flex-order-gt-md="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } - [layout-md=vertical] { + [flex-order-gt-md="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-gt-md="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-gt-md="center"], [layout-align-gt-md="center center"], [layout-align-gt-md="center start"], [layout-align-gt-md="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-gt-md="end"], [layout-align-gt-md="end center"], [layout-align-gt-md="end start"], [layout-align-gt-md="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-gt-md="space-around"], [layout-align-gt-md="space-around center"], [layout-align-gt-md="space-around start"], [layout-align-gt-md="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-gt-md="space-between"], [layout-align-gt-md="space-between center"], [layout-align-gt-md="space-between start"], [layout-align-gt-md="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-gt-md="center center"], [layout-align-gt-md="start center"], [layout-align-gt-md="end center"], [layout-align-gt-md="space-between center"], [layout-align-gt-md="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-gt-md="center start"], [layout-align-gt-md="start start"], [layout-align-gt-md="end start"], [layout-align-gt-md="space-between start"], [layout-align-gt-md="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-gt-md="center end"], [layout-align-gt-md="start end"], [layout-align-gt-md="end end"], [layout-align-gt-md="space-between end"], [layout-align-gt-md="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-gt-md] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-gt-md=column] { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } - [block-md] { - display: block; } + [layout-gt-md=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } - [inline-block-md] { - display: inline-block; } + [flex-gt-md] { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; } - [show-md] { - display: inherit; } + [flex-gt-md="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } - [hide-md] { - display: none; } + [layout="row"] > [flex-gt-md="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-md="0"] { + max-height: 0%; } + + [flex-gt-md="5"] { + -webkit-flex: 0 0 5%; + -ms-flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-md="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-md="5"] { + max-height: 5%; } + + [flex-gt-md="10"] { + -webkit-flex: 0 0 10%; + -ms-flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-md="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-md="10"] { + max-height: 10%; } + + [flex-gt-md="15"] { + -webkit-flex: 0 0 15%; + -ms-flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-md="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-md="15"] { + max-height: 15%; } + + [flex-gt-md="20"] { + -webkit-flex: 0 0 20%; + -ms-flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-md="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-md="20"] { + max-height: 20%; } + + [flex-gt-md="25"] { + -webkit-flex: 0 0 25%; + -ms-flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-md="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-md="25"] { + max-height: 25%; } + + [flex-gt-md="30"] { + -webkit-flex: 0 0 30%; + -ms-flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-md="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-md="30"] { + max-height: 30%; } + + [flex-gt-md="35"] { + -webkit-flex: 0 0 35%; + -ms-flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-md="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-md="35"] { + max-height: 35%; } + + [flex-gt-md="40"] { + -webkit-flex: 0 0 40%; + -ms-flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-md="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-md="40"] { + max-height: 40%; } + + [flex-gt-md="45"] { + -webkit-flex: 0 0 45%; + -ms-flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-md="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-md="45"] { + max-height: 45%; } + + [flex-gt-md="50"] { + -webkit-flex: 0 0 50%; + -ms-flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-md="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-md="50"] { + max-height: 50%; } + + [flex-gt-md="55"] { + -webkit-flex: 0 0 55%; + -ms-flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-md="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-md="55"] { + max-height: 55%; } + + [flex-gt-md="60"] { + -webkit-flex: 0 0 60%; + -ms-flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-md="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-md="60"] { + max-height: 60%; } + + [flex-gt-md="65"] { + -webkit-flex: 0 0 65%; + -ms-flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-md="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-md="65"] { + max-height: 65%; } + + [flex-gt-md="70"] { + -webkit-flex: 0 0 70%; + -ms-flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-md="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-md="70"] { + max-height: 70%; } + + [flex-gt-md="75"] { + -webkit-flex: 0 0 75%; + -ms-flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-md="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-md="75"] { + max-height: 75%; } + + [flex-gt-md="80"] { + -webkit-flex: 0 0 80%; + -ms-flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-md="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-md="80"] { + max-height: 80%; } + + [flex-gt-md="85"] { + -webkit-flex: 0 0 85%; + -ms-flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-md="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-md="85"] { + max-height: 85%; } + + [flex-gt-md="90"] { + -webkit-flex: 0 0 90%; + -ms-flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-md="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-md="90"] { + max-height: 90%; } + + [flex-gt-md="95"] { + -webkit-flex: 0 0 95%; + -ms-flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-md="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-md="95"] { + max-height: 95%; } + + [flex-gt-md="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-md="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-md="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-md="33"], [layout="row"] > [flex-gt-md="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-md="66"], [layout="row"] > [flex-gt-md="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-md="33"], [layout="column"] > [flex-gt-md="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-md="66"], [layout="column"] > [flex-gt-md="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } } -@media (min-width: 1200px) { +@media (min-width: 960px) and (max-width: 1200px) { + [hide]:not([show-gt-sm]):not([show-gt-md]):not([show-lg]):not([show]), [hide-gt-sm]:not([show-gt-sm]):not([show-gt-md]):not([show-lg]):not([show]), [hide-gt-md]:not([show-gt-sm]):not([show-gt-md]):not([show-lg]):not([show]) { + display: none; } + + [hide-lg]:not([show-lg]):not([show]) { + display: none; } + + [flex-order-lg="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } + + [flex-order-lg="1"] { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; } + + [flex-order-lg="2"] { + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; } + + [flex-order-lg="3"] { + -webkit-order: 3; + -ms-flex-order: 3; + order: 3; } + + [flex-order-lg="4"] { + -webkit-order: 4; + -ms-flex-order: 4; + order: 4; } + + [flex-order-lg="5"] { + -webkit-order: 5; + -ms-flex-order: 5; + order: 5; } + + [flex-order-lg="6"] { + -webkit-order: 6; + -ms-flex-order: 6; + order: 6; } + + [flex-order-lg="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } + + [flex-order-lg="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-lg="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-lg="center"], [layout-align-lg="center center"], [layout-align-lg="center start"], [layout-align-lg="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-lg="end"], [layout-align-lg="end center"], [layout-align-lg="end start"], [layout-align-lg="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-lg="space-around"], [layout-align-lg="space-around center"], [layout-align-lg="space-around start"], [layout-align-lg="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-lg="space-between"], [layout-align-lg="space-between center"], [layout-align-lg="space-between start"], [layout-align-lg="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-lg="center center"], [layout-align-lg="start center"], [layout-align-lg="end center"], [layout-align-lg="space-between center"], [layout-align-lg="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-lg="center start"], [layout-align-lg="start start"], [layout-align-lg="end start"], [layout-align-lg="space-between start"], [layout-align-lg="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-lg="center end"], [layout-align-lg="start end"], [layout-align-lg="end end"], [layout-align-lg="space-between end"], [layout-align-lg="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-lg] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-lg=column] { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; } + + [layout-lg=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } + [flex-lg] { -webkit-flex: 1; -ms-flex: 1; flex: 1; } + [flex-lg="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } + + [layout="row"] > [flex-lg="0"] { + max-width: 0%; } + + [layout="column"] > [flex-lg="0"] { + max-height: 0%; } + [flex-lg="5"] { -webkit-flex: 0 0 5%; -ms-flex: 0 0 5%; - flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-lg="5"] { max-width: 5%; } + [layout="column"] > [flex-lg="5"] { + max-height: 5%; } + [flex-lg="10"] { -webkit-flex: 0 0 10%; -ms-flex: 0 0 10%; - flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-lg="10"] { max-width: 10%; } + [layout="column"] > [flex-lg="10"] { + max-height: 10%; } + [flex-lg="15"] { -webkit-flex: 0 0 15%; -ms-flex: 0 0 15%; - flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-lg="15"] { max-width: 15%; } + [layout="column"] > [flex-lg="15"] { + max-height: 15%; } + [flex-lg="20"] { -webkit-flex: 0 0 20%; -ms-flex: 0 0 20%; - flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-lg="20"] { max-width: 20%; } + [layout="column"] > [flex-lg="20"] { + max-height: 20%; } + [flex-lg="25"] { -webkit-flex: 0 0 25%; -ms-flex: 0 0 25%; - flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-lg="25"] { max-width: 25%; } + [layout="column"] > [flex-lg="25"] { + max-height: 25%; } + [flex-lg="30"] { -webkit-flex: 0 0 30%; -ms-flex: 0 0 30%; - flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-lg="30"] { max-width: 30%; } + [layout="column"] > [flex-lg="30"] { + max-height: 30%; } + [flex-lg="35"] { -webkit-flex: 0 0 35%; -ms-flex: 0 0 35%; - flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-lg="35"] { max-width: 35%; } + [layout="column"] > [flex-lg="35"] { + max-height: 35%; } + [flex-lg="40"] { -webkit-flex: 0 0 40%; -ms-flex: 0 0 40%; - flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-lg="40"] { max-width: 40%; } + [layout="column"] > [flex-lg="40"] { + max-height: 40%; } + [flex-lg="45"] { -webkit-flex: 0 0 45%; -ms-flex: 0 0 45%; - flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-lg="45"] { max-width: 45%; } + [layout="column"] > [flex-lg="45"] { + max-height: 45%; } + [flex-lg="50"] { -webkit-flex: 0 0 50%; -ms-flex: 0 0 50%; - flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-lg="50"] { max-width: 50%; } + [layout="column"] > [flex-lg="50"] { + max-height: 50%; } + [flex-lg="55"] { -webkit-flex: 0 0 55%; -ms-flex: 0 0 55%; - flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-lg="55"] { max-width: 55%; } + [layout="column"] > [flex-lg="55"] { + max-height: 55%; } + [flex-lg="60"] { -webkit-flex: 0 0 60%; -ms-flex: 0 0 60%; - flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-lg="60"] { max-width: 60%; } + [layout="column"] > [flex-lg="60"] { + max-height: 60%; } + [flex-lg="65"] { -webkit-flex: 0 0 65%; -ms-flex: 0 0 65%; - flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-lg="65"] { max-width: 65%; } + [layout="column"] > [flex-lg="65"] { + max-height: 65%; } + [flex-lg="70"] { -webkit-flex: 0 0 70%; -ms-flex: 0 0 70%; - flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-lg="70"] { max-width: 70%; } + [layout="column"] > [flex-lg="70"] { + max-height: 70%; } + [flex-lg="75"] { -webkit-flex: 0 0 75%; -ms-flex: 0 0 75%; - flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-lg="75"] { max-width: 75%; } + [layout="column"] > [flex-lg="75"] { + max-height: 75%; } + [flex-lg="80"] { -webkit-flex: 0 0 80%; -ms-flex: 0 0 80%; - flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-lg="80"] { max-width: 80%; } + [layout="column"] > [flex-lg="80"] { + max-height: 80%; } + [flex-lg="85"] { -webkit-flex: 0 0 85%; -ms-flex: 0 0 85%; - flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-lg="85"] { max-width: 85%; } + [layout="column"] > [flex-lg="85"] { + max-height: 85%; } + [flex-lg="90"] { -webkit-flex: 0 0 90%; -ms-flex: 0 0 90%; - flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-lg="90"] { max-width: 90%; } + [layout="column"] > [flex-lg="90"] { + max-height: 90%; } + [flex-lg="95"] { -webkit-flex: 0 0 95%; -ms-flex: 0 0 95%; - flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-lg="95"] { max-width: 95%; } - [flex-lg="33"], [flex-lg="34"] { + [layout="column"] > [flex-lg="95"] { + max-height: 95%; } + + [flex-lg="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-lg="100"] { + max-width: 100%; } + + [layout="column"] > [flex-lg="100"] { + max-height: 100%; } + + [layout="row"] > [flex-lg="33"], [layout="row"] > [flex-lg="34"] { -webkit-flex: 0 0 33.33%; -ms-flex: 0 0 33.33%; flex: 0 0 33.33%; max-width: 33.33%; } - - [flex-lg="66"], [flex-lg="67"] { + [layout="row"] > [flex-lg="66"], [layout="row"] > [flex-lg="67"] { -webkit-flex: 0 0 66.66%; -ms-flex: 0 0 66.66%; flex: 0 0 66.66%; max-width: 66.66%; } - [offset-lg="5"] { - margin-left: 5%; } + [layout="column"] > [flex-lg="33"], [layout="column"] > [flex-lg="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-lg="66"], [layout="column"] > [flex-lg="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } + } - [offset-lg="10"] { - margin-left: 10%; } +@media (min-width: 1200px) { + [hide-gt-sm]:not([show-gt-sm]):not([show-gt-md]):not([show-gt-lg]):not([show]), [hide-gt-md]:not([show-gt-sm]):not([show-gt-md]):not([show-gt-lg]):not([show]), [hide-gt-lg]:not([show-gt-sm]):not([show-gt-md]):not([show-gt-lg]):not([show]), [hide]:not([show-gt-sm]):not([show-gt-md]):not([show-gt-lg]):not([show]) { + display: none; } - [offset-lg="15"] { - margin-left: 15%; } + [flex-order-gt-lg="0"] { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; } - [offset-lg="20"] { - margin-left: 20%; } - - [offset-lg="25"] { - margin-left: 25%; } - - [offset-lg="30"] { - margin-left: 30%; } - - [offset-lg="35"] { - margin-left: 35%; } - - [offset-lg="40"] { - margin-left: 40%; } - - [offset-lg="45"] { - margin-left: 45%; } - - [offset-lg="50"] { - margin-left: 50%; } - - [offset-lg="55"] { - margin-left: 55%; } - - [offset-lg="60"] { - margin-left: 60%; } - - [offset-lg="65"] { - margin-left: 65%; } - - [offset-lg="70"] { - margin-left: 70%; } - - [offset-lg="75"] { - margin-left: 75%; } - - [offset-lg="80"] { - margin-left: 80%; } - - [offset-lg="85"] { - margin-left: 85%; } - - [offset-lg="90"] { - margin-left: 90%; } - - [offset-lg="95"] { - margin-left: 95%; } - - [offset-lg="33"], [offset-lg="34"] { - margin-left: 33.33%; } - - [offset-lg="66"], [offset-lg="67"] { - margin-left: 66.66%; } - - [layout-order-lg="1"] { + [flex-order-gt-lg="1"] { -webkit-order: 1; -ms-flex-order: 1; order: 1; } - [layout-order-lg="2"] { + [flex-order-gt-lg="2"] { -webkit-order: 2; -ms-flex-order: 2; order: 2; } - [layout-order-lg="3"] { + [flex-order-gt-lg="3"] { -webkit-order: 3; -ms-flex-order: 3; order: 3; } - [layout-order-lg="4"] { + [flex-order-gt-lg="4"] { -webkit-order: 4; -ms-flex-order: 4; order: 4; } - [layout-order-lg="5"] { + [flex-order-gt-lg="5"] { -webkit-order: 5; -ms-flex-order: 5; order: 5; } - [layout-order-lg="6"] { + [flex-order-gt-lg="6"] { -webkit-order: 6; -ms-flex-order: 6; order: 6; } - [layout-lg] { - -webkit-flex-direction: row; - -ms-flex-direction: row; - flex-direction: row; } + [flex-order-gt-lg="7"] { + -webkit-order: 7; + -ms-flex-order: 7; + order: 7; } - [layout-lg=vertical] { + [flex-order-gt-lg="8"] { + -webkit-order: 8; + -ms-flex-order: 8; + order: 8; } + + [flex-order-gt-lg="9"] { + -webkit-order: 9; + -ms-flex-order: 9; + order: 9; } + + [layout-align-gt-lg="center"], [layout-align-gt-lg="center center"], [layout-align-gt-lg="center start"], [layout-align-gt-lg="center end"] { + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; } + + [layout-align-gt-lg="end"], [layout-align-gt-lg="end center"], [layout-align-gt-lg="end start"], [layout-align-gt-lg="end end"] { + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; } + + [layout-align-gt-lg="space-around"], [layout-align-gt-lg="space-around center"], [layout-align-gt-lg="space-around start"], [layout-align-gt-lg="space-around end"] { + -webkit-justify-content: space-around; + -ms-flex-pack: distribute; + justify-content: space-around; } + + [layout-align-gt-lg="space-between"], [layout-align-gt-lg="space-between center"], [layout-align-gt-lg="space-between start"], [layout-align-gt-lg="space-between end"] { + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; } + + [layout-align-gt-lg="center center"], [layout-align-gt-lg="start center"], [layout-align-gt-lg="end center"], [layout-align-gt-lg="space-between center"], [layout-align-gt-lg="space-around center"] { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + + [layout-align-gt-lg="center start"], [layout-align-gt-lg="start start"], [layout-align-gt-lg="end start"], [layout-align-gt-lg="space-between start"], [layout-align-gt-lg="space-around start"] { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; } + + [layout-align-gt-lg="center end"], [layout-align-gt-lg="start end"], [layout-align-gt-lg="end end"], [layout-align-gt-lg="space-between end"], [layout-align-gt-lg="space-around end"] { + -webkit-align-items: flex-end; + -ms-flex-align: end; + align-items: flex-end; } + + [layout-gt-lg] { + box-sizing: border-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; } + + [layout-gt-lg=column] { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } - [block-lg] { - display: block; } + [layout-gt-lg=row] { + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; } - [inline-block-lg] { - display: inline-block; } + [flex-gt-lg] { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; } - [show-lg] { - display: inherit; } + [flex-gt-lg="0"] { + -webkit-flex: 0 0 0%; + -ms-flex: 0 0 0%; + flex: 0 0 0%; } - [hide-lg] { - display: none; } + [layout="row"] > [flex-gt-lg="0"] { + max-width: 0%; } + + [layout="column"] > [flex-gt-lg="0"] { + max-height: 0%; } + + [flex-gt-lg="5"] { + -webkit-flex: 0 0 5%; + -ms-flex: 0 0 5%; + flex: 0 0 5%; } + + [layout="row"] > [flex-gt-lg="5"] { + max-width: 5%; } + + [layout="column"] > [flex-gt-lg="5"] { + max-height: 5%; } + + [flex-gt-lg="10"] { + -webkit-flex: 0 0 10%; + -ms-flex: 0 0 10%; + flex: 0 0 10%; } + + [layout="row"] > [flex-gt-lg="10"] { + max-width: 10%; } + + [layout="column"] > [flex-gt-lg="10"] { + max-height: 10%; } + + [flex-gt-lg="15"] { + -webkit-flex: 0 0 15%; + -ms-flex: 0 0 15%; + flex: 0 0 15%; } + + [layout="row"] > [flex-gt-lg="15"] { + max-width: 15%; } + + [layout="column"] > [flex-gt-lg="15"] { + max-height: 15%; } + + [flex-gt-lg="20"] { + -webkit-flex: 0 0 20%; + -ms-flex: 0 0 20%; + flex: 0 0 20%; } + + [layout="row"] > [flex-gt-lg="20"] { + max-width: 20%; } + + [layout="column"] > [flex-gt-lg="20"] { + max-height: 20%; } + + [flex-gt-lg="25"] { + -webkit-flex: 0 0 25%; + -ms-flex: 0 0 25%; + flex: 0 0 25%; } + + [layout="row"] > [flex-gt-lg="25"] { + max-width: 25%; } + + [layout="column"] > [flex-gt-lg="25"] { + max-height: 25%; } + + [flex-gt-lg="30"] { + -webkit-flex: 0 0 30%; + -ms-flex: 0 0 30%; + flex: 0 0 30%; } + + [layout="row"] > [flex-gt-lg="30"] { + max-width: 30%; } + + [layout="column"] > [flex-gt-lg="30"] { + max-height: 30%; } + + [flex-gt-lg="35"] { + -webkit-flex: 0 0 35%; + -ms-flex: 0 0 35%; + flex: 0 0 35%; } + + [layout="row"] > [flex-gt-lg="35"] { + max-width: 35%; } + + [layout="column"] > [flex-gt-lg="35"] { + max-height: 35%; } + + [flex-gt-lg="40"] { + -webkit-flex: 0 0 40%; + -ms-flex: 0 0 40%; + flex: 0 0 40%; } + + [layout="row"] > [flex-gt-lg="40"] { + max-width: 40%; } + + [layout="column"] > [flex-gt-lg="40"] { + max-height: 40%; } + + [flex-gt-lg="45"] { + -webkit-flex: 0 0 45%; + -ms-flex: 0 0 45%; + flex: 0 0 45%; } + + [layout="row"] > [flex-gt-lg="45"] { + max-width: 45%; } + + [layout="column"] > [flex-gt-lg="45"] { + max-height: 45%; } + + [flex-gt-lg="50"] { + -webkit-flex: 0 0 50%; + -ms-flex: 0 0 50%; + flex: 0 0 50%; } + + [layout="row"] > [flex-gt-lg="50"] { + max-width: 50%; } + + [layout="column"] > [flex-gt-lg="50"] { + max-height: 50%; } + + [flex-gt-lg="55"] { + -webkit-flex: 0 0 55%; + -ms-flex: 0 0 55%; + flex: 0 0 55%; } + + [layout="row"] > [flex-gt-lg="55"] { + max-width: 55%; } + + [layout="column"] > [flex-gt-lg="55"] { + max-height: 55%; } + + [flex-gt-lg="60"] { + -webkit-flex: 0 0 60%; + -ms-flex: 0 0 60%; + flex: 0 0 60%; } + + [layout="row"] > [flex-gt-lg="60"] { + max-width: 60%; } + + [layout="column"] > [flex-gt-lg="60"] { + max-height: 60%; } + + [flex-gt-lg="65"] { + -webkit-flex: 0 0 65%; + -ms-flex: 0 0 65%; + flex: 0 0 65%; } + + [layout="row"] > [flex-gt-lg="65"] { + max-width: 65%; } + + [layout="column"] > [flex-gt-lg="65"] { + max-height: 65%; } + + [flex-gt-lg="70"] { + -webkit-flex: 0 0 70%; + -ms-flex: 0 0 70%; + flex: 0 0 70%; } + + [layout="row"] > [flex-gt-lg="70"] { + max-width: 70%; } + + [layout="column"] > [flex-gt-lg="70"] { + max-height: 70%; } + + [flex-gt-lg="75"] { + -webkit-flex: 0 0 75%; + -ms-flex: 0 0 75%; + flex: 0 0 75%; } + + [layout="row"] > [flex-gt-lg="75"] { + max-width: 75%; } + + [layout="column"] > [flex-gt-lg="75"] { + max-height: 75%; } + + [flex-gt-lg="80"] { + -webkit-flex: 0 0 80%; + -ms-flex: 0 0 80%; + flex: 0 0 80%; } + + [layout="row"] > [flex-gt-lg="80"] { + max-width: 80%; } + + [layout="column"] > [flex-gt-lg="80"] { + max-height: 80%; } + + [flex-gt-lg="85"] { + -webkit-flex: 0 0 85%; + -ms-flex: 0 0 85%; + flex: 0 0 85%; } + + [layout="row"] > [flex-gt-lg="85"] { + max-width: 85%; } + + [layout="column"] > [flex-gt-lg="85"] { + max-height: 85%; } + + [flex-gt-lg="90"] { + -webkit-flex: 0 0 90%; + -ms-flex: 0 0 90%; + flex: 0 0 90%; } + + [layout="row"] > [flex-gt-lg="90"] { + max-width: 90%; } + + [layout="column"] > [flex-gt-lg="90"] { + max-height: 90%; } + + [flex-gt-lg="95"] { + -webkit-flex: 0 0 95%; + -ms-flex: 0 0 95%; + flex: 0 0 95%; } + + [layout="row"] > [flex-gt-lg="95"] { + max-width: 95%; } + + [layout="column"] > [flex-gt-lg="95"] { + max-height: 95%; } + + [flex-gt-lg="100"] { + -webkit-flex: 0 0 100%; + -ms-flex: 0 0 100%; + flex: 0 0 100%; } + + [layout="row"] > [flex-gt-lg="100"] { + max-width: 100%; } + + [layout="column"] > [flex-gt-lg="100"] { + max-height: 100%; } + + [layout="row"] > [flex-gt-lg="33"], [layout="row"] > [flex-gt-lg="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-width: 33.33%; } + [layout="row"] > [flex-gt-lg="66"], [layout="row"] > [flex-gt-lg="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-width: 66.66%; } + + [layout="column"] > [flex-gt-lg="33"], [layout="column"] > [flex-gt-lg="34"] { + -webkit-flex: 0 0 33.33%; + -ms-flex: 0 0 33.33%; + flex: 0 0 33.33%; + max-height: 33.33%; } + [layout="column"] > [flex-gt-lg="66"], [layout="column"] > [flex-gt-lg="67"] { + -webkit-flex: 0 0 66.66%; + -ms-flex: 0 0 66.66%; + flex: 0 0 66.66%; + max-height: 66.66%; } } md-backdrop { - z-index: 7; + z-index: 50; background-color: rgba(0, 0, 0, 0); position: fixed; left: 0; top: 0; right: 0; - bottom: 0; - transition: all 0.2s ease-out; } + bottom: 0; } + md-backdrop.md-dialog-backdrop { + z-index: 79; } + md-backdrop.md-bottom-sheet-backdrop { + z-index: 69; } + md-backdrop.md-sidenav-backdrop { + z-index: 59; } md-backdrop.ng-enter { - transition-delay: 0.1s; } - md-backdrop.ng-enter, md-backdrop.ng-leave.ng-leave-active { + -webkit-animation: cubic-bezier(0.25, 0.8, 0.25, 1) mdBackdropFadeIn 0.5s both; + animation: cubic-bezier(0.25, 0.8, 0.25, 1) mdBackdropFadeIn 0.5s both; } + md-backdrop.ng-leave { + -webkit-animation: cubic-bezier(0.55, 0, 0.55, 0.2) mdBackdropFadeOut 0.2s both; + animation: cubic-bezier(0.55, 0, 0.55, 0.2) mdBackdropFadeOut 0.2s both; } + +@-webkit-keyframes mdBackdropFadeIn { + from { opacity: 0; } - md-backdrop.ng-leave, md-backdrop.ng-enter.ng-enter-active { + + to { + opacity: 1; } } + +@keyframes mdBackdropFadeIn { + from { + opacity: 0; } + + to { + opacity: 1; } } + +@-webkit-keyframes mdBackdropFadeOut { + from { opacity: 1; } -@-webkit-keyframes inkRippleButton { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - opacity: 0.15; } - - 50% { - -webkit-transform: scale(0.75); - transform: scale(0.75); - opacity: 0.15; } - - 100% { - -webkit-transform: scale(2); - transform: scale(2); + to { opacity: 0; } } -@keyframes inkRippleButton { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - opacity: 0.15; } +@keyframes mdBackdropFadeOut { + from { + opacity: 1; } - 50% { - -webkit-transform: scale(0.75); - transform: scale(0.75); - opacity: 0.15; } - - 100% { - -webkit-transform: scale(2); - transform: scale(2); + to { opacity: 0; } } -@-webkit-keyframes inkRippleCheckbox { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - opacity: 0.4; } - - 50% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 0.4; } - - 100% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 0; } } - -@keyframes inkRippleCheckbox { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - opacity: 0.4; } - - 50% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 0.4; } - - 100% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 0; } } - -/* - * A container inside of a rippling element (eg a button), - * which contains all of the individual ripples - */ -.md-ripple-container { - pointer-events: none; - position: absolute; - overflow: hidden; - left: 0; - top: 0; - width: 100%; - height: 100%; } - -.md-ripple { - position: absolute; } - md-bottom-sheet { - position: fixed; + position: absolute; left: 0; right: 0; bottom: 0; padding: 8px 16px 88px 16px; - z-index: 8; + z-index: 70; border-top: 1px solid; -webkit-transform: translate3d(0, 80px, 0); transform: translate3d(0, 80px, 0); - transition: 0.2s linear; + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); transition-property: -webkit-transform; transition-property: transform; } md-bottom-sheet.md-has-header { @@ -1324,10 +2810,11 @@ md-bottom-sheet { transform: translate3d(0, 80px, 0) !important; } md-bottom-sheet.ng-leave-active { -webkit-transform: translate3d(0, 100%, 0) !important; - transform: translate3d(0, 100%, 0) !important; } + transform: translate3d(0, 100%, 0) !important; + transition: all 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); } md-bottom-sheet .md-subheader { background-color: transparent; - font-family: 'RobotoDraft', 'Helvetica Neue', Helvetica, Arial; + font-family: RobotoDraft, Roboto, 'Helvetica Neue', sans-serif; line-height: 56px; padding: 0; white-space: nowrap; } @@ -1366,7 +2853,10 @@ md-bottom-sheet { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; - transition: all 0.5s; } + transition: all 0.5s; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } md-bottom-sheet.md-grid md-item { -webkit-flex-direction: column; -ms-flex-direction: column; @@ -1375,7 +2865,7 @@ md-bottom-sheet { -ms-flex-align: center; align-items: center; transition: all 0.5s; - height: 80px; + height: 96px; margin-top: 8px; margin-bottom: 8px; /* Mixin for how many grid items to show per row */ } @@ -1421,84 +2911,77 @@ md-bottom-sheet { -webkit-align-items: center; -ms-flex-align: center; align-items: center; - width: 48px; } + width: 48px; + padding-bottom: 16px; } + md-bottom-sheet.md-grid md-item .md-grid-item-content { + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; + width: 80px; } md-bottom-sheet.md-grid md-item .md-icon-container { display: inline-block; box-sizing: border-box; height: 48px; width: 48px; - margin: 8px 0; } + margin: 0 0; } md-bottom-sheet.md-grid md-item p.md-grid-text { font-weight: 300; line-height: 16px; font-size: 13px; margin: 0; white-space: nowrap; - width: 48px; - text-align: center; } + width: 64px; + text-align: center; + padding-top: 8px; } /** * Position a FAB button. */ -md-button { +.md-button { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; position: relative; - display: inline-block; outline: none; border: 0; - padding: 0; + padding: 6px; margin: 0; + background: transparent; + white-space: nowrap; text-align: center; text-transform: uppercase; - font-weight: inherit; + font-weight: 500; font-style: inherit; font-variant: inherit; font-size: inherit; font-family: inherit; line-height: inherit; + text-decoration: none; cursor: pointer; - overflow: hidden; } - md-button .md-button-inner { - display: block; - left: 0; - top: 0; - width: 100%; - height: 100%; - background: transparent; - border: none; - color: inherit; - outline: none; - text-transform: inherit; - font-weight: inherit; - font-style: inherit; - font-variant: inherit; - font-size: inherit; - font-family: inherit; - line-height: inherit; - white-space: nowrap; - padding: 6px; } - md-button a { - text-decoration: none; } - md-button[href] { - pointer-events: none; } - md-button[href] .md-button-inner { - pointer-events: auto; } - md-button.md-cornered { + overflow: hidden; + transition: box-shadow 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), background-color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), -webkit-transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); + transition: box-shadow 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), background-color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); } + .md-button:focus { + outline: none; } + .md-button.ng-hide { + transition: none; } + .md-button.md-cornered { border-radius: 0; } - md-button.md-icon { + .md-button.md-icon { padding: 0; background: none; } - md-button.md-raised { - transition: 0.2s linear; - transition-property: box-shadow, -webkit-transform, background-color; - transition-property: box-shadow, transform, background-color; + .md-button.md-raised { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } - md-button.md-fab { - z-index: 2; + .md-button.md-fab { + z-index: 20; width: 56px; height: 56px; border-radius: 50%; @@ -1509,47 +2992,55 @@ md-button { transition: 0.2s linear; transition-property: -webkit-transform, box-shadow; transition-property: transform, box-shadow; } - md-button.md-fab.md-fab-bottom-right { + .md-button.md-fab.md-fab-bottom-right { top: auto; - right: 28px; - bottom: 28px; + right: 20px; + bottom: 20px; left: auto; position: absolute; } - md-button.md-fab.md-fab-bottom-left { + .md-button.md-fab.md-fab-bottom-left { top: auto; right: auto; - bottom: 28px; - left: 28px; + bottom: 20px; + left: 20px; position: absolute; } - md-button.md-fab.md-fab-top-right { - top: 28px; - right: 28px; + .md-button.md-fab.md-fab-top-right { + top: 20px; + right: 20px; bottom: auto; left: auto; position: absolute; } - md-button.md-fab.md-fab-top-left { - top: 28px; + .md-button.md-fab.md-fab-top-left { + top: 20px; right: auto; bottom: auto; - left: 28px; + left: 20px; position: absolute; } - md-button:not([disabled]).md-raised.focus, md-button:not([disabled]).md-raised:hover, md-button:not([disabled]).md-fab.focus, md-button:not([disabled]).md-fab:hover { + .md-button.md-fab md-icon { + line-height: 56px; + margin-top: 0; } + .md-button.md-fab.md-mini { + width: 40px; + height: 40px; } + .md-button.md-fab.md-mini md-icon { + line-height: 40px; } + .md-button:not([disabled]).md-raised:focus, .md-button:not([disabled]).md-raised:hover, .md-button:not([disabled]).md-fab:focus, .md-button:not([disabled]).md-fab:hover { -webkit-transform: translate3d(0, -1px, 0); transform: translate3d(0, -1px, 0); } -.md-toast-open-top md-button.md-fab-top-left, .md-toast-open-top md-button.md-fab-top-right { - -webkit-transform: translate3d(0, 32px, 0); - transform: translate3d(0, 32px, 0); } - .md-toast-open-top md-button.md-fab-top-left.focus, .md-toast-open-top md-button.md-fab-top-left:hover:not([disabled]), .md-toast-open-top md-button.md-fab-top-right.focus, .md-toast-open-top md-button.md-fab-top-right:hover:not([disabled]) { - -webkit-transform: translate3d(0, 31px, 0); - transform: translate3d(0, 31px, 0); } +.md-toast-open-top .md-button.md-fab-top-left, .md-toast-open-top .md-button.md-fab-top-right { + -webkit-transform: translate3d(0, 42px, 0); + transform: translate3d(0, 42px, 0); } + .md-toast-open-top .md-button.md-fab-top-left:not([disabled]):focus, .md-toast-open-top .md-button.md-fab-top-left:not([disabled]):hover, .md-toast-open-top .md-button.md-fab-top-right:not([disabled]):focus, .md-toast-open-top .md-button.md-fab-top-right:not([disabled]):hover { + -webkit-transform: translate3d(0, 41px, 0); + transform: translate3d(0, 41px, 0); } -.md-toast-open-bottom md-button.md-fab-bottom-left, .md-toast-open-bottom md-button.md-fab-bottom-right { - -webkit-transform: translate3d(0, -32px, 0); - transform: translate3d(0, -32px, 0); } - .md-toast-open-bottom md-button.md-fab-bottom-left.focus, .md-toast-open-bottom md-button.md-fab-bottom-left:hover, .md-toast-open-bottom md-button.md-fab-bottom-right.focus, .md-toast-open-bottom md-button.md-fab-bottom-right:hover { - -webkit-transform: translate3d(0, -33px, 0); - transform: translate3d(0, -33px, 0); } +.md-toast-open-bottom .md-button.md-fab-bottom-left, .md-toast-open-bottom .md-button.md-fab-bottom-right { + -webkit-transform: translate3d(0, -42px, 0); + transform: translate3d(0, -42px, 0); } + .md-toast-open-bottom .md-button.md-fab-bottom-left:not([disabled]):focus, .md-toast-open-bottom .md-button.md-fab-bottom-left:not([disabled]):hover, .md-toast-open-bottom .md-button.md-fab-bottom-right:not([disabled]):focus, .md-toast-open-bottom .md-button.md-fab-bottom-right:not([disabled]):hover { + -webkit-transform: translate3d(0, -43px, 0); + transform: translate3d(0, -43px, 0); } .md-button-group { display: -webkit-flex; @@ -1579,34 +3070,58 @@ md-button { border-radius: 0px 2px 2px 0px; } md-card { - display: block; box-sizing: border-box; - box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.26); + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; margin: 8px; - padding: 8px; } - md-card .md-card-image { - display: block; + box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.26); } + md-card > img, md-card :not(md-card-content) img { + -webkit-order: 0; + -ms-flex-order: 0; + order: 0; width: 100%; } + md-card md-card-content { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; + padding: 16px; } md-checkbox { display: block; margin: 15px; white-space: nowrap; cursor: pointer; - outline: none; } + outline: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } md-checkbox .md-container { position: relative; top: 4px; display: inline-block; width: 18px; height: 18px; } + md-checkbox .md-container:after { + content: ''; + position: absolute; + top: -10px; + right: -10px; + bottom: -10px; + left: -10px; } md-checkbox .md-container .md-ripple-container { position: absolute; display: block; - width: 54px; - height: 54px; - left: -18px; - top: -18px; } + width: auto; + height: auto; + left: -15px; + top: -15px; + right: -15px; + bottom: -15px; } md-checkbox .md-icon { transition: 240ms; position: absolute; @@ -1620,7 +3135,7 @@ md-checkbox { border: none; } md-checkbox[disabled] { cursor: no-drop; } - md-checkbox:focus .md-label { + md-checkbox:focus .md-label:not(:empty) { border-color: black; } md-checkbox.md-checked .md-icon:after { -webkit-transform: rotate(45deg); @@ -1642,17 +3157,21 @@ md-checkbox { margin-left: 10px; vertical-align: middle; white-space: normal; - pointer-events: none; } + pointer-events: none; + -webkit-user-select: text; + -moz-user-select: text; + -ms-user-select: text; + user-select: text; } md-content { display: block; position: relative; overflow: auto; -webkit-overflow-scrolling: touch; } - md-content[scroll-y] { + md-content[md-scroll-y] { overflow-y: auto; overflow-x: hidden; } - md-content[scroll-x] { + md-content[md-scroll-x] { overflow-x: auto; overflow-y: hidden; } md-content.md-padding { @@ -1673,28 +3192,20 @@ md-content { -webkit-align-items: center; -ms-flex-align: center; align-items: center; - position: fixed; - left: 0; + position: absolute; top: 0; - right: 0; - bottom: 0; - z-index: 10; } - .md-dialog-container.md-active { - transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); - -webkit-transform: translate3d(0, 0, 0) scale(1); - transform: translate3d(0, 0, 0) scale(1); - opacity: 1; } - .md-dialog-container.ng-leave.ng-leave-active { - -webkit-transform: translate3d(0, 100%, 0) scale(0.5); - transform: translate3d(0, 100%, 0) scale(0.5); - opacity: 0; } + left: 0; + width: 100%; + height: 100%; + z-index: 80; } md-dialog { + opacity: 0; min-width: 240px; max-width: 80%; max-height: 80%; - margin: auto; position: relative; + overflow: hidden; box-shadow: 0px 27px 24px 0 rgba(0, 0, 0, 0.2); display: -webkit-flex; display: -ms-flexbox; @@ -1702,6 +3213,15 @@ md-dialog { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } + md-dialog.transition-in { + opacity: 1; + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); + -webkit-transform: translate3d(0, 0, 0) scale(1); + transform: translate3d(0, 0, 0) scale(1); } + md-dialog.transition-out { + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); + -webkit-transform: translate3d(0, 100%, 0) scale(0.2); + transform: translate3d(0, 100%, 0) scale(0.2); } md-dialog md-content { -webkit-order: 1; -ms-flex-order: 1; @@ -1709,7 +3229,7 @@ md-dialog { padding: 24px; overflow: auto; -webkit-overflow-scrolling: touch; } - md-dialog md-content *:first-child { + md-dialog md-content:not([layout=row]) > *:first-child { margin-top: 0px; } md-dialog .md-actions { display: -webkit-flex; @@ -1736,7 +3256,7 @@ md-divider { display: block; border-top: 1px solid; margin: 0; } - md-divider[inset] { + md-divider[md-inset] { margin-left: 80px; } md-icon { @@ -1745,12 +3265,126 @@ md-icon { display: inline-block; margin-top: 5px; background-repeat: no-repeat no-repeat; - pointer-events: none; } + pointer-events: none; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + z-index: 0; } + md-icon object.md-icon { + display: inline-block; } svg, object { fill: currentColor; color: currentColor; } +md-input-container { + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + position: relative; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + padding: 2px; + padding-bottom: 26px; + /* + * The .md-input class is added to the input/textarea + */ } + md-input-container textarea, md-input-container input[type="text"], md-input-container input[type="password"], md-input-container input[type="datetime"], md-input-container input[type="datetime-local"], md-input-container input[type="date"], md-input-container input[type="month"], md-input-container input[type="time"], md-input-container input[type="week"], md-input-container input[type="number"], md-input-container input[type="email"], md-input-container input[type="url"], md-input-container input[type="search"], md-input-container input[type="tel"], md-input-container input[type="color"] { + /* remove default appearance from all input/textarea */ + -moz-appearance: none; + -webkit-appearance: none; } + md-input-container textarea { + resize: none; + overflow: hidden; } + md-input-container label, md-input-container .md-placeholder { + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; + pointer-events: none; + -webkit-font-smoothing: antialiased; + padding-left: 2px; + z-index: 1; + -webkit-transform: translate3d(0, 24px, 0) scale(1); + transform: translate3d(0, 24px, 0) scale(1); + -webkit-transform-origin: left top; + transform-origin: left top; + transition: -webkit-transform cubic-bezier(0.25, 0.8, 0.25, 1) 0.25s; + transition: transform cubic-bezier(0.25, 0.8, 0.25, 1) 0.25s; } + md-input-container .md-placeholder { + position: absolute; + top: 0; + opacity: 0; + transition-property: opacity, -webkit-transform; + transition-property: opacity, transform; + -webkit-transform: translate3d(0, 30px, 0); + transform: translate3d(0, 30px, 0); } + md-input-container.md-input-focused .md-placeholder { + opacity: 1; + -webkit-transform: translate3d(0, 24px, 0); + transform: translate3d(0, 24px, 0); } + md-input-container.md-input-has-value .md-placeholder { + transition: none; + opacity: 0; } + md-input-container .md-input { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; + display: block; + background: none; + padding-top: 2px; + padding-bottom: 1px; + padding-left: 2px; + padding-right: 2px; + border-width: 0 0 1px 0; + line-height: 26px; + -ms-flex-preferred-size: 26px; + border-radius: 0; } + md-input-container .md-input:focus { + outline: none; } + md-input-container .md-input:invalid { + outline: none; + box-shadow: none; } + md-input-container ng-messages, md-input-container data-ng-messages, md-input-container x-ng-messages, md-input-container [ng-messages], md-input-container [data-ng-messages], md-input-container [x-ng-messages] { + -webkit-order: 3; + -ms-flex-order: 3; + order: 3; + position: relative; } + md-input-container ng-message, md-input-container data-ng-message, md-input-container x-ng-message, md-input-container [ng-message], md-input-container [data-ng-message], md-input-container [x-ng-message], md-input-container .md-char-counter { + -webkit-font-smoothing: antialiased; + position: absolute; + font-size: 12px; + line-height: 24px; } + md-input-container ng-message.ng-enter, md-input-container data-ng-message.ng-enter, md-input-container x-ng-message.ng-enter, md-input-container [ng-message].ng-enter, md-input-container [data-ng-message].ng-enter, md-input-container [x-ng-message].ng-enter, md-input-container .md-char-counter.ng-enter { + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); + transition-delay: 0.2s; } + md-input-container ng-message.ng-leave, md-input-container data-ng-message.ng-leave, md-input-container x-ng-message.ng-leave, md-input-container [ng-message].ng-leave, md-input-container [data-ng-message].ng-leave, md-input-container [x-ng-message].ng-leave, md-input-container .md-char-counter.ng-leave { + transition: all 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); } + md-input-container ng-message.ng-enter, md-input-container ng-message.ng-leave.ng-leave-active, md-input-container data-ng-message.ng-enter, md-input-container data-ng-message.ng-leave.ng-leave-active, md-input-container x-ng-message.ng-enter, md-input-container x-ng-message.ng-leave.ng-leave-active, md-input-container [ng-message].ng-enter, md-input-container [ng-message].ng-leave.ng-leave-active, md-input-container [data-ng-message].ng-enter, md-input-container [data-ng-message].ng-leave.ng-leave-active, md-input-container [x-ng-message].ng-enter, md-input-container [x-ng-message].ng-leave.ng-leave-active, md-input-container .md-char-counter.ng-enter, md-input-container .md-char-counter.ng-leave.ng-leave-active { + opacity: 0; + -webkit-transform: translate3d(0, -20%, 0); + transform: translate3d(0, -20%, 0); } + md-input-container ng-message.ng-leave, md-input-container ng-message.ng-enter.ng-enter-active, md-input-container data-ng-message.ng-leave, md-input-container data-ng-message.ng-enter.ng-enter-active, md-input-container x-ng-message.ng-leave, md-input-container x-ng-message.ng-enter.ng-enter-active, md-input-container [ng-message].ng-leave, md-input-container [ng-message].ng-enter.ng-enter-active, md-input-container [data-ng-message].ng-leave, md-input-container [data-ng-message].ng-enter.ng-enter-active, md-input-container [x-ng-message].ng-leave, md-input-container [x-ng-message].ng-enter.ng-enter-active, md-input-container .md-char-counter.ng-leave, md-input-container .md-char-counter.ng-enter.ng-enter-active { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); } + md-input-container .md-char-counter { + bottom: 2px; + right: 2px; } + md-input-container.md-input-focused label, md-input-container.md-input-has-value label { + -webkit-transform: translate3d(0, 4px, 0) scale(0.75); + transform: translate3d(0, 4px, 0) scale(0.75); } + md-input-container.md-input-focused .md-input, md-input-container .md-input.ng-invalid.ng-dirty { + padding-bottom: 0px; + border-width: 0 0 2px 0; } + md-input-container .md-input[disabled] { + background-position: 0 bottom; + background-size: 3px 1px; + background-repeat: repeat-x; } + md-list { padding: 8px 0px 8px 0px; } @@ -1802,181 +3436,1395 @@ md-item-content { .md-tile-right { padding-right: 0px; } +@-webkit-keyframes outer-rotate { + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@keyframes outer-rotate { + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@-webkit-keyframes left-wobble { + 0%, 100% { + -webkit-transform: rotate(130deg); + transform: rotate(130deg); } + + 50% { + -webkit-transform: rotate(-5deg); + transform: rotate(-5deg); } } + +@keyframes left-wobble { + 0%, 100% { + -webkit-transform: rotate(130deg); + transform: rotate(130deg); } + + 50% { + -webkit-transform: rotate(-5deg); + transform: rotate(-5deg); } } + +@-webkit-keyframes right-wobble { + 0%, 100% { + -webkit-transform: rotate(-130deg); + transform: rotate(-130deg); } + + 50% { + -webkit-transform: rotate(5deg); + transform: rotate(5deg); } } + +@keyframes right-wobble { + 0%, 100% { + -webkit-transform: rotate(-130deg); + transform: rotate(-130deg); } + + 50% { + -webkit-transform: rotate(5deg); + transform: rotate(5deg); } } + +@-webkit-keyframes sporadic-rotate { + 12.5% { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + + 25% { + -webkit-transform: rotate(270deg); + transform: rotate(270deg); } + + 37.5% { + -webkit-transform: rotate(405deg); + transform: rotate(405deg); } + + 50% { + -webkit-transform: rotate(540deg); + transform: rotate(540deg); } + + 62.5% { + -webkit-transform: rotate(675deg); + transform: rotate(675deg); } + + 75% { + -webkit-transform: rotate(810deg); + transform: rotate(810deg); } + + 87.5% { + -webkit-transform: rotate(945deg); + transform: rotate(945deg); } + + 100% { + -webkit-transform: rotate(1080deg); + transform: rotate(1080deg); } } + +@keyframes sporadic-rotate { + 12.5% { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + + 25% { + -webkit-transform: rotate(270deg); + transform: rotate(270deg); } + + 37.5% { + -webkit-transform: rotate(405deg); + transform: rotate(405deg); } + + 50% { + -webkit-transform: rotate(540deg); + transform: rotate(540deg); } + + 62.5% { + -webkit-transform: rotate(675deg); + transform: rotate(675deg); } + + 75% { + -webkit-transform: rotate(810deg); + transform: rotate(810deg); } + + 87.5% { + -webkit-transform: rotate(945deg); + transform: rotate(945deg); } + + 100% { + -webkit-transform: rotate(1080deg); + transform: rotate(1080deg); } } + md-progress-circular { + width: 50px; + height: 50px; display: block; - width: 54px; - height: 54px; - border-radius: 50%; - padding: 3px; } - md-progress-circular .md-wrapper1, md-progress-circular .md-wrapper2 { - width: 48px; - height: 48px; - position: absolute; - border-radius: 50%; } - md-progress-circular .md-circle .md-mask, md-progress-circular .md-circle .md-fill, md-progress-circular .md-circle .md-shadow { - width: 48px; - height: 48px; - position: absolute; - border-radius: 50%; } - md-progress-circular .md-circle .md-mask, md-progress-circular .md-circle .md-fill { - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - transition: -webkit-transform 0.3s; - transition: transform 0.3s; } - md-progress-circular .md-circle .md-mask { - clip: rect(0px, 48px, 48px, 24px); } - md-progress-circular .md-circle .md-mask .md-fill { - clip: rect(0px, 24px, 48px, 0px); } - md-progress-circular .md-inset { - width: 36px; - height: 36px; - position: absolute; - margin-left: 6px; - margin-top: 6px; - border-radius: 50%; } - md-progress-circular[mode=indeterminate] .md-wrapper1, md-progress-circular[mode=indeterminate] .md-wrapper2 { - -webkit-transform-origin: 50% 50%; - transform-origin: 50% 50%; } - md-progress-circular[mode=indeterminate] .md-wrapper1 { - -webkit-animation: indeterminate_rotate1 3s infinite linear; - animation: indeterminate_rotate1 3s infinite linear; } - md-progress-circular[mode=indeterminate] .md-wrapper2 { - -webkit-animation: indeterminate_rotate2 1.5s infinite linear; - animation: indeterminate_rotate2 1.5s infinite linear; } - md-progress-circular[mode=indeterminate] .md-fill, md-progress-circular[mode=indeterminate] .md-mask.md-full { - -webkit-animation: indeterminate_size_fill 1.5s infinite linear; - animation: indeterminate_size_fill 1.5s infinite linear; } - md-progress-circular[mode=indeterminate] .md-fill.md-fix { - -webkit-animation: indeterminate_size_fix 1.5s infinite linear; - animation: indeterminate_size_fix 1.5s infinite linear; } - -@-webkit-keyframes indeterminate_rotate1 { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); } } - -@keyframes indeterminate_rotate1 { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); } } - -@-webkit-keyframes indeterminate_rotate2 { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 70% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); } } - -@keyframes indeterminate_rotate2 { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 70% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); } } - -@-webkit-keyframes indeterminate_size_fill { - 0% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } - - 10% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } - - 50% { + position: relative; + padding-top: 0 !important; + margin-bottom: 0 !important; + overflow: hidden; } + md-progress-circular .md-inner { + width: 50px; + height: 50px; + position: relative; } + md-progress-circular .md-inner .md-gap { + position: absolute; + left: 24px; + right: 24px; + top: 0; + bottom: 0; + border-top: 5px solid black; + box-sizing: border-box; } + md-progress-circular .md-inner .md-left, md-progress-circular .md-inner .md-right { + position: absolute; + top: 0; + height: 50px; + width: 25px; + overflow: hidden; } + md-progress-circular .md-inner .md-left .md-half-circle, md-progress-circular .md-inner .md-right .md-half-circle { + position: absolute; + top: 0; + width: 50px; + height: 50px; + box-sizing: border-box; + border-width: 5px; + border-style: solid; + border-color: black black transparent; + border-radius: 50%; } + md-progress-circular .md-inner .md-left { + left: 0; } + md-progress-circular .md-inner .md-left .md-half-circle { + left: 0; + border-right-color: transparent; } + md-progress-circular .md-inner .md-right { + right: 0; } + md-progress-circular .md-inner .md-right .md-half-circle { + right: 0; + border-left-color: transparent; } + md-progress-circular[value="0"] .md-inner .md-left .md-half-circle { -webkit-transform: rotate(135deg); transform: rotate(135deg); } - - 70% { + md-progress-circular[value="0"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-135deg); + transform: rotate(-135deg); } + md-progress-circular[value="0"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="1"] .md-inner .md-left .md-half-circle { -webkit-transform: rotate(135deg); transform: rotate(135deg); } - - 100% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } } - -@keyframes indeterminate_size_fill { - 0% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } - - 10% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } - - 50% { + md-progress-circular[value="1"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-131.4deg); + transform: rotate(-131.4deg); } + md-progress-circular[value="1"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="2"] .md-inner .md-left .md-half-circle { -webkit-transform: rotate(135deg); transform: rotate(135deg); } - - 70% { + md-progress-circular[value="2"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-127.8deg); + transform: rotate(-127.8deg); } + md-progress-circular[value="2"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="3"] .md-inner .md-left .md-half-circle { -webkit-transform: rotate(135deg); transform: rotate(135deg); } - - 100% { - -webkit-transform: rotate(5deg); - transform: rotate(5deg); } } - -@-webkit-keyframes indeterminate_size_fix { - 0% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } - - 10% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } - - 50% { - -webkit-transform: rotate(270deg); - transform: rotate(270deg); } - - 70% { - -webkit-transform: rotate(270deg); - transform: rotate(270deg); } - - 100% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } } - -@keyframes indeterminate_size_fix { - 0% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } - - 10% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } - - 50% { - -webkit-transform: rotate(270deg); - transform: rotate(270deg); } - - 70% { - -webkit-transform: rotate(270deg); - transform: rotate(270deg); } - - 100% { - -webkit-transform: rotate(10deg); - transform: rotate(10deg); } } + md-progress-circular[value="3"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-124.2deg); + transform: rotate(-124.2deg); } + md-progress-circular[value="3"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="4"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="4"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-120.6deg); + transform: rotate(-120.6deg); } + md-progress-circular[value="4"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="5"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="5"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-117deg); + transform: rotate(-117deg); } + md-progress-circular[value="5"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="6"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="6"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-113.4deg); + transform: rotate(-113.4deg); } + md-progress-circular[value="6"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="7"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="7"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-109.8deg); + transform: rotate(-109.8deg); } + md-progress-circular[value="7"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="8"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="8"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-106.2deg); + transform: rotate(-106.2deg); } + md-progress-circular[value="8"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="9"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="9"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-102.6deg); + transform: rotate(-102.6deg); } + md-progress-circular[value="9"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="10"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="10"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-99deg); + transform: rotate(-99deg); } + md-progress-circular[value="10"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="11"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="11"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-95.4deg); + transform: rotate(-95.4deg); } + md-progress-circular[value="11"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="12"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="12"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-91.8deg); + transform: rotate(-91.8deg); } + md-progress-circular[value="12"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="13"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="13"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-88.2deg); + transform: rotate(-88.2deg); } + md-progress-circular[value="13"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="14"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="14"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-84.6deg); + transform: rotate(-84.6deg); } + md-progress-circular[value="14"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="15"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="15"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-81deg); + transform: rotate(-81deg); } + md-progress-circular[value="15"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="16"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="16"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-77.4deg); + transform: rotate(-77.4deg); } + md-progress-circular[value="16"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="17"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="17"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-73.8deg); + transform: rotate(-73.8deg); } + md-progress-circular[value="17"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="18"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="18"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-70.2deg); + transform: rotate(-70.2deg); } + md-progress-circular[value="18"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="19"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="19"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-66.6deg); + transform: rotate(-66.6deg); } + md-progress-circular[value="19"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="20"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="20"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-63deg); + transform: rotate(-63deg); } + md-progress-circular[value="20"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="21"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="21"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-59.4deg); + transform: rotate(-59.4deg); } + md-progress-circular[value="21"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="22"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="22"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-55.8deg); + transform: rotate(-55.8deg); } + md-progress-circular[value="22"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="23"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="23"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-52.2deg); + transform: rotate(-52.2deg); } + md-progress-circular[value="23"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="24"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="24"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-48.6deg); + transform: rotate(-48.6deg); } + md-progress-circular[value="24"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="25"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="25"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); } + md-progress-circular[value="25"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="26"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="26"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-41.4deg); + transform: rotate(-41.4deg); } + md-progress-circular[value="26"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="27"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="27"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-37.8deg); + transform: rotate(-37.8deg); } + md-progress-circular[value="27"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="28"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="28"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-34.2deg); + transform: rotate(-34.2deg); } + md-progress-circular[value="28"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="29"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="29"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-30.6deg); + transform: rotate(-30.6deg); } + md-progress-circular[value="29"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="30"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="30"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-27deg); + transform: rotate(-27deg); } + md-progress-circular[value="30"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="31"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="31"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-23.4deg); + transform: rotate(-23.4deg); } + md-progress-circular[value="31"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="32"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="32"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-19.8deg); + transform: rotate(-19.8deg); } + md-progress-circular[value="32"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="33"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="33"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-16.2deg); + transform: rotate(-16.2deg); } + md-progress-circular[value="33"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="34"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="34"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-12.6deg); + transform: rotate(-12.6deg); } + md-progress-circular[value="34"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="35"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="35"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-9deg); + transform: rotate(-9deg); } + md-progress-circular[value="35"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="36"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="36"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-5.4deg); + transform: rotate(-5.4deg); } + md-progress-circular[value="36"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="37"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="37"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(-1.8deg); + transform: rotate(-1.8deg); } + md-progress-circular[value="37"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="38"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="38"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(1.8deg); + transform: rotate(1.8deg); } + md-progress-circular[value="38"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="39"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="39"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(5.4deg); + transform: rotate(5.4deg); } + md-progress-circular[value="39"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="40"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="40"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(9deg); + transform: rotate(9deg); } + md-progress-circular[value="40"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="41"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="41"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(12.6deg); + transform: rotate(12.6deg); } + md-progress-circular[value="41"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="42"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="42"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(16.2deg); + transform: rotate(16.2deg); } + md-progress-circular[value="42"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="43"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="43"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(19.8deg); + transform: rotate(19.8deg); } + md-progress-circular[value="43"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="44"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="44"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(23.4deg); + transform: rotate(23.4deg); } + md-progress-circular[value="44"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="45"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="45"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(27deg); + transform: rotate(27deg); } + md-progress-circular[value="45"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="46"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="46"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(30.6deg); + transform: rotate(30.6deg); } + md-progress-circular[value="46"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="47"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="47"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(34.2deg); + transform: rotate(34.2deg); } + md-progress-circular[value="47"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="48"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="48"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(37.8deg); + transform: rotate(37.8deg); } + md-progress-circular[value="48"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="49"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="49"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(41.4deg); + transform: rotate(41.4deg); } + md-progress-circular[value="49"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="50"] .md-inner .md-left .md-half-circle { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + md-progress-circular[value="50"] .md-inner .md-right .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="50"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + border-bottom-color: transparent !important; } + md-progress-circular[value="51"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(138.6deg); + transform: rotate(138.6deg); } + md-progress-circular[value="51"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="51"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="52"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(142.2deg); + transform: rotate(142.2deg); } + md-progress-circular[value="52"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="52"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="53"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(145.8deg); + transform: rotate(145.8deg); } + md-progress-circular[value="53"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="53"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="54"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(149.4deg); + transform: rotate(149.4deg); } + md-progress-circular[value="54"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="54"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="55"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(153deg); + transform: rotate(153deg); } + md-progress-circular[value="55"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="55"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="56"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(156.6deg); + transform: rotate(156.6deg); } + md-progress-circular[value="56"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="56"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="57"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(160.2deg); + transform: rotate(160.2deg); } + md-progress-circular[value="57"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="57"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="58"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(163.8deg); + transform: rotate(163.8deg); } + md-progress-circular[value="58"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="58"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="59"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(167.4deg); + transform: rotate(167.4deg); } + md-progress-circular[value="59"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="59"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="60"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(171deg); + transform: rotate(171deg); } + md-progress-circular[value="60"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="60"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="61"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(174.6deg); + transform: rotate(174.6deg); } + md-progress-circular[value="61"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="61"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="62"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(178.2deg); + transform: rotate(178.2deg); } + md-progress-circular[value="62"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="62"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="63"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(181.8deg); + transform: rotate(181.8deg); } + md-progress-circular[value="63"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="63"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="64"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(185.4deg); + transform: rotate(185.4deg); } + md-progress-circular[value="64"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="64"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="65"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(189deg); + transform: rotate(189deg); } + md-progress-circular[value="65"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="65"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="66"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(192.6deg); + transform: rotate(192.6deg); } + md-progress-circular[value="66"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="66"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="67"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(196.2deg); + transform: rotate(196.2deg); } + md-progress-circular[value="67"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="67"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="68"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(199.8deg); + transform: rotate(199.8deg); } + md-progress-circular[value="68"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="68"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="69"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(203.4deg); + transform: rotate(203.4deg); } + md-progress-circular[value="69"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="69"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="70"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(207deg); + transform: rotate(207deg); } + md-progress-circular[value="70"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="70"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="71"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(210.6deg); + transform: rotate(210.6deg); } + md-progress-circular[value="71"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="71"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="72"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(214.2deg); + transform: rotate(214.2deg); } + md-progress-circular[value="72"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="72"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="73"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(217.8deg); + transform: rotate(217.8deg); } + md-progress-circular[value="73"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="73"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="74"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(221.4deg); + transform: rotate(221.4deg); } + md-progress-circular[value="74"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="74"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="75"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(225deg); + transform: rotate(225deg); } + md-progress-circular[value="75"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="75"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="76"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(228.6deg); + transform: rotate(228.6deg); } + md-progress-circular[value="76"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="76"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="77"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(232.2deg); + transform: rotate(232.2deg); } + md-progress-circular[value="77"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="77"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="78"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(235.8deg); + transform: rotate(235.8deg); } + md-progress-circular[value="78"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="78"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="79"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(239.4deg); + transform: rotate(239.4deg); } + md-progress-circular[value="79"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="79"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="80"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(243deg); + transform: rotate(243deg); } + md-progress-circular[value="80"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="80"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="81"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(246.6deg); + transform: rotate(246.6deg); } + md-progress-circular[value="81"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="81"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="82"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(250.2deg); + transform: rotate(250.2deg); } + md-progress-circular[value="82"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="82"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="83"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(253.8deg); + transform: rotate(253.8deg); } + md-progress-circular[value="83"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="83"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="84"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(257.4deg); + transform: rotate(257.4deg); } + md-progress-circular[value="84"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="84"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="85"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(261deg); + transform: rotate(261deg); } + md-progress-circular[value="85"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="85"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="86"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(264.6deg); + transform: rotate(264.6deg); } + md-progress-circular[value="86"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="86"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="87"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(268.2deg); + transform: rotate(268.2deg); } + md-progress-circular[value="87"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="87"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="88"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(271.8deg); + transform: rotate(271.8deg); } + md-progress-circular[value="88"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="88"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="89"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(275.4deg); + transform: rotate(275.4deg); } + md-progress-circular[value="89"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="89"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="90"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(279deg); + transform: rotate(279deg); } + md-progress-circular[value="90"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="90"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="91"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(282.6deg); + transform: rotate(282.6deg); } + md-progress-circular[value="91"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="91"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="92"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(286.2deg); + transform: rotate(286.2deg); } + md-progress-circular[value="92"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="92"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="93"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(289.8deg); + transform: rotate(289.8deg); } + md-progress-circular[value="93"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="93"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="94"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(293.4deg); + transform: rotate(293.4deg); } + md-progress-circular[value="94"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="94"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="95"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(297deg); + transform: rotate(297deg); } + md-progress-circular[value="95"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="95"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="96"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(300.6deg); + transform: rotate(300.6deg); } + md-progress-circular[value="96"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="96"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="97"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(304.2deg); + transform: rotate(304.2deg); } + md-progress-circular[value="97"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="97"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="98"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(307.8deg); + transform: rotate(307.8deg); } + md-progress-circular[value="98"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="98"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="99"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(311.4deg); + transform: rotate(311.4deg); } + md-progress-circular[value="99"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="99"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[value="100"] .md-inner .md-left .md-half-circle { + transition: -webkit-transform 0.1s linear; + transition: transform 0.1s linear; + -webkit-transform: rotate(315deg); + transform: rotate(315deg); } + md-progress-circular[value="100"] .md-inner .md-right .md-half-circle { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); } + md-progress-circular[value="100"] .md-inner .md-gap { + border-bottom-width: 5px; + border-bottom-style: solid; + transition: border-bottom-color 0.1s linear; } + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper { + -webkit-animation: outer-rotate 2.91667s linear infinite; + animation: outer-rotate 2.91667s linear infinite; } + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner { + -webkit-animation: sporadic-rotate 5.25s cubic-bezier(0.35, 0, 0.25, 1) infinite; + animation: sporadic-rotate 5.25s cubic-bezier(0.35, 0, 0.25, 1) infinite; } + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-left .md-half-circle, md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-right .md-half-circle { + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-duration: 1.3125s; + animation-duration: 1.3125s; + -webkit-animation-timing-function: cubic-bezier(0.35, 0, 0.25, 1); + animation-timing-function: cubic-bezier(0.35, 0, 0.25, 1); } + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-left .md-half-circle { + -webkit-animation-name: left-wobble; + animation-name: left-wobble; } + md-progress-circular[md-mode=indeterminate] .md-spinner-wrapper .md-inner .md-right .md-half-circle { + -webkit-animation-name: right-wobble; + animation-name: right-wobble; } md-progress-linear { display: block; @@ -1999,17 +4847,17 @@ md-progress-linear { width: 100%; } md-progress-linear .md-bar1, md-progress-linear .md-bar2 { transition: all 0.2s linear; } - md-progress-linear[mode=determinate] .md-bar1 { + md-progress-linear[md-mode=determinate] .md-bar1 { display: none; } - md-progress-linear[mode=indeterminate] .md-bar1 { + md-progress-linear[md-mode=indeterminate] .md-bar1 { -webkit-animation: indeterminate1 4s infinite linear; animation: indeterminate1 4s infinite linear; } - md-progress-linear[mode=indeterminate] .md-bar2 { + md-progress-linear[md-mode=indeterminate] .md-bar2 { -webkit-animation: indeterminate2 4s infinite linear; animation: indeterminate2 4s infinite linear; } - md-progress-linear[mode=buffer] .md-container { + md-progress-linear[md-mode=buffer] .md-container { background-color: transparent !important; } - md-progress-linear[mode=buffer] .md-dashed:before { + md-progress-linear[md-mode=buffer] .md-dashed:before { content: ""; display: block; height: 5px; @@ -2021,7 +4869,7 @@ md-progress-linear { background-position: 0px -23px; -webkit-animation: buffer 3s infinite linear; animation: buffer 3s infinite linear; } - md-progress-linear[mode=query] .md-bar2 { + md-progress-linear[md-mode=query] .md-bar2 { -webkit-animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1); animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1); } @@ -2387,6 +5235,7 @@ md-radio-button, .md-switch-thumb { position: relative; display: inline-block; margin-left: 10px; + margin-right: 10px; vertical-align: middle; white-space: normal; pointer-events: none; @@ -2402,27 +5251,59 @@ md-radio-group { md-sidenav { position: absolute; width: 304px; + min-width: 304px; bottom: 0; - z-index: 8; + z-index: 60; background-color: white; - overflow: auto; } + overflow: auto; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; } md-sidenav.md-closed { display: none; } md-sidenav.md-closed-add, md-sidenav.md-closed-remove { - display: block; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; /* this is required as of 1.3x to properly apply all styling in a show/hide animation */ transition: 0s all; } md-sidenav.md-closed-add.md-closed-add-active, md-sidenav.md-closed-remove.md-closed-remove-active { - transition: -webkit-transform 0.3s ease-in-out; - transition: transform 0.3s ease-in-out; } - md-sidenav.md-locked-open, md-sidenav.md-locked-open.md-closed, md-sidenav.md-locked-open.md-closed.md-sidenav-left, md-sidenav.md-locked-open.md-closed, md-sidenav.md-locked-open.md-closed.md-sidenav-right { + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); } + md-sidenav.md-locked-open-add, md-sidenav.md-locked-open-remove { position: static; - display: block; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } + md-sidenav.md-locked-open { + width: 304px; + min-width: 304px; } + md-sidenav.md-locked-open, md-sidenav.md-locked-open.md-closed, md-sidenav.md-locked-open.md-closed.md-sidenav-left, md-sidenav.md-locked-open.md-closed, md-sidenav.md-locked-open.md-closed.md-sidenav-right, md-sidenav.md-locked-open-remove.md-closed { + position: static; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); } + md-sidenav.md-locked-open-remove-active { + transition: width 0.3s cubic-bezier(0.55, 0, 0.55, 0.2), min-width 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); + width: 0; + min-width: 0; } + md-sidenav.md-closed.md-locked-open-add { + width: 0; + min-width: 0; + -webkit-transform: translate3d(0%, 0, 0); + transform: translate3d(0%, 0, 0); } + md-sidenav.md-closed.md-locked-open-add-active { + transition: width 0.3s cubic-bezier(0.55, 0, 0.55, 0.2), min-width 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); + width: 304px; + min-width: 304px; + -webkit-transform: translate3d(0%, 0, 0); + transform: translate3d(0%, 0, 0); } -.md-sidenav-backdrop.locked-open { +.md-sidenav-backdrop.md-locked-open { display: none; } .md-sidenav-left, md-sidenav { @@ -2443,6 +5324,11 @@ md-sidenav { -webkit-transform: translate3d(0%, 0, 0); transform: translate3d(0%, 0, 0); } +@media (max-width: 360px) { + md-sidenav { + width: 85%; } + } + @-webkit-keyframes sliderFocusThumb { 0% { opacity: 0; @@ -2509,6 +5395,7 @@ md-slider { position: absolute; left: 0; top: 0; + right: 0; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); transition: -webkit-transform 0.1s linear; @@ -2612,28 +5499,28 @@ md-slider { opacity: 0; } md-slider:focus { outline: none; } - md-slider.panning .md-thumb-container, md-slider.panning .md-track-fill { + md-slider.dragging .md-thumb-container, md-slider.dragging .md-track-fill { transition: none; } - md-slider:not([discrete]) { + md-slider:not([md-discrete]) { /* Hide the sign and ticks in non-discrete mode */ } - md-slider:not([discrete]) .md-track-ticks, md-slider:not([discrete]) .md-sign { + md-slider:not([md-discrete]) .md-track-ticks, md-slider:not([md-discrete]) .md-sign { display: none; } - md-slider:not([discrete]):not([disabled]):hover .md-thumb { + md-slider:not([md-discrete]):not([disabled]):hover .md-thumb { -webkit-transform: scale(0.6); transform: scale(0.6); } - md-slider:not([discrete]):not([disabled]):focus .md-focus-thumb, md-slider:not([discrete]):not([disabled]).active .md-focus-thumb { + md-slider:not([md-discrete]):not([disabled]):focus .md-focus-thumb, md-slider:not([md-discrete]):not([disabled]).active .md-focus-thumb { display: block; } - md-slider:not([discrete]):not([disabled]):focus .md-focus-ring, md-slider:not([discrete]):not([disabled]).active .md-focus-ring { + md-slider:not([md-discrete]):not([disabled]):focus .md-focus-ring, md-slider:not([md-discrete]):not([disabled]).active .md-focus-ring { -webkit-transform: scale(1); transform: scale(1); } - md-slider:not([discrete]):not([disabled]):focus .md-thumb, md-slider:not([discrete]):not([disabled]).active .md-thumb { + md-slider:not([md-discrete]):not([disabled]):focus .md-thumb, md-slider:not([md-discrete]):not([disabled]).active .md-thumb { -webkit-transform: scale(0.85); transform: scale(0.85); } - md-slider[discrete] { + md-slider[md-discrete] { /* Hide the focus thumb in discrete mode */ } - md-slider[discrete] .md-focus-thumb, md-slider[discrete] .md-focus-ring { + md-slider[md-discrete] .md-focus-thumb, md-slider[md-discrete] .md-focus-ring { display: none; } - md-slider[discrete]:not([disabled]):focus .md-sign, md-slider[discrete]:not([disabled]):focus .md-sign:after, md-slider[discrete]:not([disabled]).active .md-sign, md-slider[discrete]:not([disabled]).active .md-sign:after { + md-slider[md-discrete]:not([disabled]):focus .md-sign, md-slider[md-discrete]:not([disabled]):focus .md-sign:after, md-slider[md-discrete]:not([disabled]).active .md-sign, md-slider[md-discrete]:not([disabled]).active .md-sign:after { opacity: 1; -webkit-transform: translate3d(0, 0, 0) scale(1); transform: translate3d(0, 0, 0) scale(1); } @@ -2648,7 +5535,7 @@ md-slider { display: block; } .md-sticky-clone { - z-index: 1; + z-index: 2; top: 0; left: 0; right: 0; @@ -2708,53 +5595,98 @@ md-slider { top: 0; right: -16px; content: ''; } + .md-subheader:not(.md-sticky-no-effect).md-sticky-clone { + z-index: 2; } .md-subheader:not(.md-sticky-no-effect)[sticky-state="active"] { margin-top: -2px; } .md-subheader:not(.md-sticky-no-effect):not(.md-sticky-clone)[sticky-prev-state="active"]:after { -webkit-animation: subheaderStickyHoverOut 0.3s ease-out both; animation: subheaderStickyHoverOut 0.3s ease-out both; } + .md-subheader .md-subheader-content { + z-index: 1; + position: relative; } md-switch { - display: block; - position: relative; - height: 24px; - margin: 8px; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; - /* used also in _radio-button.scss */ } - md-switch .md-switch-bar { + margin: 15px; + white-space: nowrap; + cursor: pointer; + outline: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } + md-switch .md-container { + cursor: -webkit-grab; + cursor: grab; + width: 36px; + height: 24px; + position: relative; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + margin-right: 8px; } + md-switch:not([disabled]) .md-dragging, md-switch:not([disabled]).md-dragging .md-container { + cursor: -webkit-grabbing; + cursor: grabbing; } + md-switch .md-label { + border-color: transparent; + border-width: 0px; } + md-switch .md-bar { + left: 1px; + width: 34px; + top: 5px; + height: 14px; + border-radius: 8px; + position: absolute; } + md-switch .md-thumb-container { + top: 2px; + left: 0; + width: 16px; position: absolute; - left: 16px; - top: 12px; - width: 32px; - height: 1px; - pointer-events: none; } - md-switch .md-switch-thumb { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + z-index: 1; } + md-switch.md-checked .md-thumb-container { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); } + md-switch .md-thumb { position: absolute; margin: 0; left: 0; top: 0; - outline: none; } - md-switch .md-switch-thumb .md-container { + outline: none; + height: 20px; + width: 20px; + border-radius: 50%; + box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.26); } + md-switch .md-thumb .md-ripple-container { position: absolute; - transition: -webkit-transform 0.2s linear; - transition: transform 0.2s linear; - -webkit-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); } - md-switch .md-switch-thumb.md-checked .md-container { - -webkit-transform: translate3d(48px, 0, 0); - transform: translate3d(48px, 0, 0); } - md-switch .md-switch-thumb .md-label { - margin-left: 72px; } + display: block; + width: auto; + height: auto; + left: -20px; + top: -20px; + right: -20px; + bottom: -20px; } + md-switch:not(.md-dragging) .md-bar, md-switch:not(.md-dragging) .md-thumb-container, md-switch:not(.md-dragging) .md-thumb { + transition: all 0.5s cubic-bezier(0.35, 0, 0.25, 1); + transition-property: -webkit-transform, background-color; + transition-property: transform, background-color; } + md-switch:not(.md-dragging) .md-bar, md-switch:not(.md-dragging) .md-thumb { + transition-delay: 0.05s; } md-tabs { display: block; width: 100%; - font-weight: 500; } + font-weight: 500; + overflow: auto; } .md-header { width: 100%; @@ -2777,6 +5709,8 @@ md-tabs { width: 32px; min-height: 100%; cursor: pointer; + border: none; + background-color: transparent; background-repeat: no-repeat; background-position: center center; position: absolute; @@ -2808,7 +5742,7 @@ md-tabs[center] .md-header:not(.md-paginating) .md-header-items { right: 0; height: 100%; white-space: nowrap; - font-size: 16px; + font-size: 14px; font-weight: 500; text-transform: uppercase; margin: auto; } @@ -2817,67 +5751,102 @@ md-tabs[center] .md-header:not(.md-paginating) .md-header-items { display: -ms-flexbox; display: flex; box-sizing: border-box; - transition: -webkit-transform 0.2s linear; - transition: transform 0.2s linear; + transition: -webkit-transform 0.5s cubic-bezier(0.35, 0, 0.25, 1); + transition: transform 0.5s cubic-bezier(0.35, 0, 0.25, 1); -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); - width: 100%; - height: 100%; } + height: 100%; + width: 99999px; } .md-tabs-content { overflow: hidden; - width: 100%; } + width: 100%; + position: relative; } .md-tabs-content .md-tab-content { height: 100%; } + .md-tabs-content .md-tab-content.ng-hide.ng-animate { + display: block !important; } + .md-tabs-content .md-tab-content.ng-animate { + transition: -webkit-transform 0.5s cubic-bezier(0.35, 0, 0.25, 1); + transition: transform 0.5s cubic-bezier(0.35, 0, 0.25, 1); + -webkit-transform: translateX(0); + transform: translateX(0); } + .md-tabs-content .md-tab-content.ng-animate.ng-hide-add { + -webkit-transform: translateX(-100%); + transform: translateX(-100%); } + .md-tabs-content .md-tab-content.ng-animate.ng-hide-add.md-transition-rtl { + -webkit-transform: translateX(100%); + transform: translateX(100%); } + .md-tabs-content .md-tab-content.ng-animate.ng-hide-remove { + position: absolute; + -webkit-transform: translateX(100%); + transform: translateX(100%); + top: 0; + left: 0; + right: 0; + bottom: 0; } + .md-tabs-content .md-tab-content.ng-animate.ng-hide-remove.md-transition-rtl { + -webkit-transform: translateX(-100%); + transform: translateX(-100%); } + .md-tabs-content .md-tab-content.ng-animate.ng-hide-remove.ng-hide-remove-active { + -webkit-transform: translateX(0); + transform: translateX(0); } md-tabs-ink-bar { + z-index: 1; + display: none; position: absolute; left: 0; bottom: 0; box-sizing: border-box; - transition: all 0.2s linear; height: 2px; - margin-top: -2px; } + margin-top: -2px; + -webkit-transform: scaleX(1); + transform: scaleX(1); + -webkit-transform-origin: 0 0; + transform-origin: 0 0; } + md-tabs-ink-bar.md-transition-right { + transition: right 0.25s cubic-bezier(0.35, 0, 0.25, 1), left 0.25s cubic-bezier(0.35, 0, 0.25, 1) 0.075s; } + md-tabs-ink-bar.md-transition-left { + transition: right 0.25s cubic-bezier(0.35, 0, 0.25, 1) 0.075s, left 0.25s cubic-bezier(0.35, 0, 0.25, 1); } md-tab { display: -webkit-flex; display: -ms-flexbox; display: flex; - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; - box-sizing: border-box; position: relative; z-index: 0; overflow: hidden; height: 100%; text-align: center; cursor: pointer; - min-width: 96px; - border: 1px dotted transparent; + padding: 20px 24px; + box-sizing: border-box; + transition: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } + md-tab.md-tab-themed { + transition: background 0.35s cubic-bezier(0.35, 0, 0.25, 1), color 0.35s cubic-bezier(0.35, 0, 0.25, 1); } md-tab[disabled] { pointer-events: none; cursor: default; } md-tab:focus { outline: none; } md-tab md-tab-label { - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; + -webkit-flex: 1 1 auto; + -ms-flex: 1 1 auto; + flex: 1 1 auto; z-index: 100; opacity: 1; - overflow: hidden; - text-overflow: ellipsis; } + overflow: hidden; } md-input-group label, .md-input-group label { display: block; @@ -2910,11 +5879,11 @@ md-input-group, .md-input-group { transform: translate3d(0, 22px, 0); -webkit-transform-origin: left center; transform-origin: left center; - transition: all ease-out 150ms; - transition: all ease-out 150ms; } + transition: all 0.15s cubic-bezier(0.35, 0, 0.25, 1); + transition: all 0.15s cubic-bezier(0.35, 0, 0.25, 1); } md-input-group input, md-input-group textarea, .md-input-group input, .md-input-group textarea { border-bottom-width: 1px; - transition: all ease-out 150ms; } + transition: all 0.15s cubic-bezier(0.35, 0, 0.25, 1); } md-input-group.md-input-focused label, .md-input-group.md-input-focused label { -webkit-transform: translate3d(0, 4px, 0) scale(0.75); transform: translate3d(0, 4px, 0) scale(0.75); } @@ -2944,12 +5913,13 @@ md-input-group, .md-input-group { transform: translate3d(0, 22px, 0); -webkit-transform-origin: left center; transform-origin: left center; - transition: all ease-out 150ms; } + transition: all 0.15s cubic-bezier(0.35, 0, 0.25, 1); } md-toast { display: -webkit-flex; display: -ms-flexbox; display: flex; + position: absolute; box-sizing: border-box; -webkit-align-items: center; -ms-flex-align: center; @@ -2961,22 +5931,21 @@ md-toast { border-radius: 2px; font-size: 14px; cursor: default; - position: fixed; max-width: 879px; max-height: 40px; height: 24px; - z-index: 9; + z-index: 90; opacity: 1; -webkit-transform: translate3d(0, 0, 0) rotateZ(0deg); transform: translate3d(0, 0, 0) rotateZ(0deg); - transition: 0.2s linear; - transition-property: -webkit-transform, opacity; - transition-property: transform, opacity; + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); /* Transition differently when swiping */ } md-toast.md-capsule { border-radius: 24px; } + md-toast.ng-leave-active { + transition: all 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); } md-toast.md-swipeleft, md-toast.md-swiperight, md-toast.md-swipeup, md-toast.md-swipedown { - transition: 0.15s ease-out; } + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); } md-toast.ng-enter { -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0); @@ -3003,7 +5972,7 @@ md-toast { transform: translate3d(100%, 0%, 0); } md-toast .md-action { line-height: 19px; - padding-left: 24px; + margin-left: 24px; cursor: pointer; text-transform: uppercase; float: right; } @@ -3062,13 +6031,20 @@ md-toolbar { z-index: 2; font-size: 1.3em; min-height: 64px; - width: 100%; } + width: 100%; + box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.26); } md-toolbar.md-tall { - height: 192px; } + height: 128px; + min-height: 128px; + max-height: 128px; } md-toolbar.md-medium-tall { - height: 88px; } + height: 88px; + min-height: 88px; + max-height: 88px; } md-toolbar.md-medium-tall .md-toolbar-tools { - height: 48px; } + height: 48px; + min-height: 48px; + max-height: 48px; } md-toolbar .md-indent { margin-left: 64px; } @@ -3084,20 +6060,29 @@ md-toolbar { flex-direction: row; width: 100%; height: 64px; + max-height: 64px; font-size: inherit; font-weight: normal; - padding: 0 10px; + padding: 0 16px; margin: 0; } .md-toolbar-tools > * { - font-size: inherit; - margin: 0 8px; } + font-size: inherit; } .md-toolbar-tools h2, .md-toolbar-tools h3 { font-weight: normal; } .md-toolbar-tools a { color: inherit; text-decoration: none; } - .md-toolbar-tools md-button { - font-size: 16px; } + .md-toolbar-tools .fill-height { + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + .md-toolbar-tools .md-tools { + margin-left: auto; } + .md-toolbar-tools .md-button { + font-size: 14px; } @-webkit-keyframes tooltipBackgroundShow { 0% { @@ -3144,7 +6129,7 @@ md-toolbar { md-tooltip { position: absolute; font-size: 14px; - z-index: 6; + z-index: 100; overflow: hidden; pointer-events: none; border-radius: 4px; @@ -3181,11 +6166,10 @@ md-tooltip { background: transparent; opacity: 0.3; transition: inherit; } - md-tooltip.md-show, md-tooltip.md-hide { - transition: 0.2s ease-out; - transition-property: -webkit-transform, opacity; - transition-property: transform, opacity; } + md-tooltip.md-hide { + transition: all 0.3s cubic-bezier(0.55, 0, 0.55, 0.2); } md-tooltip.md-show { + transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); pointer-events: auto; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } @@ -3242,202 +6226,3 @@ md-tooltip { .md-whiteframe-z5 { box-shadow: 0px 27px 24px 0 rgba(0, 0, 0, 0.2); } - -md-backdrop.md-opaque.md-default-theme { - background-color: rgba(0, 0, 0, 0.3); } - -md-bottom-sheet.md-default-theme { - background-color: #fafafa; - border-top-color: #bdbdbd; } - md-bottom-sheet.md-default-theme.md-list md-item { - color: rgba(0, 0, 0, 0.54); } - md-bottom-sheet.md-default-theme .md-subheader { - background-color: #fafafa; } - md-bottom-sheet.md-default-theme .md-subheader { - color: rgba(0, 0, 0, 0.54); } - -md-button.md-default-theme { - border-radius: 3px; } - md-button.md-default-theme[disabled] { - background-color: rgba(158, 158, 158, 0.145) !important; - color: #9e9e9e !important; - fill: #9e9e9e !important; - cursor: auto; } - md-button.md-default-theme:not([disabled]):hover, md-button.md-default-theme:not([disabled]).focus { - background-color: rgba(158, 158, 158, 0.2); } - md-button.md-default-theme.md-fab { - border-radius: 50%; } - md-button.md-default-theme.md-primary { - color: #29b6f6; - fill: #29b6f6; } - md-button.md-default-theme.md-warn { - color: #e84e40; - fill: #e84e40; } - md-button.md-default-theme.md-raised, md-button.md-default-theme.md-fab { - background-color: rgba(158, 158, 158, 0.185); } - md-button.md-default-theme.md-raised:not([disabled]):hover, md-button.md-default-theme.md-raised:not([disabled]).focus, md-button.md-default-theme.md-fab:not([disabled]):hover, md-button.md-default-theme.md-fab:not([disabled]).focus { - background-color: rgba(158, 158, 158, 0.3); } - md-button.md-default-theme.md-raised.md-primary, md-button.md-default-theme.md-fab.md-primary { - color: white; - background-color: #03a9f4; } - md-button.md-default-theme.md-raised.md-primary:not([disabled]):hover, md-button.md-default-theme.md-raised.md-primary:not([disabled]).focus, md-button.md-default-theme.md-fab.md-primary:not([disabled]):hover, md-button.md-default-theme.md-fab.md-primary:not([disabled]).focus { - background-color: #039be5; } - md-button.md-default-theme.md-raised.md-warn, md-button.md-default-theme.md-fab.md-warn { - color: white; - background-color: #e51c23; } - md-button.md-default-theme.md-raised.md-warn:not([disabled]):hover, md-button.md-default-theme.md-raised.md-warn:not([disabled]).focus, md-button.md-default-theme.md-fab.md-warn:not([disabled]):hover, md-button.md-default-theme.md-fab.md-warn:not([disabled]).focus { - background-color: #d01716; } - -md-card.md-default-theme { - border-radius: 2px; } - md-card.md-default-theme .md-card-image { - border-radius: 2px 2px 0 0; } - -md-checkbox.md-default-theme .md-ripple { - color: #0a8f08; } -md-checkbox.md-default-theme.md-checked .md-ripple { - color: #757575; } -md-checkbox.md-default-theme .md-icon { - border-color: rgba(0, 0, 0, 0.54); } -md-checkbox.md-default-theme.md-checked .md-icon { - background-color: rgba(43, 175, 43, 0.87); } -md-checkbox.md-default-theme.md-checked .md-icon:after { - border-color: #eeeeee; } -md-checkbox.md-default-theme[disabled] .md-icon { - border-color: rgba(0, 0, 0, 0.26); } -md-checkbox.md-default-theme[disabled].md-checked .md-icon { - background-color: rgba(0, 0, 0, 0.26); } - -md-content.md-default-theme { - background-color: #ffffff; } - -md-dialog.md-default-theme { - border-radius: 4px; - background-color: #ffffff; } - md-dialog.md-default-theme.md-content-overflow .md-actions { - border-top-color: rgba(0, 0, 0, 0.12); } - -md-divider.md-default-theme { - border-top-color: rgba(0, 0, 0, 0.12); } - -md-progress-circular.md-default-theme { - background-color: transparent; } - md-progress-circular.md-default-theme .md-circle .md-mask .md-fill { - background-color: #03a9f4; } - md-progress-circular.md-default-theme .md-inset { - background-color: #ffffff; } - -md-progress-linear.md-default-theme .md-container { - background-color: #b3e5fc; } -md-progress-linear.md-default-theme .md-bar { - background-color: #03a9f4; } -md-progress-linear.md-default-theme[mode=buffer] .md-dashed:before { - background: radial-gradient(#b3e5fc 0%, #b3e5fc 16%, transparent 42%); } -md-progress-linear.md-default-theme[mode=buffer] .md-bar1 { - background-color: #b3e5fc; } - -md-radio-button.md-default-theme .md-container .md-ripple, md-switch.md-default-theme .md-switch-thumb .md-container .md-ripple { - color: #0a8f08; } -md-radio-button.md-default-theme .md-off, md-switch.md-default-theme .md-switch-thumb .md-off { - border-color: rgba(0, 0, 0, 0.54); } -md-radio-button.md-default-theme .md-on, md-switch.md-default-theme .md-switch-thumb .md-on { - background-color: rgba(43, 175, 43, 0.87); } -md-radio-button.md-default-theme.md-checked .md-off, md-switch.md-default-theme .md-switch-thumb.md-checked .md-off { - border-color: rgba(43, 175, 43, 0.87); } -md-radio-button.md-default-theme.md-checked .md-ink-ripple, md-switch.md-default-theme .md-switch-thumb.md-checked .md-ink-ripple { - color: rgba(43, 175, 43, 0.87); } - -md-radio-group.md-default-theme:focus { - border-color: rgba(0, 0, 0, 0.73); } - -md-slider.md-default-theme .md-track { - background-color: #c8c8c8; } -md-slider.md-default-theme .md-track-fill { - background-color: #03a9f4; } -md-slider.md-default-theme .md-thumb:after { - border-color: #03a9f4; - background-color: #03a9f4; } -md-slider.md-default-theme .md-sign { - background-color: #03a9f4; } - md-slider.md-default-theme .md-sign:after { - border-top-color: #03a9f4; } -md-slider.md-default-theme .md-thumb-text { - color: white; } -md-slider.md-default-theme .md-focus-thumb { - background-color: rgba(0, 0, 0, 0.54); } -md-slider.md-default-theme .md-focus-ring { - border-color: rgba(0, 0, 0, 0.12); } -md-slider.md-default-theme .md-disabled-thumb { - border-color: #ffffff; } -md-slider.md-default-theme.md-min .md-thumb:after { - background-color: #ffffff; } -md-slider.md-default-theme[disabled] .md-thumb:after { - border-color: #bdbdbd; } -md-slider.md-default-theme[disabled]:not(.md-min) .md-thumb:after { - background-color: #bdbdbd; } - -.md-subheader.md-default-theme { - color: rgba(0, 0, 0, 0.54); - background-color: #ffffff; } - .md-subheader.md-default-theme.md-primary { - color: #03a9f4; } - -md-switch.md-default-theme .md-switch-bar { - background-color: rgba(0, 0, 0, 0.54); } -md-switch.md-default-theme .md-switch-thumb:focus .md-label { - border: 1px dotted black; } - -md-tabs.md-default-theme .md-header { - background-color: #03a9f4; } -md-tabs.md-default-theme md-tabs-ink-bar { - background: #ffff85; } -md-tabs.md-default-theme md-tab { - color: #b3e5fc; } - md-tabs.md-default-theme md-tab.active { - color: white; } - md-tabs.md-default-theme md-tab[disabled] { - color: rgba(0, 0, 0, 0.12); } - md-tabs.md-default-theme md-tab:focus { - border-color: rgba(0, 0, 0, 0.73); } - md-tabs.md-default-theme md-tab .md-ripple-container { - color: #ffff85; } - -md-input-group.md-default-theme input, md-input-group.md-default-theme textarea { - text-shadow: none; } - md-input-group.md-default-theme input:-ms-input-placeholder, md-input-group.md-default-theme textarea:-ms-input-placeholder { - color: rgba(0, 0, 0, 0.26); } - md-input-group.md-default-theme input::-webkit-input-placeholder, md-input-group.md-default-theme textarea::-webkit-input-placeholder { - color: rgba(0, 0, 0, 0.26); } -md-input-group.md-default-theme label { - text-shadow: none; - color: rgba(0, 0, 0, 0.26); } -md-input-group.md-default-theme input, md-input-group.md-default-theme textarea { - color: rgba(0, 0, 0, 0.73); - border-color: rgba(0, 0, 0, 0.12); } -md-input-group.md-default-theme.md-input-focused input, md-input-group.md-default-theme.md-input-focused textarea { - border-color: #03a9f4; } -md-input-group.md-default-theme.md-input-focused label { - color: #03a9f4; } -md-input-group.md-default-theme.md-input-has-value:not(.md-input-focused) label { - color: rgba(0, 0, 0, 0.372); } -md-input-group.md-default-theme[disabled] input, md-input-group.md-default-theme[disabled] textarea { - border-bottom-color: rgba(0, 0, 0, 0.12); - color: rgba(0, 0, 0, 0.26); - background-image: linear-gradient(to right, rgba(0, 0, 0, 0.19) 0%, rgba(0, 0, 0, 0.19) 50%, rgba(0, 0, 0, 0) 0%); } - -md-toast.md-default-theme { - background-color: #323232; - color: white; } - md-toast.md-default-theme md-button { - color: white; } - md-toast.md-default-theme .md-action { - color: #40c4ff; } - -md-toolbar.md-default-theme { - background-color: #03a9f4; - color: white; } - -md-tooltip.md-default-theme { - color: #ffffff; } - md-tooltip.md-default-theme .md-background { - background-color: rgba(0, 0, 0, 0.52); } diff --git a/public/app/bower_components/angular-material/angular-material.js b/public/app/bower_components/angular-material/angular-material.js index 7c68e620..699f86e1 100644 --- a/public/app/bower_components/angular-material/angular-material.js +++ b/public/app/bower_components/angular-material/angular-material.js @@ -2,143 +2,496 @@ * Angular Material Design * https://github.com/angular/material * @license MIT - * v0.5.0 + * v0.7.1 + */ +angular.module('ngMaterial', ["ng","ngAnimate","ngAria","material.core","material.core.theming.palette","material.core.theming","material.components.backdrop","material.components.bottomSheet","material.components.button","material.components.card","material.components.checkbox","material.components.content","material.components.dialog","material.components.divider","material.components.icon","material.components.input","material.components.list","material.components.progressCircular","material.components.progressLinear","material.components.radioButton","material.components.sidenav","material.components.slider","material.components.sticky","material.components.subheader","material.components.swipe","material.components.switch","material.components.tabs","material.components.textField","material.components.toast","material.components.toolbar","material.components.tooltip","material.components.whiteframe"]); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 */ (function() { -angular.module('ngMaterial', ["ng","ngAnimate","ngAria","material.core","material.decorators","material.animations","material.components.backdrop","material.components.bottomSheet","material.components.button","material.components.card","material.components.checkbox","material.components.content","material.components.dialog","material.components.divider","material.components.icon","material.components.list","material.components.progressCircular","material.components.progressLinear","material.components.radioButton","material.components.sidenav","material.components.slider","material.components.sticky","material.components.subheader","material.components.swipe","material.components.switch","material.components.tabs","material.components.textField","material.components.toast","material.components.toolbar","material.components.tooltip","material.components.whiteframe","material.services.aria","material.services.attrBind","material.services.compiler","material.services.interimElement","material.services.media","material.services.registry","material.services.theming"]);})(); +'use strict'; -(function() { +/** + * Initialization function that validates environment + * requirements. + */ +angular + .module('material.core', ['material.core.theming']) + .config(MdCoreConfigure); + + +function MdCoreConfigure($provide, $mdThemingProvider) { + $provide.decorator('$$rAF', ["$delegate", rAFDecorator]); + + $mdThemingProvider.theme('default') + .primaryPalette('indigo') + .accentPalette('pink') + .warnPalette('red') + .backgroundPalette('grey'); +} +MdCoreConfigure.$inject = ["$provide", "$mdThemingProvider"]; + +function rAFDecorator( $delegate ) { /** - * Angular Mds initialization function that validates environment - * requirements. + * Use this to throttle events that come in often. + * The throttled function will always use the *last* invocation before the + * coming frame. + * + * For example, window resize events that fire many times a second: + * If we set to use an raf-throttled callback on window resize, then + * our callback will only be fired once per frame, with the last resize + * event that happened before that frame. + * + * @param {function} callback function to debounce */ - angular.module('material.core', [] ) - .run(function validateEnvironment() { + $delegate.throttle = function(cb) { + var queueArgs, alreadyQueued, queueCb, context; + return function debounced() { + queueArgs = arguments; + context = this; + queueCb = cb; + if (!alreadyQueued) { + alreadyQueued = true; + $delegate(function() { + queueCb.apply(context, queueArgs); + alreadyQueued = false; + }); + } + }; + }; + return $delegate; +} - if (typeof Hammer === 'undefined') { - throw new Error( - 'ngMaterial requires HammerJS to be preloaded.' - ); +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + +angular.module('material.core') +.factory('$mdConstant', MdConstantFactory); + +function MdConstantFactory($$rAF, $sniffer) { + + var webkit = /webkit/i.test($sniffer.vendorPrefix); + function vendorProperty(name) { + return webkit ? ('webkit' + name.charAt(0).toUpperCase() + name.substring(1)) : name; + } + + return { + KEY_CODE: { + ENTER: 13, + ESCAPE: 27, + SPACE: 32, + LEFT_ARROW : 37, + UP_ARROW : 38, + RIGHT_ARROW : 39, + DOWN_ARROW : 40 + }, + CSS: { + /* Constants */ + TRANSITIONEND: 'transitionend' + (webkit ? ' webkitTransitionEnd' : ''), + ANIMATIONEND: 'animationend' + (webkit ? ' webkitAnimationEnd' : ''), + + TRANSFORM: vendorProperty('transform'), + TRANSITION: vendorProperty('transition'), + TRANSITION_DURATION: vendorProperty('transitionDuration'), + ANIMATION_PLAY_STATE: vendorProperty('animationPlayState'), + ANIMATION_DURATION: vendorProperty('animationDuration'), + ANIMATION_NAME: vendorProperty('animationName'), + ANIMATION_TIMING: vendorProperty('animationTimingFunction'), + ANIMATION_DIRECTION: vendorProperty('animationDirection') + }, + MEDIA: { + 'sm': '(max-width: 600px)', + 'gt-sm': '(min-width: 600px)', + 'md': '(min-width: 600px) and (max-width: 960px)', + 'gt-md': '(min-width: 960px)', + 'lg': '(min-width: 960px) and (max-width: 1200px)', + 'gt-lg': '(min-width: 1200px)' + } + }; +} +MdConstantFactory.$inject = ["$$rAF", "$sniffer"]; + +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function(){ + + angular + .module('material.core') + .config( ["$provide", function($provide){ + $provide.decorator('$mdUtil', ['$delegate', function ($delegate){ + /** + * Inject the iterator facade to easily support iteration and accessors + * @see iterator below + */ + $delegate.iterator = Iterator; + + return $delegate; + } + ]); + }]); + + /** + * iterator is a list facade to easily support iteration and accessors + * + * @param items Array list which this iterator will enumerate + * @param reloop Boolean enables iterator to consider the list as an endless reloop + */ + function Iterator(items, reloop) { + var trueFn = function() { return true; }; + + reloop = !!reloop; + var _items = items || [ ]; + + // Published API + return { + items: getItems, + count: count, + + inRange: inRange, + contains: contains, + indexOf: indexOf, + itemAt: itemAt, + + findBy: findBy, + + add: add, + remove: remove, + + first: first, + last: last, + next: angular.bind(null, findSubsequentItem, false), + previous: angular.bind(null, findSubsequentItem, true), + + hasPrevious: hasPrevious, + hasNext: hasNext + + }; + + /** + * Publish copy of the enumerable set + * @returns {Array|*} + */ + function getItems() { + return [].concat(_items); + } + + /** + * Determine length of the list + * @returns {Array.length|*|number} + */ + function count() { + return _items.length; + } + + /** + * Is the index specified valid + * @param index + * @returns {Array.length|*|number|boolean} + */ + function inRange(index) { + return _items.length && ( index > -1 ) && (index < _items.length ); + } + + /** + * Can the iterator proceed to the next item in the list; relative to + * the specified item. + * + * @param item + * @returns {Array.length|*|number|boolean} + */ + function hasNext(item) { + return item ? inRange(indexOf(item) + 1) : false; + } + + /** + * Can the iterator proceed to the previous item in the list; relative to + * the specified item. + * + * @param item + * @returns {Array.length|*|number|boolean} + */ + function hasPrevious(item) { + return item ? inRange(indexOf(item) - 1) : false; + } + + /** + * Get item at specified index/position + * @param index + * @returns {*} + */ + function itemAt(index) { + return inRange(index) ? _items[index] : null; + } + + /** + * Find all elements matching the key/value pair + * otherwise return null + * + * @param val + * @param key + * + * @return array + */ + function findBy(key, val) { + return _items.filter(function(item) { + return item[key] === val; + }); + } + + /** + * Add item to list + * @param item + * @param index + * @returns {*} + */ + function add(item, index) { + if ( !item ) return -1; + + if (!angular.isNumber(index)) { + index = _items.length; } - }); + _items.splice(index, 0, item); + return indexOf(item); + } + /** + * Remove item from list... + * @param item + */ + function remove(item) { + if ( contains(item) ){ + _items.splice(indexOf(item), 1); + } + } + /** + * Get the zero-based index of the target item + * @param item + * @returns {*} + */ + function indexOf(item) { + return _items.indexOf(item); + } -})(); + /** + * Boolean existence check + * @param item + * @returns {boolean} + */ + function contains(item) { + return item && (indexOf(item) > -1); + } -(function() { -angular.module('material.core') -.constant('$mdConstant', { - KEY_CODE: { - ENTER: 13, - ESCAPE: 27, - SPACE: 32, - LEFT_ARROW : 37, - UP_ARROW : 38, - RIGHT_ARROW : 39, - DOWN_ARROW : 40 + /** + * Return first item in the list + * @returns {*} + */ + function first() { + return _items.length ? _items[0] : null; + } + + /** + * Return last item in the list... + * @returns {*} + */ + function last() { + return _items.length ? _items[_items.length - 1] : null; + } + + /** + * Find the next item. If reloop is true and at the end of the list, it will + * go back to the first item. If given ,the `validate` callback will be used + * determine whether the next item is valid. If not valid, it will try to find the + * next item again. + * @param item + * @param {optional} validate Validate function + * @param {optional} limit Recursion limit + * @returns {*} + */ + function findSubsequentItem(backwards, item, validate, limit) { + validate = validate || trueFn; + + var curIndex = indexOf(item); + if (!inRange(curIndex)) { + return null; + } + + var nextIndex = curIndex + (backwards ? -1 : 1); + var foundItem = null; + if (inRange(nextIndex)) { + foundItem = _items[nextIndex]; + } else if (reloop) { + foundItem = backwards ? last() : first(); + nextIndex = indexOf(foundItem); + } + + if ((foundItem === null) || (nextIndex === limit)) { + return null; + } + + if (angular.isUndefined(limit)) { + limit = nextIndex; + } + + return validate(foundItem) ? foundItem : findSubsequentItem(backwards, foundItem, validate, limit); + } } -}); + })(); -(function() { +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ angular.module('material.core') -.factory('$mdUtil', ['$cacheFactory', function($cacheFactory) { - var SPECIAL_CHARS_REGEXP = /([\:\-\_]+(.))/g; - /* for nextUid() function below */ - var uid = ['0','0','0']; +.factory('$mdMedia', mdMediaFactory); +/** + * Exposes a function on the '$mdMedia' service which will return true or false, + * whether the given media query matches. Re-evaluates on resize. Allows presets + * for 'sm', 'md', 'lg'. + * + * @example $mdMedia('sm') == true if device-width <= sm + * @example $mdMedia('(min-width: 1200px)') == true if device-width >= 1200px + * @example $mdMedia('max-width: 300px') == true if device-width <= 300px (sanitizes input, adding parens) + */ +function mdMediaFactory($mdConstant, $rootScope, $window) { + var queries = {}; + var results = {}; + + return $mdMedia; + + function $mdMedia(query) { + var validated = queries[query]; + if (angular.isUndefined(validated)) { + validated = queries[query] = validate(query); + } + + var result = results[validated]; + if (angular.isUndefined(result)) { + result = add(validated); + } + + return result; + } + + function validate(query) { + return $mdConstant.MEDIA[query] || + ((query.charAt(0) !== '(') ? ('(' + query + ')') : query); + } + + function add(query) { + var result = $window.matchMedia(query); + result.addListener(onQueryChange); + return (results[result.media] = !!result.matches); + } + + function onQueryChange() { + var query = this; + $rootScope.$evalAsync(function() { + results[query.media] = !!query.matches; + }); + } + +} +mdMediaFactory.$inject = ["$mdConstant", "$rootScope", "$window"]; + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + +/* + * This var has to be outside the angular factory, otherwise when + * there are multiple material apps on the same page, each app + * will create its own instance of this array and the app's IDs + * will not be unique. + */ +var nextUniqueId = ['0','0','0']; + +angular.module('material.core') +.factory('$mdUtil', ["$document", "$timeout", function($document, $timeout) { var Util; + return Util = { now: window.performance ? angular.bind(window.performance, window.performance.now) : Date.now, - /** - * Checks if the specified element has an ancestor (ancestor being parent, grandparent, etc) - * with the given attribute defined. - * - * Also pass in an optional `limit` (levels of ancestry to scan), default 4. - */ - ancestorHasAttribute: function ancestorHasAttribute(element, attrName, limit) { - limit = limit || 4; - var current = element; - while (limit-- && current.length) { - if (current[0].hasAttribute && current[0].hasAttribute(attrName)) { - return true; - } - current = current.parent(); - } - return false; + elementRect: function(element, offsetParent) { + var node = element[0]; + offsetParent = offsetParent || node.offsetParent || document.body; + offsetParent = offsetParent[0] || offsetParent; + var nodeRect = node.getBoundingClientRect(); + var parentRect = offsetParent.getBoundingClientRect(); + return { + left: nodeRect.left - parentRect.left + offsetParent.scrollLeft, + top: nodeRect.top - parentRect.top + offsetParent.scrollTop, + width: nodeRect.width, + height: nodeRect.height + }; }, - /** - * Checks to see if the element or its parents are disabled. - * @param element DOM element to start scanning for `disabled` attribute - * @param limit Number of parent levels that should be scanned; defaults to 4 - * @returns {*} Boolean - */ - isParentDisabled: function isParentDisabled(element, limit) { - return Util.ancestorHasAttribute(element, 'disabled', limit); + fakeNgModel: function() { + return { + $fake: true, + $setViewValue: function(value) { + this.$viewValue = value; + this.$render(value); + this.$viewChangeListeners.forEach(function(cb) { cb(); }); + }, + $isEmpty: function(value) { + return (''+value).length === 0; + }, + $parsers: [], + $formatters: [], + $viewChangeListeners: [], + $render: angular.noop + }; }, - /** - * Checks if two elements have the same parent - */ - elementIsSibling: function elementIsSibling(element, otherElement) { - return element.parent().length && - (element.parent()[0] === otherElement.parent()[0]); - }, - - /** - * Converts snake_case to camelCase. - * @param name Name to normalize - */ - camelCase: function camelCase(name) { - return name - .replace(SPECIAL_CHARS_REGEXP, function(_, separator, letter, offset) { - return offset ? letter.toUpperCase() : letter; - }); - }, - - /** - * Selects 'n' words from a string - * for use in an HTML attribute - */ - stringFromTextBody: function stringFromTextBody(textBody, numWords) { - var string = textBody.trim(); - - if(string.split(/\s+/).length > numWords){ - string = textBody.split(/\s+/).slice(1, (numWords + 1)).join(" ") + '...'; - } - return string; - }, - - /** - * Publish the iterator facade to easily support iteration and accessors - * @see iterator below - */ - iterator: iterator, - - /** - * @see cacheFactory below - */ - cacheFactory: cacheFactory, - // Returns a function, that, as long as it continues to be invoked, will not // be triggered. The function will be called after it stops being called for - // N milliseconds. If `immediate` is passed, trigger the function on the - // leading edge, instead of the trailing. - debounce: function debounce(func, wait, immediate) { - var timeout; + // N milliseconds. + // @param wait Integer value of msecs to delay (since last debounce reset); default value 10 msecs + // @param invokeApply should the $timeout trigger $digest() dirty checking + debounce: function (func, wait, scope, invokeApply) { + var timer; + return function debounced() { - var context = this, args = arguments; - clearTimeout(timeout); - timeout = setTimeout(function() { - timeout = null; - if (!immediate) func.apply(context, args); - }, wait); - if (immediate && !timeout) func.apply(context, args); + var context = scope, + args = Array.prototype.slice.call(arguments); + + $timeout.cancel(timer); + timer = $timeout(function() { + + timer = undefined; + func.apply(context, args); + + }, wait || 10, invokeApply ); }; }, @@ -152,30 +505,13 @@ angular.module('material.core') var args = arguments; var now = Util.now(); - if (!recent || recent - now > delay) { + if (!recent || (now - recent > delay)) { func.apply(context, args); recent = now; } }; }, - /** - * Wraps an element with a tag - * - * @param el element to wrap - * @param tag tag to wrap it with - * @param [className] optional class to apply to the wrapper - * @returns new element - * - */ - wrap: function(el, tag, className) { - if(el.hasOwnProperty(0)) { el = el[0]; } - var wrapper = document.createElement(tag); - wrapper.className += className; - wrapper.appendChild(el.parentNode.replaceChild(wrapper, el)); - return angular.element(wrapper); - }, - /** * nextUid, from angular.js. * A consistent way of creating unique IDs in angular. The ID is a sequence of alpha numeric @@ -186,25 +522,25 @@ angular.module('material.core') * @returns an unique alpha-numeric string */ nextUid: function() { - var index = uid.length; + var index = nextUniqueId.length; var digit; while(index) { index--; - digit = uid[index].charCodeAt(0); + digit = nextUniqueId[index].charCodeAt(0); if (digit == 57 /*'9'*/) { - uid[index] = 'A'; - return uid.join(''); + nextUniqueId[index] = 'A'; + return nextUniqueId.join(''); } if (digit == 90 /*'Z'*/) { - uid[index] = '0'; + nextUniqueId[index] = '0'; } else { - uid[index] = String.fromCharCode(digit + 1); - return uid.join(''); + nextUniqueId[index] = String.fromCharCode(digit + 1); + return nextUniqueId.join(''); } } - uid.unshift('0'); - return uid.join(''); + nextUniqueId.unshift('0'); + return nextUniqueId.join(''); }, // Stop watchers and events from firing on a scope without destroying it, @@ -249,252 +585,27 @@ angular.module('material.core') } else { parent.$$childHead = parent.$$childTail = child; } + }, + /* + * getClosest replicates jQuery.closest() to walk up the DOM tree until it finds a matching nodeName + * + * @param el Element to start walking the DOM from + * @param tagName Tag name to find closest to el, such as 'form' + */ + getClosest: function getClosest(el, tagName) { + tagName = tagName.toUpperCase(); + do { + if (el.nodeName === tagName) { + return el; + } + } while (el = el.parentNode); + return null; } }; - /* - * iterator is a list facade to easily support iteration and accessors - * - * @param items Array list which this iterator will enumerate - * @param reloop Boolean enables iterator to consider the list as an endless reloop - */ - function iterator(items, reloop) { - var trueFn = function() { return true; }; - - reloop = !!reloop; - var _items = items || [ ]; - - // Published API - return { - items: getItems, - count: count, - - inRange: inRange, - contains: contains, - indexOf: indexOf, - itemAt: itemAt, - - findBy: findBy, - - add: add, - remove: remove, - - first: first, - last: last, - next: next, - previous: previous, - - hasPrevious: hasPrevious, - hasNext: hasNext - - }; - - /* - * Publish copy of the enumerable set - * @returns {Array|*} - */ - function getItems() { - return [].concat(_items); - } - - /* - * Determine length of the list - * @returns {Array.length|*|number} - */ - function count() { - return _items.length; - } - - /* - * Is the index specified valid - * @param index - * @returns {Array.length|*|number|boolean} - */ - function inRange(index) { - return _items.length && ( index > -1 ) && (index < _items.length ); - } - - /* - * Can the iterator proceed to the next item in the list; relative to - * the specified item. - * - * @param item - * @returns {Array.length|*|number|boolean} - */ - function hasNext(item) { - return item ? inRange(indexOf(item) + 1) : false; - } - - /* - * Can the iterator proceed to the previous item in the list; relative to - * the specified item. - * - * @param item - * @returns {Array.length|*|number|boolean} - */ - function hasPrevious(item) { - return item ? inRange(indexOf(item) - 1) : false; - } - - /* - * Get item at specified index/position - * @param index - * @returns {*} - */ - function itemAt(index) { - return inRange(index) ? _items[index] : null; - } - - /* - * Find all elements matching the key/value pair - * otherwise return null - * - * @param val - * @param key - * - * @return array - */ - function findBy(key, val) { - return _items.filter(function(item) { - return item[key] === val; - }); - } - - /* - * Add item to list - * @param item - * @param index - * @returns {*} - */ - function add(item, index) { - if ( !item ) return -1; - - if (!angular.isNumber(index)) { - index = _items.length; - } - - _items.splice(index, 0, item); - - return indexOf(item); - } - - /* - * Remove item from list... - * @param item - */ - function remove(item) { - if ( contains(item) ){ - _items.splice(indexOf(item), 1); - } - } - - /* - * Get the zero-based index of the target item - * @param item - * @returns {*} - */ - function indexOf(item) { - return _items.indexOf(item); - } - - /* - * Boolean existence check - * @param item - * @returns {boolean} - */ - function contains(item) { - return item && (indexOf(item) > -1); - } - - /* - * Find the next item. If reloop is true and at the end of the list, it will - * go back to the first item. If given ,the `validate` callback will be used - * determine whether the next item is valid. If not valid, it will try to find the - * next item again. - * @param item - * @param {optional} validate - * @returns {*} - */ - function next(item, validate) { - validate = validate || trueFn; - - if (contains(item)) { - var index = indexOf(item) + 1, - found = inRange(index) ? _items[ index ] : (reloop ? first() : null); - - return validate(found) ? found : next(found, validate); - } - - return null; - } - - /* - * Find the previous item. If reloop is true and at the beginning of the list, it will - * go back to the last item. If given ,the `validate` callback will be used - * determine whether the previous item is valid. If not valid, it will try to find the - * previous item again. - * @param item - * @param {optional} validate - * @returns {*} - */ - function previous(item, validate) { - validate = validate || trueFn; - - if (contains(item)) { - var index = indexOf(item) - 1, - found = inRange(index) ? _items[ index ] : (reloop ? last() : null); - - return validate(found) ? found : previous(found, validate); - } - - return null; - } - - /* - * Return first item in the list - * @returns {*} - */ - function first() { - return _items.length ? _items[0] : null; - } - - /* - * Return last item in the list... - * @returns {*} - */ - function last() { - return _items.length ? _items[_items.length - 1] : null; - } - } - - /* - * Angular's $cacheFactory doesn't have a keys() method, - * so we add one ourself. - */ - function cacheFactory(id, options) { - var cache = $cacheFactory(id, options); - - var keys = {}; - cache._put = cache.put; - cache.put = function(k,v) { - keys[k] = true; - return cache._put(k, v); - }; - cache._remove = cache.remove; - cache.remove = function(k) { - delete keys[k]; - return cache._remove(k); - }; - - cache.keys = function() { - return Object.keys(keys); - }; - - return cache; - } }]); -/* +/* * Since removing jQuery from the demos, some code that uses `element.focus()` is broken. * * We need to add `element.focus()`, because it's testable unlike `element[0].focus`. @@ -514,344 +625,1559 @@ angular.element.prototype.blur = angular.element.prototype.blur || function() { } return this; }; + })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { -angular.module('material.decorators', []) -.config(['$provide', function($provide) { - $provide.decorator('$$rAF', ['$delegate', '$rootScope', rAFDecorator]); +'use strict'; - function rAFDecorator($$rAF, $rootScope) { +angular.module('material.core') + .service('$mdAria', AriaService); - /** - * Use this to debounce events that come in often. - * The debounced function will always use the *last* invocation before the - * coming frame. - * - * For example, window resize events that fire many times a second: - * If we set to use an raf-debounced callback on window resize, then - * our callback will only be fired once per frame, with the last resize - * event that happened before that frame. - * - * @param {function} callback function to debounce - */ - $$rAF.debounce = function(cb) { - var queueArgs, alreadyQueued, queueCb, context; - return function debounced() { - queueArgs = arguments; - context = this; - queueCb = cb; - if (!alreadyQueued) { - alreadyQueued = true; - $$rAF(function() { - queueCb.apply(context, queueArgs); - alreadyQueued = false; - }); +function AriaService($$rAF, $log, $window) { + + return { + expect: expect, + expectAsync: expectAsync, + expectWithText: expectWithText + }; + + /** + * Check if expected attribute has been specified on the target element or child + * @param element + * @param attrName + * @param {optional} defaultValue What to set the attr to if no value is found + */ + function expect(element, attrName, defaultValue) { + var node = element[0]; + + if (!node.hasAttribute(attrName) && !childHasAttribute(node, attrName)) { + + defaultValue = angular.isString(defaultValue) && defaultValue.trim() || ''; + if (defaultValue.length) { + element.attr(attrName, defaultValue); + } else { + $log.warn('ARIA: Attribute "', attrName, '", required for accessibility, is missing on node:', node); + } + + } + } + + function expectAsync(element, attrName, defaultValueGetter) { + // Problem: when retrieving the element's contents synchronously to find the label, + // the text may not be defined yet in the case of a binding. + // There is a higher chance that a binding will be defined if we wait one frame. + $$rAF(function() { + expect(element, attrName, defaultValueGetter()); + }); + } + + function expectWithText(element, attrName) { + expectAsync(element, attrName, function() { + return element.text().trim(); + }); + } + + function childHasAttribute(node, attrName) { + var hasChildren = node.hasChildNodes(), + hasAttr = false; + + function isHidden(el) { + var style = el.currentStyle ? el.currentStyle : $window.getComputedStyle(el); + return (style.display === 'none'); + } + + if(hasChildren) { + var children = node.childNodes; + for(var i=0; i + * $mdCompiler.compile({ + * templateUrl: 'modal.html', + * controller: 'ModalCtrl', + * locals: { + * modal: myModalInstance; + * } + * }).then(function(compileData) { + * compileData.element; // modal.html's template in an element + * compileData.link(myScope); //attach controller & scope to element + * }); + * + */ + + /* + * @ngdoc method + * @name $mdCompiler#compile + * @description A helper to compile an HTML template/templateUrl with a given controller, + * locals, and scope. + * @param {object} options An options object, with the following properties: + * + * - `controller` - `{(string=|function()=}` Controller fn that should be associated with + * newly created scope or the name of a registered controller if passed as a string. + * - `controllerAs` - `{string=}` A controller alias name. If present the controller will be + * published to scope under the `controllerAs` name. + * - `template` - `{string=}` An html template as a string. + * - `templateUrl` - `{string=}` A path to an html template. + * - `transformTemplate` - `{function(template)=}` A function which transforms the template after + * it is loaded. It will be given the template string as a parameter, and should + * return a a new string representing the transformed template. + * - `resolve` - `{Object.=}` - An optional map of dependencies which should + * be injected into the controller. If any of these dependencies are promises, the compiler + * will wait for them all to be resolved, or if one is rejected before the controller is + * instantiated `compile()` will fail.. + * * `key` - `{string}`: a name of a dependency to be injected into the controller. + * * `factory` - `{string|function}`: If `string` then it is an alias for a service. + * Otherwise if function, then it is injected and the return value is treated as the + * dependency. If the result is a promise, it is resolved before its value is + * injected into the controller. + * + * @returns {object=} promise A promise, which will be resolved with a `compileData` object. + * `compileData` has the following properties: + * + * - `element` - `{element}`: an uncompiled element matching the provided template. + * - `link` - `{function(scope)}`: A link function, which, when called, will compile + * the element and instantiate the provided controller (if given). + * - `locals` - `{object}`: The locals which will be passed into the controller once `link` is + * called. If `bindToController` is true, they will be coppied to the ctrl instead + * - `bindToController` - `bool`: bind the locals to the controller, instead of passing them in + */ + this.compile = function(options) { + var templateUrl = options.templateUrl; + var template = options.template || ''; + var controller = options.controller; + var controllerAs = options.controllerAs; + var resolve = options.resolve || {}; + var locals = options.locals || {}; + var transformTemplate = options.transformTemplate || angular.identity; + var bindToController = options.bindToController; + + // Take resolve values and invoke them. + // Resolves can either be a string (value: 'MyRegisteredAngularConst'), + // or an invokable 'factory' of sorts: (value: function ValueGetter($dependency) {}) + angular.forEach(resolve, function(value, key) { + if (angular.isString(value)) { + resolve[key] = $injector.get(value); + } else { + resolve[key] = $injector.invoke(value); + } + }); + //Add the locals, which are just straight values to inject + //eg locals: { three: 3 }, will inject three into the controller + angular.extend(resolve, locals); + + if (templateUrl) { + resolve.$template = $http.get(templateUrl, {cache: $templateCache}) + .then(function(response) { + return response.data; + }); + } else { + resolve.$template = $q.when(template); + } + + // Wait for all the resolves to finish if they are promises + return $q.all(resolve).then(function(locals) { + + var template = transformTemplate(locals.$template); + var element = angular.element('
').html(template.trim()).contents(); + var linkFn = $compile(element); + + //Return a linking function that can be used later when the element is ready + return { + locals: locals, + element: element, + link: function link(scope) { + locals.$scope = scope; + + //Instantiate controller if it exists, because we have scope + if (controller) { + var ctrl = $controller(controller, locals); + if (bindToController) { + angular.extend(ctrl, locals); + } + //See angular-route source for this logic + element.data('$ngControllerController', ctrl); + element.children().data('$ngControllerController', ctrl); + + if (controllerAs) { + scope[controllerAs] = ctrl; + } + } + + return linkFn(scope); } }; - }; + }); - return $$rAF; - } -}]); + }; +} +mdCompilerService.$inject = ["$q", "$http", "$injector", "$compile", "$controller", "$templateCache"]; })(); -(function() { -/* - * @ngdoc module - * @name material.components.animate - * @description - * - * Ink and Popup Effects +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 */ -angular.module('material.animations', ['material.core']) - .service('$mdEffects', [ - '$rootElement', - '$$rAF', - '$sniffer', - '$q', - MdEffects - ]); +(function() { +'use strict'; + +/* + * TODO: Add support for multiple fingers on the `pointer` object (enables pinch gesture) + */ + +var START_EVENTS = 'mousedown touchstart pointerdown'; +var MOVE_EVENTS = 'mousemove touchmove pointermove'; +var END_EVENTS = 'mouseup mouseleave touchend touchcancel pointerup pointercancel'; +var HANDLERS; + +document.contains || (document.contains = function(node) { + return document.body.contains(node); +}); + +// TODO add windows phone to this +var userAgent = navigator.userAgent || navigator.vendor || window.opera; +var isIos = userAgent.match(/iPad/i) || userAgent.match(/iPhone/i) || userAgent.match(/iPod/i); +var isAndroid = userAgent.match(/Android/i); +var shouldHijackClicks = isIos || isAndroid; + +if (shouldHijackClicks) { + document.addEventListener('click', function(ev) { + // Space/enter on a button, and submit events, can send clicks + var isKeyClick = ev.clientX === 0 && ev.clientY === 0; + if (isKeyClick || ev.$material) return; + + // Prevent clicks unless they're sent by material + ev.preventDefault(); + ev.stopPropagation(); + }, true); +} + +angular.element(document) + .on(START_EVENTS, gestureStart) + .on(MOVE_EVENTS, gestureMove) + .on(END_EVENTS, gestureEnd) + // For testing + .on('$$mdGestureReset', function() { + lastPointer = pointer = null; + }); + +// The state of the current and previous 'pointer' (user's hand) +var pointer, lastPointer; + +function runHandlers(handlerEvent, event) { + var handler; + for (var handlerName in HANDLERS) { + handler = HANDLERS[handlerName]; + if (handlerEvent === 'start') { + // Run cancel to reset any handlers' state + handler.cancel(); + } + handler[handlerEvent](event, pointer); + } +} + +function gestureStart(ev) { + // If we're already touched down, abort + if (pointer) return; + + var now = +Date.now(); + + // iOS & old android bug: after a touch event, a click event is sent 350 ms later. + // If <400ms have passed, don't allow an event of a different type than the previous event + if (lastPointer && !typesMatch(ev, lastPointer) && (now - lastPointer.endTime < 1500)) { + return; + } + + pointer = makeStartPointer(ev); + + runHandlers('start', ev); +} + +function gestureMove(ev) { + if (!pointer || !typesMatch(ev, pointer)) return; + + updatePointerState(ev, pointer); + runHandlers('move', ev); +} + +function gestureEnd(ev) { + if (!pointer || !typesMatch(ev, pointer)) return; + + updatePointerState(ev, pointer); + pointer.endTime = +Date.now(); + + runHandlers('end', ev); + + lastPointer = pointer; + pointer = null; +} + +/******** Helpers *********/ +function typesMatch(ev, pointer) { + return ev && pointer && ev.type.charAt(0) === pointer.type; +} + +function getEventPoint(ev) { + ev = ev.originalEvent || ev; // support jQuery events + return (ev.touches && ev.touches[0]) || + (ev.changedTouches && ev.changedTouches[0]) || + ev; +} + +function updatePointerState(ev, pointer) { + var point = getEventPoint(ev); + var x = pointer.x = point.pageX; + var y = pointer.y = point.pageY; + + pointer.distanceX = x - pointer.startX; + pointer.distanceY = y - pointer.startY; + pointer.distance = Math.sqrt( + pointer.distanceX * pointer.distanceX + pointer.distanceY * pointer.distanceY + ); + + pointer.directionX = pointer.distanceX > 0 ? 'right' : pointer.distanceX < 0 ? 'left' : ''; + pointer.directionY = pointer.distanceY > 0 ? 'up' : pointer.distanceY < 0 ? 'down' : ''; + + pointer.duration = +Date.now() - pointer.startTime; + pointer.velocityX = pointer.distanceX / pointer.duration; + pointer.velocityY = pointer.distanceY / pointer.duration; +} + + +function makeStartPointer(ev) { + var point = getEventPoint(ev); + var startPointer = { + startTime: +Date.now(), + target: ev.target, + // 'p' for pointer, 'm' for mouse, 't' for touch + type: ev.type.charAt(0) + }; + startPointer.startX = startPointer.x = point.pageX; + startPointer.startY = startPointer.y = point.pageY; + return startPointer; +} + +angular.module('material.core') +.run(["$mdGesture", function($mdGesture) {}]) // make sure $mdGesture is always instantiated +.factory('$mdGesture', ["$$MdGestureHandler", "$$rAF", "$timeout", function($$MdGestureHandler, $$rAF, $timeout) { + HANDLERS = {}; + + if (shouldHijackClicks) { + addHandler('click', { + options: { + maxDistance: 6 + }, + onEnd: function(ev, pointer) { + if (pointer.distance < this.state.options.maxDistance) { + this.dispatchEvent(ev, 'click', null, ev); + } + } + }); + } + + addHandler('press', { + onStart: function(ev, pointer) { + this.dispatchEvent(ev, '$md.pressdown'); + }, + onEnd: function(ev, pointer) { + this.dispatchEvent(ev, '$md.pressup'); + } + }); + + + addHandler('hold', { + options: { + // If the user keeps his finger within the same area for + // ms, dispatch a hold event. + maxDistance: 6, + delay: 500, + }, + onCancel: function() { + $timeout.cancel(this.state.timeout); + }, + onStart: function(ev, pointer) { + // For hold, require a parent to be registered with $mdGesture.register() + // Because we prevent scroll events, this is necessary. + if (!this.state.registeredParent) return this.cancel(); + + this.state.pos = {x: pointer.x, y: pointer.y}; + this.state.timeout = $timeout(angular.bind(this, function holdDelayFn() { + this.dispatchEvent(ev, '$md.hold'); + this.cancel(); //we're done! + }), this.state.options.delay, false); + }, + onMove: function(ev, pointer) { + // Don't scroll while waiting for hold + ev.preventDefault(); + var dx = this.state.pos.x - pointer.x; + var dy = this.state.pos.y - pointer.y; + if (Math.sqrt(dx*dx + dy*dy) > this.options.maxDistance) { + this.cancel(); + } + }, + onEnd: function(ev, pointer) { + this.onCancel(); + }, + }); + + addHandler('drag', { + options: { + minDistance: 6, + horizontal: true, + }, + onStart: function(ev) { + // For drag, require a parent to be registered with $mdGesture.register() + if (!this.state.registeredParent) this.cancel(); + }, + onMove: function(ev, pointer) { + var shouldStartDrag, shouldCancel; + // Don't allow touch events to scroll while we're dragging or + // deciding if this touchmove is a proper drag + ev.preventDefault(); + + if (!this.state.dragPointer) { + if (this.state.options.horizontal) { + shouldStartDrag = Math.abs(pointer.distanceX) > this.state.options.minDistance; + shouldCancel = Math.abs(pointer.distanceY) > this.state.options.minDistance * 1.5; + } else { + shouldStartDrag = Math.abs(pointer.distanceY) > this.state.options.minDistance; + shouldCancel = Math.abs(pointer.distanceX) > this.state.options.minDistance * 1.5; + } + + if (shouldStartDrag) { + // Create a new pointer, starting at this point where the drag started. + this.state.dragPointer = makeStartPointer(ev); + updatePointerState(ev, this.state.dragPointer); + this.dispatchEvent(ev, '$md.dragstart', this.state.dragPointer); + + } else if (shouldCancel) { + this.cancel(); + } + } else { + this.dispatchDragMove(ev); + } + }, + // Only dispatch these every frame; any more is unnecessray + dispatchDragMove: $$rAF.throttle(function(ev) { + // Make sure the drag didn't stop while waiting for the next frame + if (this.state.isRunning) { + updatePointerState(ev, this.state.dragPointer); + this.dispatchEvent(ev, '$md.drag', this.state.dragPointer); + } + }), + onEnd: function(ev, pointer) { + if (this.state.dragPointer) { + updatePointerState(ev, this.state.dragPointer); + this.dispatchEvent(ev, '$md.dragend', this.state.dragPointer); + } + } + }); + + addHandler('swipe', { + options: { + minVelocity: 0.65, + minDistance: 10, + }, + onEnd: function(ev, pointer) { + if (Math.abs(pointer.velocityX) > this.state.options.minVelocity && + Math.abs(pointer.distanceX) > this.state.options.minDistance) { + var eventType = pointer.directionX == 'left' ? '$md.swipeleft' : '$md.swiperight'; + this.dispatchEvent(ev, eventType); + } + } + }); + + var self; + return self = { + handler: addHandler, + register: register + }; + + function addHandler(name, definition) { + var handler = new $$MdGestureHandler(name); + angular.extend(handler, definition); + HANDLERS[name] = handler; + return self; + } + + function register(element, handlerName, options) { + var handler = HANDLERS[ handlerName.replace(/^\$md./, '') ]; + if (!handler) { + throw new Error('Failed to register element with handler ' + handlerName + '. ' + + 'Available handlers: ' + Object.keys(HANDLERS).join(', ')); + } + return handler.registerElement(element, options); + } +}]) +.factory('$$MdGestureHandler', ["$$rAF", function($$rAF) { + + function GestureHandler(name) { + this.name = name; + this.state = {}; + } + GestureHandler.prototype = { + onStart: angular.noop, + onMove: angular.noop, + onEnd: angular.noop, + onCancel: angular.noop, + options: {}, + + dispatchEvent: dispatchEvent, + + start: function(ev, pointer) { + if (this.state.isRunning) return; + var parentTarget = this.getNearestParent(ev.target); + var parentTargetOptions = parentTarget && parentTarget.$mdGesture[this.name] || {}; + + this.state = { + isRunning: true, + options: angular.extend({}, this.options, parentTargetOptions), + registeredParent: parentTarget + }; + this.onStart(ev, pointer); + }, + move: function(ev, pointer) { + if (!this.state.isRunning) return; + this.onMove(ev, pointer); + }, + end: function(ev, pointer) { + if (!this.state.isRunning) return; + this.onEnd(ev, pointer); + this.state.isRunning = false; + }, + cancel: function(ev, pointer) { + this.onCancel(ev, pointer); + this.state = {}; + }, + + // Find and return the nearest parent element that has been registered via + // $mdGesture.register(element, 'handlerName'). + getNearestParent: function(node) { + var current = node; + while (current) { + if ( (current.$mdGesture || {})[this.name] ) { + return current; + } + current = current.parentNode; + } + }, + + registerElement: function(element, options) { + var self = this; + element[0].$mdGesture = element[0].$mdGesture || {}; + element[0].$mdGesture[this.name] = options || {}; + element.on('$destroy', onDestroy); + + return onDestroy; + + function onDestroy() { + delete element[0].$mdGesture[self.name]; + element.off('$destroy', onDestroy); + } + }, + }; + + var customEventOptions = { + bubbles: true, + cancelable: true + }; + /* + * NOTE: dispatchEvent is very performance sensitive. + */ + function dispatchEvent(srcEvent, eventType, eventPointer, /*original DOMEvent */ev) { + eventPointer = eventPointer || pointer; + var eventObj; + + if (eventType === 'click') { + eventObj = document.createEvent('MouseEvents'); + eventObj.initMouseEvent( + 'click', true, true, window, ev.detail, + ev.screenX, ev.screenY, ev.clientX, ev.clientY, + ev.ctrlKey, ev.altKey, ev.shiftKey, ev.metaKey, + ev.button, ev.relatedTarget || null + ); + + } else { + eventObj = document.createEvent('CustomEvent'); + eventObj.initCustomEvent(eventType, true, true, {}); + } + eventObj.$material = true; + eventObj.pointer = eventPointer; + eventObj.srcEvent = srcEvent; + eventPointer.target.dispatchEvent(eventObj); + } + + return GestureHandler; +}]); + +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + +angular.module('material.core') + .provider('$$interimElement', InterimElementProvider); /* * @ngdoc service - * @name $mdEffects - * @module material.components.animate + * @name $$interimElement + * @module material.core * * @description - * The `$mdEffects` service provides a simple API for various - * Material Design effects. * - * @returns A `$mdEffects` object with the following properties: - * - `{function(element,styles,duration)}` `inkBar` - starts ink bar - * animation on specified DOM element - * - `{function(element,parentElement,clickElement)}` `popIn` - animated show of element overlayed on parent element - * - `{function(element,parentElement)}` `popOut` - animated close of popup overlay + * Factory that contructs `$$interimElement.$service` services. + * Used internally in material design for elements that appear on screen temporarily. + * The service provides a promise-like API for interacting with the temporary + * elements. + * + * ```js + * app.service('$mdToast', function($$interimElement) { + * var $mdToast = $$interimElement(toastDefaultOptions); + * return $mdToast; + * }); + * ``` + * @param {object=} defaultOptions Options used by default for the `show` method on the service. + * + * @returns {$$interimElement.$service} * */ -function MdEffects($rootElement, $$rAF, $sniffer, $q) { - var webkit = /webkit/i.test($sniffer.vendorPrefix); - function vendorProperty(name) { - return webkit ? - ('webkit' + name.charAt(0).toUpperCase() + name.substring(1)) : - name; - } +function InterimElementProvider() { + createInterimElementProvider.$get = InterimElementFactory; + InterimElementFactory.$inject = ["$document", "$q", "$rootScope", "$timeout", "$rootElement", "$animate", "$interpolate", "$mdCompiler", "$mdTheming"]; + return createInterimElementProvider; - var self; - // Publish API for effects... - return self = { - popIn: popIn, + /** + * Returns a new provider which allows configuration of a new interimElement + * service. Allows configuration of default options & methods for options, + * as well as configuration of 'preset' methods (eg dialog.basic(): basic is a preset method) + */ + function createInterimElementProvider(interimFactoryName) { + var EXPOSED_METHODS = ['onHide', 'onShow', 'onRemove']; + var providerConfig = { + presets: {} + }; + var provider = { + setDefaults: setDefaults, + addPreset: addPreset, + $get: factory + }; - /* Constants */ - TRANSITIONEND_EVENT: 'transitionend' + (webkit ? ' webkitTransitionEnd' : ''), - ANIMATIONEND_EVENT: 'animationend' + (webkit ? ' webkitAnimationEnd' : ''), - - TRANSFORM: vendorProperty('transform'), - TRANSITION: vendorProperty('transition'), - TRANSITION_DURATION: vendorProperty('transitionDuration'), - ANIMATION_PLAY_STATE: vendorProperty('animationPlayState'), - ANIMATION_DURATION: vendorProperty('animationDuration'), - ANIMATION_NAME: vendorProperty('animationName'), - ANIMATION_TIMING: vendorProperty('animationTimingFunction'), - ANIMATION_DIRECTION: vendorProperty('animationDirection') - }; - - // ********************************************************** - // API Methods - // ********************************************************** - function popIn(element, parentElement, clickElement) { - var deferred = $q.defer(); - parentElement.append(element); - - var startPos; - if (clickElement) { - var clickRect = clickElement[0].getBoundingClientRect(); - startPos = translateString( - clickRect.left - element[0].offsetWidth, - clickRect.top - element[0].offsetHeight, - 0 - ) + ' scale(0.2)'; - } else { - startPos = 'translate3d(0,100%,0) scale(0.5)'; - } - - element - .css(self.TRANSFORM, startPos) - .css('opacity', 0); - - $$rAF(function() { - $$rAF(function() { - element - .addClass('md-active') - .css(self.TRANSFORM, '') - .css('opacity', '') - .on(self.TRANSITIONEND_EVENT, finished); - }); + /** + * all interim elements will come with the 'build' preset + */ + provider.addPreset('build', { + methods: ['controller', 'controllerAs', 'resolve', + 'template', 'templateUrl', 'themable', 'transformTemplate', 'parent'] }); - function finished(ev) { - //Make sure this transitionend didn't bubble up from a child - if (ev.target === element[0]) { - element.off(self.TRANSITIONEND_EVENT, finished); - deferred.resolve(); - } + factory.$inject = ["$$interimElement", "$animate", "$injector"]; + return provider; + + /** + * Save the configured defaults to be used when the factory is instantiated + */ + function setDefaults(definition) { + providerConfig.optionsFactory = definition.options; + providerConfig.methods = (definition.methods || []).concat(EXPOSED_METHODS); + return provider; + } + + /** + * Save the configured preset to be used when the factory is instantiated + */ + function addPreset(name, definition) { + definition = definition || {}; + definition.methods = definition.methods || []; + definition.options = definition.options || function() { return {}; }; + + if (/^cancel|hide|show$/.test(name)) { + throw new Error("Preset '" + name + "' in " + interimFactoryName + " is reserved!"); + } + if (definition.methods.indexOf('_options') > -1) { + throw new Error("Method '_options' in " + interimFactoryName + " is reserved!"); + } + providerConfig.presets[name] = { + methods: definition.methods.concat(EXPOSED_METHODS), + optionsFactory: definition.options, + argOption: definition.argOption + }; + return provider; + } + + /** + * Create a factory that has the given methods & defaults implementing interimElement + */ + /* @ngInject */ + function factory($$interimElement, $animate, $injector) { + var defaultMethods; + var defaultOptions; + var interimElementService = $$interimElement(); + + /* + * publicService is what the developer will be using. + * It has methods hide(), cancel(), show(), build(), and any other + * presets which were set during the config phase. + */ + var publicService = { + hide: interimElementService.hide, + cancel: interimElementService.cancel, + show: showInterimElement + }; + + defaultMethods = providerConfig.methods || []; + // This must be invoked after the publicService is initialized + defaultOptions = invokeFactory(providerConfig.optionsFactory, {}); + + angular.forEach(providerConfig.presets, function(definition, name) { + var presetDefaults = invokeFactory(definition.optionsFactory, {}); + var presetMethods = (definition.methods || []).concat(defaultMethods); + + // Every interimElement built with a preset has a field called `$type`, + // which matches the name of the preset. + // Eg in preset 'confirm', options.$type === 'confirm' + angular.extend(presetDefaults, { $type: name }); + + // This creates a preset class which has setter methods for every + // method given in the `.addPreset()` function, as well as every + // method given in the `.setDefaults()` function. + // + // @example + // .setDefaults({ + // methods: ['hasBackdrop', 'clickOutsideToClose', 'escapeToClose', 'targetEvent'], + // options: dialogDefaultOptions + // }) + // .addPreset('alert', { + // methods: ['title', 'ok'], + // options: alertDialogOptions + // }) + // + // Set values will be passed to the options when interimElemnt.show() is called. + function Preset(opts) { + this._options = angular.extend({}, presetDefaults, opts); + } + angular.forEach(presetMethods, function(name) { + Preset.prototype[name] = function(value) { + this._options[name] = value; + return this; + }; + }); + + // Create shortcut method for one-linear methods + if (definition.argOption) { + var methodName = 'show' + name.charAt(0).toUpperCase() + name.slice(1); + publicService[methodName] = function(arg) { + var config = publicService[name](arg); + return publicService.show(config); + }; + } + + // eg $mdDialog.alert() will return a new alert preset + publicService[name] = function(arg) { + // If argOption is supplied, eg `argOption: 'content'`, then we assume + // if the argument is not an options object then it is the `argOption` option. + // + // @example `$mdToast.simple('hello')` // sets options.content to hello + // // because argOption === 'content' + if (arguments.length && definition.argOption && !angular.isObject(arg) && + !angular.isArray(arg)) { + return (new Preset())[definition.argOption](arg); + } else { + return new Preset(arg); + } + + }; + }); + + return publicService; + + function showInterimElement(opts) { + // opts is either a preset which stores its options on an _options field, + // or just an object made up of options + if (opts && opts._options) opts = opts._options; + return interimElementService.show( + angular.extend({}, defaultOptions, opts) + ); + } + + /** + * Helper to call $injector.invoke with a local of the factory name for + * this provider. + * If an $mdDialog is providing options for a dialog and tries to inject + * $mdDialog, a circular dependency error will happen. + * We get around that by manually injecting $mdDialog as a local. + */ + function invokeFactory(factory, defaultVal) { + var locals = {}; + locals[interimFactoryName] = publicService; + return $injector.invoke(factory || function() { return defaultVal; }, {}, locals); + } + } - return deferred.promise; } - // ********************************************************** - // Utility Methods - // ********************************************************** + /* @ngInject */ + function InterimElementFactory($document, $q, $rootScope, $timeout, $rootElement, $animate, + $interpolate, $mdCompiler, $mdTheming ) { + var startSymbol = $interpolate.startSymbol(), + endSymbol = $interpolate.endSymbol(), + usesStandardSymbols = ((startSymbol === '{{') && (endSymbol === '}}')), + processTemplate = usesStandardSymbols ? angular.identity : replaceInterpolationSymbols; + + return function createInterimElementService() { + /* + * @ngdoc service + * @name $$interimElement.$service + * + * @description + * A service used to control inserting and removing an element into the DOM. + * + */ + var stack = []; + var service; + return service = { + show: show, + hide: hide, + cancel: cancel + }; + + /* + * @ngdoc method + * @name $$interimElement.$service#show + * @kind function + * + * @description + * Adds the `$interimElement` to the DOM and returns a promise that will be resolved or rejected + * with hide or cancel, respectively. + * + * @param {*} options is hashMap of settings + * @returns a Promise + * + */ + function show(options) { + if (stack.length) { + service.cancel(); + } + + var interimElement = new InterimElement(options); + + stack.push(interimElement); + return interimElement.show().then(function() { + return interimElement.deferred.promise; + }); + } + + /* + * @ngdoc method + * @name $$interimElement.$service#hide + * @kind function + * + * @description + * Removes the `$interimElement` from the DOM and resolves the promise returned from `show` + * + * @param {*} resolveParam Data to resolve the promise with + * @returns a Promise that will be resolved after the element has been removed. + * + */ + function hide(response) { + var interimElement = stack.shift(); + interimElement && interimElement.remove().then(function() { + interimElement.deferred.resolve(response); + }); + + return interimElement ? interimElement.deferred.promise : $q.when(response); + } + + /* + * @ngdoc method + * @name $$interimElement.$service#cancel + * @kind function + * + * @description + * Removes the `$interimElement` from the DOM and rejects the promise returned from `show` + * + * @param {*} reason Data to reject the promise with + * @returns Promise that will be rejected after the element has been removed. + * + */ + function cancel(reason) { + var interimElement = stack.shift(); + interimElement && interimElement.remove().then(function() { + interimElement.deferred.reject(reason); + }); + + return interimElement ? interimElement.deferred.promise : $q.reject(reason); + } - function translateString(x, y, z) { - return 'translate3d(' + Math.floor(x) + 'px,' + Math.floor(y) + 'px,' + Math.floor(z) + 'px)'; + /* + * Internal Interim Element Object + * Used internally to manage the DOM element and related data + */ + function InterimElement(options) { + var self; + var hideTimeout, element; + + options = options || {}; + options = angular.extend({ + scope: options.scope || $rootScope.$new(options.isolateScope), + onShow: function(scope, element, options) { + return $animate.enter(element, options.parent); + }, + onRemove: function(scope, element, options) { + // Element could be undefined if a new element is shown before + // the old one finishes compiling. + return element && $animate.leave(element) || $q.when(); + } + }, options); + + if (options.template) { + options.template = processTemplate(options.template); + } + + return self = { + options: options, + deferred: $q.defer(), + show: function() { + return $mdCompiler.compile(options).then(function(compileData) { + angular.extend(compileData.locals, self.options); + + // Search for parent at insertion time, if not specified + if (angular.isString(options.parent)) { + options.parent = angular.element($document[0].querySelector(options.parent)); + } else if (!options.parent) { + options.parent = $rootElement.find('body'); + if (!options.parent.length) options.parent = $rootElement; + } + + element = compileData.link(options.scope); + if (options.themable) $mdTheming(element); + var ret = options.onShow(options.scope, element, options); + return $q.when(ret) + .then(function(){ + // Issue onComplete callback when the `show()` finishes + (options.onComplete || angular.noop)(options.scope, element, options); + startHideTimeout(); + }); + + function startHideTimeout() { + if (options.hideDelay) { + hideTimeout = $timeout(service.cancel, options.hideDelay) ; + } + } + }); + }, + cancelTimeout: function() { + if (hideTimeout) { + $timeout.cancel(hideTimeout); + hideTimeout = undefined; + } + }, + remove: function() { + self.cancelTimeout(); + var ret = options.onRemove(options.scope, element, options); + return $q.when(ret).then(function() { + options.scope.$destroy(); + }); + } + }; + } + }; + + /* + * Replace `{{` and `}}` in a string (usually a template) with the actual start-/endSymbols used + * for interpolation. This allows pre-defined templates (for components such as dialog, toast etc) + * to continue to work in apps that use custom interpolation start-/endSymbols. + * + * @param {string} text The text in which to replace `{{` / `}}` + * @returns {string} The modified string using the actual interpolation start-/endSymbols + */ + function replaceInterpolationSymbols(text) { + if (!text || !angular.isString(text)) return text; + return text.replace(/\{\{/g, startSymbol).replace(/}}/g, endSymbol); + } } } })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { + 'use strict'; -angular.module('material.animations') + /** + * @ngdoc module + * @name material.core.componentRegistry + * + * @description + * A component instance registration service. + * Note: currently this as a private service in the SideNav component. + */ + angular.module('material.core') + .factory('$mdComponentRegistry', ComponentRegistry); -.directive('inkRipple', [ - '$mdInkRipple', - InkRippleDirective -]) + /* + * @private + * @ngdoc factory + * @name ComponentRegistry + * @module material.core.componentRegistry + * + */ + function ComponentRegistry($log, $q) { -.factory('$mdInkRipple', [ - '$window', - '$$rAF', - '$mdEffects', - '$timeout', - '$mdUtil', - InkRippleService -]); + var self; + var instances = [ ]; + var pendings = { }; + + return self = { + /** + * Used to print an error when an instance for a handle isn't found. + */ + notFoundError: function(handle) { + $log.error('No instance found for handle', handle); + }, + /** + * Return all registered instances as an array. + */ + getInstances: function() { + return instances; + }, + + /** + * Get a registered instance. + * @param handle the String handle to look up for a registered instance. + */ + get: function(handle) { + if ( !isValidID(handle) ) return null; + + var i, j, instance; + for(i = 0, j = instances.length; i < j; i++) { + instance = instances[i]; + if(instance.$$mdHandle === handle) { + return instance; + } + } + return null; + }, + + /** + * Register an instance. + * @param instance the instance to register + * @param handle the handle to identify the instance under. + */ + register: function(instance, handle) { + if ( !handle ) return angular.noop; + + instance.$$mdHandle = handle; + instances.push(instance); + resolveWhen(); + + return deregister; + + /** + * Remove registration for an instance + */ + function deregister() { + var index = instances.indexOf(instance); + if (index !== -1) { + instances.splice(index, 1); + } + } + + /** + * Resolve any pending promises for this instance + */ + function resolveWhen() { + var dfd = pendings[handle]; + if ( dfd ) { + dfd.resolve( instance ); + delete pendings[handle]; + } + } + }, + + /** + * Async accessor to registered component instance + * If not available then a promise is created to notify + * all listeners when the instance is registered. + */ + when : function(handle) { + if ( isValidID(handle) ) { + var deferred = $q.defer(); + var instance = self.get(handle); + + if ( instance ) { + deferred.resolve( instance ); + } else { + pendings[handle] = deferred; + } + + return deferred.promise; + } + return $q.reject("Invalid `md-component-id` value."); + } + + }; + + function isValidID(handle){ + return handle && (handle !== ""); + } + + } + ComponentRegistry.$inject = ["$log", "$q"]; + + +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + +angular.module('material.core') + .factory('$mdInkRipple', InkRippleService) + .directive('mdInkRipple', InkRippleDirective) + .directive('mdNoInk', attrNoDirective()) + .directive('mdNoBar', attrNoDirective()) + .directive('mdNoStretch', attrNoDirective()); function InkRippleDirective($mdInkRipple) { - return function(scope, element, attr) { - if (attr.inkRipple == 'checkbox') { - $mdInkRipple.attachCheckboxBehavior(element); - } else { - $mdInkRipple.attachButtonBehavior(element); + return { + controller: angular.noop, + link: function (scope, element, attr) { + if (attr.hasOwnProperty('mdInkRippleCheckbox')) { + $mdInkRipple.attachCheckboxBehavior(scope, element); + } else { + $mdInkRipple.attachButtonBehavior(scope, element); + } } }; } +InkRippleDirective.$inject = ["$mdInkRipple"]; -function InkRippleService($window, $$rAF, $mdEffects, $timeout, $mdUtil) { +function InkRippleService($window, $timeout) { return { attachButtonBehavior: attachButtonBehavior, attachCheckboxBehavior: attachCheckboxBehavior, + attachTabBehavior: attachTabBehavior, attach: attach }; - function attachButtonBehavior(element) { - return attach(element, { - mousedown: true, + function attachButtonBehavior(scope, element, options) { + return attach(scope, element, angular.extend({ + isFAB: element.hasClass('md-fab'), + isMenuItem: element.hasClass('md-menu-item'), center: false, - animationDuration: 350, - mousedownPauseTime: 175, - animationName: 'inkRippleButton', - animationTimingFunction: 'linear' - }); + dimBackground: true + }, options)); } - function attachCheckboxBehavior(element) { - return attach(element, { - mousedown: true, + function attachCheckboxBehavior(scope, element, options) { + return attach(scope, element, angular.extend({ center: true, - animationDuration: 300, - mousedownPauseTime: 180, - animationName: 'inkRippleCheckbox', - animationTimingFunction: 'linear' - }); + dimBackground: false, + fitRipple: true + }, options)); } - function attach(element, options) { - // Parent element with noink attr? Abort. - if (element.controller('noink')) return angular.noop; - var contentParent = element.controller('mdContent'); + function attachTabBehavior(scope, element, options) { + return attach(scope, element, angular.extend({ + center: false, + dimBackground: true, + outline: true + }, options)); + } + + function attach(scope, element, options) { + if (element.controller('mdNoInk')) return angular.noop; options = angular.extend({ + colorElement: element, mousedown: true, hover: true, focus: true, center: false, - animationDuration: 300, mousedownPauseTime: 150, - animationName: '', - animationTimingFunction: 'linear' - }, options || {}); + dimBackground: false, + outline: false, + isFAB: false, + isMenuItem: false, + fitRipple: false + }, options); - var rippleContainer; - var node = element[0]; - var hammertime = new Hammer(node); + var rippleSize, + controller = element.controller('mdInkRipple') || {}, + counter = 0, + ripples = [], + states = [], + isActiveExpr = element.attr('md-highlight'), + isActive = false, + isHeld = false, + node = element[0], + rippleSizeSetting = element.attr('md-ripple-size'), + color = parseColor(element.attr('md-ink-ripple')) || parseColor($window.getComputedStyle(options.colorElement[0]).color || 'rgb(0, 0, 0)'); + switch (rippleSizeSetting) { + case 'full': + options.isFAB = true; + break; + case 'partial': + options.isFAB = false; + break; + } + + // expose onInput for ripple testing if (options.mousedown) { - hammertime.on('hammer.input', onInput); + element.on('$md.pressdown', onPressDown) + .on('$md.pressup', onPressUp); + } + + controller.createRipple = createRipple; + + if (isActiveExpr) { + scope.$watch(isActiveExpr, function watchActive(newValue) { + isActive = newValue; + if (isActive && !ripples.length) { + $timeout(function () { createRipple(0, 0); }, 0, false); + } + angular.forEach(ripples, updateElement); + }); } // Publish self-detach method if desired... return function detach() { - hammertime.destroy(); - if (rippleContainer) { - rippleContainer.remove(); - } + element.off('$md.pressdown', onPressDown) + .off('$md.pressup', onPressUp); + getRippleContainer().remove(); }; - function rippleIsAllowed() { - return !element[0].hasAttribute('disabled'); + /** + * Gets the current ripple container + * If there is no ripple container, it creates one and returns it + * + * @returns {angular.element} ripple container element + */ + function getRippleContainer() { + var container = element.data('$mdRippleContainer'); + if (container) return container; + container = angular.element('
'); + element.append(container); + element.data('$mdRippleContainer', container); + return container; } - function createRipple(left, top, positionsAreAbsolute) { + function parseColor(color) { + if (!color) return; + if (color.indexOf('rgba') === 0) return color.replace(/\d?\.?\d*\s*\)\s*$/, '0.1)'); + if (color.indexOf('rgb') === 0) return rgbToRGBA(color); + if (color.indexOf('#') === 0) return hexToRGBA(color); - var rippleEl = angular.element('
') - .css($mdEffects.ANIMATION_DURATION, options.animationDuration + 'ms') - .css($mdEffects.ANIMATION_NAME, options.animationName) - .css($mdEffects.ANIMATION_TIMING, options.animationTimingFunction) - .on($mdEffects.ANIMATIONEND_EVENT, function() { - rippleEl.remove(); - }); - - if (!rippleContainer) { - rippleContainer = angular.element('
'); - element.append(rippleContainer); - } - rippleContainer.append(rippleEl); - - var containerWidth = rippleContainer.prop('offsetWidth'); - - if (options.center) { - left = containerWidth / 2; - top = rippleContainer.prop('offsetHeight') / 2; - } else if (positionsAreAbsolute) { - var elementRect = node.getBoundingClientRect(); - left -= elementRect.left; - top -= elementRect.top; + /** + * Converts a hex value to an rgba string + * + * @param {string} hex value (3 or 6 digits) to be converted + * + * @returns {string} rgba color with 0.1 alpha + */ + function hexToRGBA(color) { + var hex = color.charAt(0) === '#' ? color.substr(1) : color, + dig = hex.length / 3, + red = hex.substr(0, dig), + grn = hex.substr(dig, dig), + blu = hex.substr(dig * 2); + if (dig === 1) { + red += red; + grn += grn; + blu += blu; + } + return 'rgba(' + parseInt(red, 16) + ',' + parseInt(grn, 16) + ',' + parseInt(blu, 16) + ',0.1)'; } - if (contentParent) { - top += contentParent.$element.prop('scrollTop'); + /** + * Converts rgb value to rgba string + * + * @param {string} rgb color string + * + * @returns {string} rgba color with 0.1 alpha + */ + function rgbToRGBA(color) { + return color.replace(')', ', 0.1)').replace('(', 'a('); } - var css = { - 'background-color': $window.getComputedStyle(rippleEl[0]).color || - $window.getComputedStyle(node).color, - 'border-radius': (containerWidth / 2) + 'px', - - left: (left - containerWidth / 2) + 'px', - width: containerWidth + 'px', - - top: (top - containerWidth / 2) + 'px', - height: containerWidth + 'px' - }; - css[$mdEffects.ANIMATION_DURATION] = options.fadeoutDuration + 'ms'; - rippleEl.css(css); - - return rippleEl; } - var pauseTimeout; - var rippleEl; - function onInput(ev) { - if (ev.eventType === Hammer.INPUT_START && ev.isFirst && rippleIsAllowed()) { + function removeElement(elem, wait) { + ripples.splice(ripples.indexOf(elem), 1); + if (ripples.length === 0) { + getRippleContainer().css({ backgroundColor: '' }); + } + $timeout(function () { elem.remove(); }, wait, false); + } - rippleEl = createRipple(ev.center.x, ev.center.y, true); - pauseTimeout = $timeout(function() { - rippleEl && rippleEl.css($mdEffects.ANIMATION_PLAY_STATE, 'paused'); - }, options.mousedownPauseTime, false); + function updateElement(elem) { + var index = ripples.indexOf(elem), + state = states[index] || {}, + elemIsActive = ripples.length > 1 ? false : isActive, + elemIsHeld = ripples.length > 1 ? false : isHeld; + if (elemIsActive || state.animating || elemIsHeld) { + elem.addClass('md-ripple-visible'); + } else if (elem) { + elem.removeClass('md-ripple-visible'); + if (options.outline) { + elem.css({ + width: rippleSize + 'px', + height: rippleSize + 'px', + marginLeft: (rippleSize * -1) + 'px', + marginTop: (rippleSize * -1) + 'px' + }); + } + removeElement(elem, options.outline ? 450 : 650); + } + } - rippleEl.on('$destroy', function() { - rippleEl = null; - }); + /** + * Creates a ripple at the provided coordinates + * + * @param {number} left cursor position + * @param {number} top cursor position + * + * @returns {angular.element} the generated ripple element + */ + function createRipple(left, top) { - } else if (ev.eventType === Hammer.INPUT_END && ev.isFinal) { - $timeout.cancel(pauseTimeout); - rippleEl && rippleEl.css($mdEffects.ANIMATION_PLAY_STATE, ''); + color = parseColor(element.attr('md-ink-ripple')) || parseColor($window.getComputedStyle(options.colorElement[0]).color || 'rgb(0, 0, 0)'); + + var container = getRippleContainer(), + size = getRippleSize(left, top), + css = getRippleCss(size, left, top), + elem = getRippleElement(css), + index = ripples.indexOf(elem), + state = states[index] || {}; + + rippleSize = size; + + state.animating = true; + + $timeout(function () { + if (options.dimBackground) { + container.css({ backgroundColor: color }); + } + elem.addClass('md-ripple-placed md-ripple-scaled'); + if (options.outline) { + elem.css({ + borderWidth: (size * 0.5) + 'px', + marginLeft: (size * -0.5) + 'px', + marginTop: (size * -0.5) + 'px' + }); + } else { + elem.css({ left: '50%', top: '50%' }); + } + updateElement(elem); + $timeout(function () { + state.animating = false; + updateElement(elem); + }, (options.outline ? 450 : 225), false); + }, 0, false); + + return elem; + + /** + * Creates the ripple element with the provided css + * + * @param {object} css properties to be applied + * + * @returns {angular.element} the generated ripple element + */ + function getRippleElement(css) { + var elem = angular.element('
'); + ripples.unshift(elem); + states.unshift({ animating: true }); + container.append(elem); + css && elem.css(css); + return elem; + } + + /** + * Calculate the ripple size + * + * @returns {number} calculated ripple diameter + */ + function getRippleSize(left, top) { + var width = container.prop('offsetWidth'), + height = container.prop('offsetHeight'), + multiplier, size, rect; + if (options.isMenuItem) { + size = Math.sqrt(Math.pow(width, 2) + Math.pow(height, 2)); + } else if (options.outline) { + rect = node.getBoundingClientRect(); + left -= rect.left; + top -= rect.top; + width = Math.max(left, width - left); + height = Math.max(top, height - top); + size = 2 * Math.sqrt(Math.pow(width, 2) + Math.pow(height, 2)); + } else { + multiplier = options.isFAB ? 1.1 : 0.8; + size = Math.sqrt(Math.pow(width, 2) + Math.pow(height, 2)) * multiplier; + if (options.fitRipple) { + size = Math.min(height, width, size); + } + } + return size; + } + + /** + * Generates the ripple css + * + * @param {number} the diameter of the ripple + * @param {number} the left cursor offset + * @param {number} the top cursor offset + * + * @returns {{backgroundColor: *, width: string, height: string, marginLeft: string, marginTop: string}} + */ + function getRippleCss(size, left, top) { + var rect, + css = { + backgroundColor: rgbaToRGB(color), + borderColor: rgbaToRGB(color), + width: size + 'px', + height: size + 'px' + }; + + if (options.outline) { + css.width = 0; + css.height = 0; + } else { + css.marginLeft = css.marginTop = (size * -0.5) + 'px'; + } + + if (options.center) { + css.left = css.top = '50%'; + } else { + rect = node.getBoundingClientRect(); + css.left = Math.round((left - rect.left) / container.prop('offsetWidth') * 100) + '%'; + css.top = Math.round((top - rect.top) / container.prop('offsetHeight') * 100) + '%'; + } + + return css; + + /** + * Converts rgba string to rgb, removing the alpha value + * + * @param {string} rgba color + * + * @returns {string} rgb color + */ + function rgbaToRGB(color) { + return color.replace('rgba', 'rgb').replace(/,[^\)\,]+\)/, ')'); + } + } + } + + /** + * Handles user input start and stop events + * + */ + function onPressDown(ev) { + if (!isRippleAllowed()) return; + + var ripple = createRipple(ev.pointer.x, ev.pointer.y); + isHeld = true; + } + function onPressUp(ev) { + isHeld = false; + var ripple = ripples[ ripples.length - 1 ]; + $timeout(function () { updateElement(ripple); }, 0, false); + } + + /** + * Determines if the ripple is allowed + * + * @returns {boolean} true if the ripple is allowed, false if not + */ + function isRippleAllowed() { + var parent = node.parentNode; + var grandparent = parent && parent.parentNode; + var ancestor = grandparent && grandparent.parentNode; + return !isDisabled(node) && !isDisabled(parent) && !isDisabled(grandparent) && !isDisabled(ancestor); + function isDisabled (elem) { + return elem && elem.hasAttribute && elem.hasAttribute('disabled'); } } } - } -})(); - -(function() { -angular.module('material.animations') +InkRippleService.$inject = ["$window", "$timeout"]; /** * noink/nobar/nostretch directive: make any element that has one of - * these attributes be given a controller, so that other directives can + * these attributes be given a controller, so that other directives can * `require:` these and see if there is a `no` parent attribute. * * @usage * - * + * * * * @@ -860,27 +2186,21 @@ angular.module('material.animations') * * myApp.directive('detectNo', function() { * return { - * require: ['^?noink', ^?nobar'], + * require: ['^?mdNoInk', ^?mdNoBar'], * link: function(scope, element, attr, ctrls) { * var noinkCtrl = ctrls[0]; * var nobarCtrl = ctrls[1]; * if (noInkCtrl) { - * alert("the noink flag has been specified on an ancestor!"); + * alert("the md-no-ink flag has been specified on an ancestor!"); * } * if (nobarCtrl) { - * alert("the nobar flag has been specified on an ancestor!"); + * alert("the md-no-bar flag has been specified on an ancestor!"); * } * } * }; * }); * */ -.directive({ - noink: attrNoDirective(), - nobar: attrNoDirective(), - nostretch: attrNoDirective() -}); - function attrNoDirective() { return function() { return { @@ -890,7 +2210,971 @@ function attrNoDirective() { } })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + +angular.module('material.core.theming.palette', []) +.constant('$mdColorPalette', { + 'red': { + '50': '#ffebee', + '100': '#ffcdd2', + '200': '#ef9a9a', + '300': '#e57373', + '400': '#ef5350', + '500': '#f44336', + '600': '#e53935', + '700': '#d32f2f', + '800': '#c62828', + '900': '#b71c1c', + 'A100': '#ff8a80', + 'A200': '#ff5252', + 'A400': '#ff1744', + 'A700': '#d50000', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 300 400 A100', + 'contrastStrongLightColors': '500 600 700 A200 A400 A700' + }, + 'pink': { + '50': '#fce4ec', + '100': '#f8bbd0', + '200': '#f48fb1', + '300': '#f06292', + '400': '#ec407a', + '500': '#e91e63', + '600': '#d81b60', + '700': '#c2185b', + '800': '#ad1457', + '900': '#880e4f', + 'A100': '#ff80ab', + 'A200': '#ff4081', + 'A400': '#f50057', + 'A700': '#c51162', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 300 400 A100', + 'contrastStrongLightColors': '500 600 A200 A400 A700' + }, + 'purple': { + '50': '#f3e5f5', + '100': '#e1bee7', + '200': '#ce93d8', + '300': '#ba68c8', + '400': '#ab47bc', + '500': '#9c27b0', + '600': '#8e24aa', + '700': '#7b1fa2', + '800': '#6a1b9a', + '900': '#4a148c', + 'A100': '#ea80fc', + 'A200': '#e040fb', + 'A400': '#d500f9', + 'A700': '#aa00ff', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 A100', + 'contrastStrongLightColors': '300 400 A200 A400 A700' + }, + 'deep-purple': { + '50': '#ede7f6', + '100': '#d1c4e9', + '200': '#b39ddb', + '300': '#9575cd', + '400': '#7e57c2', + '500': '#673ab7', + '600': '#5e35b1', + '700': '#512da8', + '800': '#4527a0', + '900': '#311b92', + 'A100': '#b388ff', + 'A200': '#7c4dff', + 'A400': '#651fff', + 'A700': '#6200ea', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 A100', + 'contrastStrongLightColors': '300 400 A200' + }, + 'indigo': { + '50': '#e8eaf6', + '100': '#c5cae9', + '200': '#9fa8da', + '300': '#7986cb', + '400': '#5c6bc0', + '500': '#3f51b5', + '600': '#3949ab', + '700': '#303f9f', + '800': '#283593', + '900': '#1a237e', + 'A100': '#8c9eff', + 'A200': '#536dfe', + 'A400': '#3d5afe', + 'A700': '#304ffe', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 A100', + 'contrastStrongLightColors': '300 400 A200 A400' + }, + 'blue': { + '50': '#e3f2fd', + '100': '#bbdefb', + '200': '#90caf9', + '300': '#64b5f6', + '400': '#42a5f5', + '500': '#2196f3', + '600': '#1e88e5', + '700': '#1976d2', + '800': '#1565c0', + '900': '#0d47a1', + 'A100': '#82b1ff', + 'A200': '#448aff', + 'A400': '#2979ff', + 'A700': '#2962ff', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '100 200 300 400 A100', + 'contrastStrongLightColors': '500 600 700 A200 A400 A700' + }, + 'light-blue': { + '50': '#e1f5fe', + '100': '#b3e5fc', + '200': '#81d4fa', + '300': '#4fc3f7', + '400': '#29b6f6', + '500': '#03a9f4', + '600': '#039be5', + '700': '#0288d1', + '800': '#0277bd', + '900': '#01579b', + 'A100': '#80d8ff', + 'A200': '#40c4ff', + 'A400': '#00b0ff', + 'A700': '#0091ea', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '500 600 700 800 900 A700', + 'contrastStrongLightColors': '500 600 700 800 A700' + }, + 'cyan': { + '50': '#e0f7fa', + '100': '#b2ebf2', + '200': '#80deea', + '300': '#4dd0e1', + '400': '#26c6da', + '500': '#00bcd4', + '600': '#00acc1', + '700': '#0097a7', + '800': '#00838f', + '900': '#006064', + 'A100': '#84ffff', + 'A200': '#18ffff', + 'A400': '#00e5ff', + 'A700': '#00b8d4', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '500 600 700 800 900', + 'contrastStrongLightColors': '500 600 700 800' + }, + 'teal': { + '50': '#e0f2f1', + '100': '#b2dfdb', + '200': '#80cbc4', + '300': '#4db6ac', + '400': '#26a69a', + '500': '#009688', + '600': '#00897b', + '700': '#00796b', + '800': '#00695c', + '900': '#004d40', + 'A100': '#a7ffeb', + 'A200': '#64ffda', + 'A400': '#1de9b6', + 'A700': '#00bfa5', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '500 600 700 800 900', + 'contrastStrongLightColors': '500 600 700' + }, + 'green': { + '50': '#e8f5e9', + '100': '#c8e6c9', + '200': '#a5d6a7', + '300': '#81c784', + '400': '#66bb6a', + '500': '#4caf50', + '600': '#43a047', + '700': '#388e3c', + '800': '#2e7d32', + '900': '#1b5e20', + 'A100': '#b9f6ca', + 'A200': '#69f0ae', + 'A400': '#00e676', + 'A700': '#00c853', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '500 600 700 800 900', + 'contrastStrongLightColors': '500 600 700' + }, + 'light-green': { + '50': '#f1f8e9', + '100': '#dcedc8', + '200': '#c5e1a5', + '300': '#aed581', + '400': '#9ccc65', + '500': '#8bc34a', + '600': '#7cb342', + '700': '#689f38', + '800': '#558b2f', + '900': '#33691e', + 'A100': '#ccff90', + 'A200': '#b2ff59', + 'A400': '#76ff03', + 'A700': '#64dd17', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '800 900', + 'contrastStrongLightColors': '800 900' + }, + 'lime': { + '50': '#f9fbe7', + '100': '#f0f4c3', + '200': '#e6ee9c', + '300': '#dce775', + '400': '#d4e157', + '500': '#cddc39', + '600': '#c0ca33', + '700': '#afb42b', + '800': '#9e9d24', + '900': '#827717', + 'A100': '#f4ff81', + 'A200': '#eeff41', + 'A400': '#c6ff00', + 'A700': '#aeea00', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '900', + 'contrastStrongLightColors': '900' + }, + 'yellow': { + '50': '#fffde7', + '100': '#fff9c4', + '200': '#fff59d', + '300': '#fff176', + '400': '#ffee58', + '500': '#ffeb3b', + '600': '#fdd835', + '700': '#fbc02d', + '800': '#f9a825', + '900': '#f57f17', + 'A100': '#ffff8d', + 'A200': '#ffff00', + 'A400': '#ffea00', + 'A700': '#ffd600', + 'contrastDefaultColor': 'dark' + }, + 'amber': { + '50': '#fff8e1', + '100': '#ffecb3', + '200': '#ffe082', + '300': '#ffd54f', + '400': '#ffca28', + '500': '#ffc107', + '600': '#ffb300', + '700': '#ffa000', + '800': '#ff8f00', + '900': '#ff6f00', + 'A100': '#ffe57f', + 'A200': '#ffd740', + 'A400': '#ffc400', + 'A700': '#ffab00', + 'contrastDefaultColor': 'dark' + }, + 'orange': { + '50': '#fff3e0', + '100': '#ffe0b2', + '200': '#ffcc80', + '300': '#ffb74d', + '400': '#ffa726', + '500': '#ff9800', + '600': '#fb8c00', + '700': '#f57c00', + '800': '#ef6c00', + '900': '#e65100', + 'A100': '#ffd180', + 'A200': '#ffab40', + 'A400': '#ff9100', + 'A700': '#ff6d00', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '800 900', + 'contrastStrongLightColors': '800 900' + }, + 'deep-orange': { + '50': '#fbe9e7', + '100': '#ffccbc', + '200': '#ffab91', + '300': '#ff8a65', + '400': '#ff7043', + '500': '#ff5722', + '600': '#f4511e', + '700': '#e64a19', + '800': '#d84315', + '900': '#bf360c', + 'A100': '#ff9e80', + 'A200': '#ff6e40', + 'A400': '#ff3d00', + 'A700': '#dd2c00', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 300 400 A100 A200', + 'contrastStrongLightColors': '500 600 700 800 900 A400 A700' + }, + 'brown': { + '50': '#efebe9', + '100': '#d7ccc8', + '200': '#bcaaa4', + '300': '#a1887f', + '400': '#8d6e63', + '500': '#795548', + '600': '#6d4c41', + '700': '#5d4037', + '800': '#4e342e', + '900': '#3e2723', + 'A100': '#d7ccc8', + 'A200': '#bcaaa4', + 'A400': '#8d6e63', + 'A700': '#5d4037', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200', + 'contrastStrongLightColors': '300 400' + }, + 'grey': { + '0': '#ffffff', + '50': '#fafafa', + '100': '#f5f5f5', + '200': '#eeeeee', + '300': '#e0e0e0', + '400': '#bdbdbd', + '500': '#9e9e9e', + '600': '#757575', + '700': '#616161', + '800': '#424242', + '900': '#212121', + '1000': '#000000', + 'A100': '#ffffff', + 'A200': '#eeeeee', + 'A400': '#bdbdbd', + 'A700': '#616161', + 'contrastDefaultColor': 'dark', + 'contrastLightColors': '600 700 800 900' + }, + 'blue-grey': { + '50': '#eceff1', + '100': '#cfd8dc', + '200': '#b0bec5', + '300': '#90a4ae', + '400': '#78909c', + '500': '#607d8b', + '600': '#546e7a', + '700': '#455a64', + '800': '#37474f', + '900': '#263238', + 'A100': '#cfd8dc', + 'A200': '#b0bec5', + 'A400': '#78909c', + 'A700': '#455a64', + 'contrastDefaultColor': 'light', + 'contrastDarkColors': '50 100 200 300', + 'contrastStrongLightColors': '400 500' + } +}); +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + +angular.module('material.core.theming', ['material.core.theming.palette']) + .directive('mdTheme', ThemingDirective) + .directive('mdThemable', ThemableDirective) + .provider('$mdTheming', ThemingProvider) + .run(generateThemes); + +/** + * @ngdoc provider + * @name $mdThemingProvider + * @module material.core + * + * @description Provider to configure the `$mdTheming` service. + */ + +/** + * @ngdoc method + * @name $mdThemingProvider#setDefaultTheme + * @param {string} themeName Default theme name to be applied to elements. Default value is `default`. + */ + +/** + * @ngdoc method + * @name $mdThemingProvider#alwaysWatchTheme + * @param {boolean} watch Whether or not to always watch themes for changes and re-apply + * classes when they change. Default is `false`. Enabling can reduce performance. + */ + +// In memory storage of defined themes and color palettes (both loaded by CSS, and user specified) +var PALETTES; +var THEMES; +var themingProvider; +var generationIsDone; + +var DARK_FOREGROUND = { + name: 'dark', + '1': 'rgba(0,0,0,0.87)', + '2': 'rgba(0,0,0,0.54)', + '3': 'rgba(0,0,0,0.26)', + '4': 'rgba(0,0,0,0.12)' +}; +var LIGHT_FOREGROUND = { + name: 'light', + '1': 'rgba(255,255,255,1.0)', + '2': 'rgba(255,255,255,0.7)', + '3': 'rgba(255,255,255,0.3)', + '4': 'rgba(255,255,255,0.12)' +}; + +var DARK_SHADOW = '1px 1px 0px rgba(0,0,0,0.4), -1px -1px 0px rgba(0,0,0,0.4)'; +var LIGHT_SHADOW = ''; + +var DARK_CONTRAST_COLOR = colorToRgbaArray('rgba(0,0,0,0.87)'); +var LIGHT_CONTRAST_COLOR = colorToRgbaArray('rgba(255,255,255,0.87'); +var STRONG_LIGHT_CONTRAST_COLOR = colorToRgbaArray('rgb(255,255,255)'); + +var THEME_COLOR_TYPES = ['primary', 'accent', 'warn', 'background']; +var DEFAULT_COLOR_TYPE = 'primary'; + +// A color in a theme will use these hues by default, if not specified by user. +var LIGHT_DEFAULT_HUES = { + 'accent': { + 'default': 'A200', + 'hue-1': 'A100', + 'hue-2': 'A400', + 'hue-3': 'A700' + } +}; +var DARK_DEFAULT_HUES = { + 'background': { + 'default': '500', + 'hue-1': '300', + 'hue-2': '600', + 'hue-3': '800' + } +}; +THEME_COLOR_TYPES.forEach(function(colorType) { + // Color types with unspecified default hues will use these default hue values + var defaultDefaultHues = { + 'default': '500', + 'hue-1': '300', + 'hue-2': '800', + 'hue-3': 'A100' + }; + if (!LIGHT_DEFAULT_HUES[colorType]) LIGHT_DEFAULT_HUES[colorType] = defaultDefaultHues; + if (!DARK_DEFAULT_HUES[colorType]) DARK_DEFAULT_HUES[colorType] = defaultDefaultHues; +}); + +var VALID_HUE_VALUES = [ + '50', '100', '200', '300', '400', '500', '600', + '700', '800', '900', 'A100', 'A200', 'A400', 'A700' +]; + +function ThemingProvider($mdColorPalette) { + PALETTES = {}; + THEMES = {}; + var defaultTheme = 'default'; + var alwaysWatchTheme = false; + + // Load JS Defined Palettes + angular.extend(PALETTES, $mdColorPalette); + + // Default theme defined in core.js + + ThemingService.$inject = ["$rootScope", "$log"]; + return themingProvider = { + definePalette: definePalette, + extendPalette: extendPalette, + theme: registerTheme, + + setDefaultTheme: function(theme) { + defaultTheme = theme; + }, + alwaysWatchTheme: function(alwaysWatch) { + alwaysWatchTheme = alwaysWatch; + }, + $get: ThemingService, + _LIGHT_DEFAULT_HUES: LIGHT_DEFAULT_HUES, + _DARK_DEFAULT_HUES: DARK_DEFAULT_HUES, + _PALETTES: PALETTES, + _THEMES: THEMES, + _parseRules: parseRules, + _rgba: rgba + }; + + // Example: $mdThemingProvider.definePalette('neonRed', { 50: '#f5fafa', ... }); + function definePalette(name, map) { + map = map || {}; + PALETTES[name] = checkPaletteValid(name, map); + return themingProvider; + } + + // Returns an new object which is a copy of a given palette `name` with variables from + // `map` overwritten + // Example: var neonRedMap = $mdThemingProvider.extendPalette('red', { 50: '#f5fafafa' }); + function extendPalette(name, map) { + return checkPaletteValid(name, angular.extend({}, PALETTES[name] || {}, map) ); + } + + // Make sure that palette has all required hues + function checkPaletteValid(name, map) { + var missingColors = VALID_HUE_VALUES.filter(function(field) { + return !map[field]; + }); + if (missingColors.length) { + throw new Error("Missing colors %1 in palette %2!" + .replace('%1', missingColors.join(', ')) + .replace('%2', name)); + } + + return map; + } + + // Register a theme (which is a collection of color palettes to use with various states + // ie. warn, accent, primary ) + // Optionally inherit from an existing theme + // $mdThemingProvider.theme('custom-theme').primaryPalette('red'); + function registerTheme(name, inheritFrom) { + inheritFrom = inheritFrom || 'default'; + if (THEMES[name]) return THEMES[name]; + + var parentTheme = typeof inheritFrom === 'string' ? THEMES[inheritFrom] : inheritFrom; + var theme = new Theme(name); + + if (parentTheme) { + angular.forEach(parentTheme.colors, function(color, colorType) { + theme.colors[colorType] = { + name: color.name, + // Make sure a COPY of the hues is given to the child color, + // not the same reference. + hues: angular.extend({}, color.hues) + }; + }); + } + THEMES[name] = theme; + + return theme; + } + + function Theme(name) { + var self = this; + self.name = name; + self.colors = {}; + + self.dark = setDark; + setDark(false); + + function setDark(isDark) { + isDark = arguments.length === 0 ? true : !!isDark; + + // If no change, abort + if (isDark === self.isDark) return; + + self.isDark = isDark; + + self.foregroundPalette = self.isDark ? LIGHT_FOREGROUND : DARK_FOREGROUND; + self.foregroundShadow = self.isDark ? DARK_SHADOW : LIGHT_SHADOW; + + // Light and dark themes have different default hues. + // Go through each existing color type for this theme, and for every + // hue value that is still the default hue value from the previous light/dark setting, + // set it to the default hue value from the new light/dark setting. + var newDefaultHues = self.isDark ? DARK_DEFAULT_HUES : LIGHT_DEFAULT_HUES; + var oldDefaultHues = self.isDark ? LIGHT_DEFAULT_HUES : DARK_DEFAULT_HUES; + angular.forEach(newDefaultHues, function(newDefaults, colorType) { + var color = self.colors[colorType]; + var oldDefaults = oldDefaultHues[colorType]; + if (color) { + for (var hueName in color.hues) { + if (color.hues[hueName] === oldDefaults[hueName]) { + color.hues[hueName] = newDefaults[hueName]; + } + } + } + }); + + return self; + } + + THEME_COLOR_TYPES.forEach(function(colorType) { + var defaultHues = (self.isDark ? DARK_DEFAULT_HUES : LIGHT_DEFAULT_HUES)[colorType]; + self[colorType + 'Palette'] = function setPaletteType(paletteName, hues) { + var color = self.colors[colorType] = { + name: paletteName, + hues: angular.extend({}, defaultHues, hues) + }; + + Object.keys(color.hues).forEach(function(name) { + if (!defaultHues[name]) { + throw new Error("Invalid hue name '%1' in theme %2's %3 color %4. Available hue names: %4" + .replace('%1', name) + .replace('%2', self.name) + .replace('%3', paletteName) + .replace('%4', Object.keys(defaultHues).join(', ')) + ); + } + }); + Object.keys(color.hues).map(function(key) { + return color.hues[key]; + }).forEach(function(hueValue) { + if (VALID_HUE_VALUES.indexOf(hueValue) == -1) { + throw new Error("Invalid hue value '%1' in theme %2's %3 color %4. Available hue values: %5" + .replace('%1', hueValue) + .replace('%2', self.name) + .replace('%3', colorType) + .replace('%4', paletteName) + .replace('%5', VALID_HUE_VALUES.join(', ')) + ); + } + }); + return self; + }; + + self[colorType + 'Color'] = function() { + var args = Array.prototype.slice.call(arguments); + console.warn('$mdThemingProviderTheme.' + colorType + 'Color() has been depricated. ' + + 'Use $mdThemingProviderTheme.' + colorType + 'Palette() instead.'); + return self[colorType + 'Palette'].apply(self, args); + }; + }); + } + + /** + * @ngdoc service + * @name $mdTheming + * + * @description + * + * Service that makes an element apply theming related classes to itself. + * + * ```js + * app.directive('myFancyDirective', function($mdTheming) { + * return { + * restrict: 'e', + * link: function(scope, el, attrs) { + * $mdTheming(el); + * } + * }; + * }); + * ``` + * @param {el=} element to apply theming to + */ + /* @ngInject */ + function ThemingService($rootScope, $log) { + applyTheme.inherit = function(el, parent) { + var ctrl = parent.controller('mdTheme'); + + var attrThemeValue = el.attr('md-theme-watch'); + if ( (alwaysWatchTheme || angular.isDefined(attrThemeValue)) && attrThemeValue != 'false') { + var deregisterWatch = $rootScope.$watch(function() { + return ctrl && ctrl.$mdTheme || defaultTheme; + }, changeTheme); + el.on('$destroy', deregisterWatch); + } else { + var theme = ctrl && ctrl.$mdTheme || defaultTheme; + changeTheme(theme); + } + + function changeTheme(theme) { + if (!registered(theme)) { + $log.warn('Attempted to use unregistered theme \'' + theme + '\'. ' + + 'Register it with $mdThemingProvider.theme().'); + } + var oldTheme = el.data('$mdThemeName'); + if (oldTheme) el.removeClass('md-' + oldTheme +'-theme'); + el.addClass('md-' + theme + '-theme'); + el.data('$mdThemeName', theme); + } + }; + + applyTheme.registered = registered; + + return applyTheme; + + function registered(theme) { + if (theme === undefined || theme === '') return true; + return THEMES[theme] !== undefined; + } + + function applyTheme(scope, el) { + // Allow us to be invoked via a linking function signature. + if (el === undefined) { + el = scope; + scope = undefined; + } + if (scope === undefined) { + scope = $rootScope; + } + applyTheme.inherit(el, el); + } + } +} +ThemingProvider.$inject = ["$mdColorPalette"]; + +function ThemingDirective($mdTheming, $interpolate, $log) { + return { + priority: 100, + link: { + pre: function(scope, el, attrs) { + var ctrl = { + $setTheme: function(theme) { + if (!$mdTheming.registered(theme)) { + $log.warn('attempted to use unregistered theme \'' + theme + '\''); + } + ctrl.$mdTheme = theme; + } + }; + el.data('$mdThemeController', ctrl); + ctrl.$setTheme($interpolate(attrs.mdTheme)(scope)); + attrs.$observe('mdTheme', ctrl.$setTheme); + } + } + }; +} +ThemingDirective.$inject = ["$mdTheming", "$interpolate", "$log"]; + +function ThemableDirective($mdTheming) { + return $mdTheming; +} +ThemableDirective.$inject = ["$mdTheming"]; + +function parseRules(theme, colorType, rules) { + checkValidPalette(theme, colorType); + + rules = rules.replace(/THEME_NAME/g, theme.name); + var generatedRules = []; + var color = theme.colors[colorType]; + + var themeNameRegex = new RegExp('.md-' + theme.name + '-theme', 'g'); + // Matches '{{ primary-color }}', etc + var hueRegex = new RegExp('(\'|")?{{\\s*(' + colorType + ')-(color|contrast)-?(\\d\\.?\\d*)?\\s*}}(\"|\')?','g'); + var simpleVariableRegex = /'?"?\{\{\s*([a-zA-Z]+)-(A?\d+|hue\-[0-3]|shadow)-?(\d\.?\d*)?\s*\}\}'?"?/g; + var palette = PALETTES[color.name]; + + // find and replace simple variables where we use a specific hue, not angentire palette + // eg. "{{primary-100}}" + //\(' + THEME_COLOR_TYPES.join('\|') + '\)' + rules = rules.replace(simpleVariableRegex, function(match, colorType, hue, opacity) { + if (colorType === 'foreground') { + if (hue == 'shadow') { + return theme.foregroundShadow; + } else { + return theme.foregroundPalette[hue] || theme.foregroundPalette['1']; + } + } + if (hue.indexOf('hue') === 0) { + hue = theme.colors[colorType].hues[hue]; + } + return rgba( (PALETTES[ theme.colors[colorType].name ][hue] || '').value, opacity ); + }); + + // For each type, generate rules for each hue (ie. default, md-hue-1, md-hue-2, md-hue-3) + angular.forEach(color.hues, function(hueValue, hueName) { + var newRule = rules + .replace(hueRegex, function(match, _, colorType, hueType, opacity) { + return rgba(palette[hueValue][hueType === 'color' ? 'value' : 'contrast'], opacity); + }); + if (hueName !== 'default') { + newRule = newRule.replace(themeNameRegex, '.md-' + theme.name + '-theme.md-' + hueName); + } + generatedRules.push(newRule); + }); + + return generatedRules.join(''); +} + +// Generate our themes at run time given the state of THEMES and PALETTES +function generateThemes($injector) { + var themeCss = $injector.has('$MD_THEME_CSS') ? $injector.get('$MD_THEME_CSS') : ''; + + // MD_THEME_CSS is a string generated by the build process that includes all the themable + // components as templates + + // Expose contrast colors for palettes to ensure that text is always readable + angular.forEach(PALETTES, sanitizePalette); + + // Break the CSS into individual rules + var rules = themeCss.split(/\}(?!(\}|'|"|;))/) + .filter(function(rule) { return rule && rule.length; }) + .map(function(rule) { return rule.trim() + '}'; }); + + var rulesByType = {}; + THEME_COLOR_TYPES.forEach(function(type) { + rulesByType[type] = ''; + }); + var ruleMatchRegex = new RegExp('md-(' + THEME_COLOR_TYPES.join('|') + ')', 'g'); + + // Sort the rules based on type, allowing us to do color substitution on a per-type basis + rules.forEach(function(rule) { + var match = rule.match(ruleMatchRegex); + // First: test that if the rule has '.md-accent', it goes into the accent set of rules + for (var i = 0, type; type = THEME_COLOR_TYPES[i]; i++) { + if (rule.indexOf('.md-' + type) > -1) { + return rulesByType[type] += rule; + } + } + + // If no eg 'md-accent' class is found, try to just find 'accent' in the rule and guess from + // there + for (i = 0; type = THEME_COLOR_TYPES[i]; i++) { + if (rule.indexOf(type) > -1) { + return rulesByType[type] += rule; + } + } + + // Default to the primary array + return rulesByType[DEFAULT_COLOR_TYPE] += rule; + }); + + var styleString = ''; + + // For each theme, use the color palettes specified for `primary`, `warn` and `accent` + // to generate CSS rules. + angular.forEach(THEMES, function(theme) { + THEME_COLOR_TYPES.forEach(function(colorType) { + styleString += parseRules(theme, colorType, rulesByType[colorType] + ''); + }); + if (theme.colors.primary.name == theme.colors.accent.name) { + console.warn("$mdThemingProvider: Using the same palette for primary and" + + "accent. This violates the material design spec."); + } + }); + + // Insert our newly minted styles into the DOM + if (!generationIsDone) { + var style = document.createElement('style'); + style.innerHTML = styleString; + var head = document.getElementsByTagName('head')[0]; + head.insertBefore(style, head.firstElementChild); + generationIsDone = true; + } + + // The user specifies a 'default' contrast color as either light or dark, + // then explicitly lists which hues are the opposite contrast (eg. A100 has dark, A200 has light) + function sanitizePalette(palette) { + var defaultContrast = palette.contrastDefaultColor; + var lightColors = palette.contrastLightColors || []; + var strongLightColors = palette.contrastStrongLightColors || []; + var darkColors = palette.contrastDarkColors || []; + + // These colors are provided as space-separated lists + if (typeof lightColors === 'string') lightColors = lightColors.split(' '); + if (typeof strongLightColors === 'string') strongLightColors = strongLightColors.split(' '); + if (typeof darkColors === 'string') darkColors = darkColors.split(' '); + + // Cleanup after ourselves + delete palette.contrastDefaultColor; + delete palette.contrastLightColors; + delete palette.contrastStrongLightColors; + delete palette.contrastDarkColors; + + // Change { 'A100': '#fffeee' } to { 'A100': { value: '#fffeee', contrast:DARK_CONTRAST_COLOR } + angular.forEach(palette, function(hueValue, hueName) { + if (angular.isObject(hueValue)) return; // Already converted + // Map everything to rgb colors + var rgbValue = colorToRgbaArray(hueValue); + if (!rgbValue) { + throw new Error("Color %1, in palette %2's hue %3, is invalid. Hex or rgb(a) color expected." + .replace('%1', hueValue) + .replace('%2', palette.name) + .replace('%3', hueName)); + } + + palette[hueName] = { + value: rgbValue, + contrast: getContrastColor() + }; + function getContrastColor() { + if (defaultContrast === 'light') { + if (darkColors.indexOf(hueName) > -1) { + return DARK_CONTRAST_COLOR; + } else { + return strongLightColors.indexOf(hueName) > -1 ? STRONG_LIGHT_CONTRAST_COLOR + : LIGHT_CONTRAST_COLOR; + } + } else { + if (lightColors.indexOf(hueName) > -1) { + return strongLightColors.indexOf(hueName) > -1 ? STRONG_LIGHT_CONTRAST_COLOR + : LIGHT_CONTRAST_COLOR; + } else { + return DARK_CONTRAST_COLOR; + } + } + } + }); + } + +} +generateThemes.$inject = ["$injector"]; + +function checkValidPalette(theme, colorType) { + // If theme attempts to use a palette that doesnt exist, throw error + if (!PALETTES[ (theme.colors[colorType] || {}).name ]) { + throw new Error( + "You supplied an invalid color palette for theme %1's %2 palette. Available palettes: %3" + .replace('%1', theme.name) + .replace('%2', colorType) + .replace('%3', Object.keys(PALETTES).join(', ')) + ); + } +} + +function colorToRgbaArray(clr) { + if (angular.isArray(clr) && clr.length == 3) return clr; + if (/^rgb/.test(clr)) { + return clr.replace(/(^\s*rgba?\(|\)\s*$)/g, '').split(',').map(function(value, i) { + return i == 3 ? parseFloat(value, 10) : parseInt(value, 10); + }); + } + if (clr.charAt(0) == '#') clr = clr.substring(1); + if (!/^([a-fA-F0-9]{3}){1,2}$/g.test(clr)) return; + + var dig = clr.length / 3; + var red = clr.substr(0, dig); + var grn = clr.substr(dig, dig); + var blu = clr.substr(dig * 2); + if (dig === 1) { + red += red; + grn += grn; + blu += blu; + } + return [parseInt(red, 16), parseInt(grn, 16), parseInt(blu, 16)]; +} + +function rgba(rgbArray, opacity) { + if (rgbArray.length == 4) { + rgbArray = angular.copy(rgbArray); + opacity ? rgbArray.pop() : opacity = rgbArray.pop(); + } + return opacity && (typeof opacity == 'number' || (typeof opacity == 'string' && opacity.length)) ? + 'rgba(' + rgbArray.join(',') + ',' + opacity + ')' : + 'rgb(' + rgbArray.join(',') + ')'; +} + +})(); + +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ +(function() { +'use strict'; + /* * @ngdoc module * @name material.components.backdrop @@ -909,20 +3193,27 @@ function attrNoDirective() { * Apply class `opaque` to make the backdrop use the theme backdrop color. * */ + angular.module('material.components.backdrop', [ - 'material.services.theming' + 'material.core' ]) -.directive('mdBackdrop', [ - '$mdTheming', - BackdropDirective -]); + .directive('mdBackdrop', BackdropDirective); function BackdropDirective($mdTheming) { return $mdTheming; } +BackdropDirective.$inject = ["$mdTheming"]; })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.bottomSheet @@ -930,23 +3221,11 @@ function BackdropDirective($mdTheming) { * BottomSheet */ angular.module('material.components.bottomSheet', [ - 'material.components.backdrop', - 'material.services.interimElement', - 'material.services.theming' + 'material.core', + 'material.components.backdrop' ]) -.directive('mdBottomSheet', [ - MdBottomSheetDirective -]) -.factory('$mdBottomSheet', [ - '$$interimElement', - '$animate', - '$mdEffects', - '$timeout', - '$$rAF', - '$compile', - '$mdTheming', - MdBottomSheet -]); + .directive('mdBottomSheet', MdBottomSheetDirective) + .provider('$mdBottomSheet', MdBottomSheetProvider); function MdBottomSheetDirective() { return { @@ -963,7 +3242,7 @@ function MdBottomSheetDirective() { * `$mdBottomSheet` opens a bottom sheet over the app and provides a simple promise API. * * ### Restrictions - * + * * - The bottom sheet's template must have an outer `` element. * - Add the `md-grid` class to the bottom sheet for a grid layout. * - Add the `md-list` class to the bottom sheet for a list layout. @@ -1004,15 +3283,19 @@ function MdBottomSheetDirective() { * template string. * - `controller` - `{string=}`: The controller to associate with this bottom sheet. * - `locals` - `{string=}`: An object containing key/value pairs. The keys will - * be used as names of values to inject into the controller. For example, + * be used as names of values to inject into the controller. For example, * `locals: {three: 3}` would inject `three` into the controller with the value * of 3. - * - `targetEvent` - `{DOMClickEvent=}`: A click's event object. When passed in as an option, + * - `targetEvent` - `{DOMClickEvent=}`: A click's event object. When passed in as an option, * the location of the click will be used as the starting point for the opening animation * of the the dialog. * - `resolve` - `{object=}`: Similar to locals, except it takes promises as values * and the bottom sheet will not open until the promises resolve. * - `controllerAs` - `{string=}`: An alias to assign the controller to on the scope. + * - `parent` - `{element=}`: The element to append the bottom sheet to. Defaults to appending + * to the root element of the application. + * - `disableParentScroll` - `{boolean=}`: Whether to disable scrolling while the bottom sheet is open. + * Default true. * * @returns {promise} A promise that can be resolved with `$mdBottomSheet.hide()` or * rejected with `$mdBottomSheet.cancel()`. @@ -1023,7 +3306,7 @@ function MdBottomSheetDirective() { * @name $mdBottomSheet#hide * * @description - * Hide the existing bottom sheet and resolve the promise returned from + * Hide the existing bottom sheet and resolve the promise returned from * `$mdBottomSheet.show()`. * * @param {*=} response An argument for the resolved promise. @@ -1035,159 +3318,163 @@ function MdBottomSheetDirective() { * @name $mdBottomSheet#cancel * * @description - * Hide the existing bottom sheet and reject the promise returned from + * Hide the existing bottom sheet and reject the promise returned from * `$mdBottomSheet.show()`. * * @param {*=} response An argument for the rejected promise. * */ -function MdBottomSheet($$interimElement, $animate, $mdEffects, $timeout, $$rAF, $compile, $mdTheming) { - var backdrop; +function MdBottomSheetProvider($$interimElementProvider) { + // how fast we need to flick down to close the sheet, pixels/ms + var CLOSING_VELOCITY = 0.5; + var PADDING = 80; // same as css - var $mdBottomSheet; - return $mdBottomSheet = $$interimElement({ - themable: true, - targetEvent: null, - onShow: onShow, - onRemove: onRemove, - }); - - function onShow(scope, element, options) { - // Add a backdrop that will close on click - backdrop = $compile('')(scope); - backdrop.on('click touchstart', function() { - $timeout($mdBottomSheet.cancel); + bottomSheetDefaults.$inject = ["$animate", "$mdConstant", "$timeout", "$$rAF", "$compile", "$mdTheming", "$mdBottomSheet", "$rootElement", "$rootScope", "$mdGesture"]; + return $$interimElementProvider('$mdBottomSheet') + .setDefaults({ + methods: ['disableParentScroll', 'escapeToClose', 'targetEvent'], + options: bottomSheetDefaults }); - $mdTheming.inherit(backdrop, options.parent); - $animate.enter(backdrop, options.parent, null); - - var bottomSheet = new BottomSheet(element); - options.bottomSheet = bottomSheet; - - // Give up focus on calling item - options.targetEvent && angular.element(options.targetEvent.target).blur(); - $mdTheming.inherit(bottomSheet.element, options.parent); - - return $animate.enter(bottomSheet.element, options.parent); - - } - - function onRemove(scope, element, options) { - var bottomSheet = options.bottomSheet; - $animate.leave(backdrop); - return $animate.leave(bottomSheet.element).then(function() { - bottomSheet.cleanup(); - - // Restore focus - options.targetEvent && angular.element(options.targetEvent.target).focus(); - }); - } - - /** - * BottomSheet class to apply bottom-sheet behavior to an element - */ - function BottomSheet(element) { - var MAX_OFFSET = 80; // amount past the bottom of the element that we can drag down, this is same as in _bottomSheet.scss - var WIGGLE_AMOUNT = 20; // point where it starts to get "harder" to drag - var CLOSING_VELOCITY = 10; // how fast we need to flick down to close the sheet - var startY, lastY, velocity, transitionDelay, startTarget; - - // coercion incase $mdCompiler returns multiple elements - element = element.eq(0); - - element.on('touchstart', onTouchStart); - element.on('touchmove', onTouchMove); - element.on('touchend', onTouchEnd); + /* @ngInject */ + function bottomSheetDefaults($animate, $mdConstant, $timeout, $$rAF, $compile, $mdTheming, $mdBottomSheet, $rootElement, $rootScope, $mdGesture) { + var backdrop; return { - element: element, - cleanup: function cleanup() { - element.off('touchstart', onTouchStart); - element.off('touchmove', onTouchMove); - element.off('touchend', onTouchEnd); - } + themable: true, + targetEvent: null, + onShow: onShow, + onRemove: onRemove, + escapeToClose: true, + disableParentScroll: true }; - function onTouchStart(e) { - e.preventDefault(); - startTarget = e.target; - startY = getY(e); - - // Disable transitions on transform so that it feels fast - transitionDelay = element.css($mdEffects.TRANSITION_DURATION); - element.css($mdEffects.TRANSITION_DURATION, '0s'); + function onShow(scope, element, options) { + // Add a backdrop that will close on click + backdrop = $compile('')(scope); + backdrop.on('click', function() { + $timeout($mdBottomSheet.cancel); + }); + + $mdTheming.inherit(backdrop, options.parent); + + $animate.enter(backdrop, options.parent, null); + + var bottomSheet = new BottomSheet(element, options.parent); + options.bottomSheet = bottomSheet; + + // Give up focus on calling item + options.targetEvent && angular.element(options.targetEvent.target).blur(); + $mdTheming.inherit(bottomSheet.element, options.parent); + + if (options.disableParentScroll) { + options.lastOverflow = options.parent.css('overflow'); + options.parent.css('overflow', 'hidden'); + } + + return $animate.enter(bottomSheet.element, options.parent) + .then(function() { + var focusable = angular.element( + element[0].querySelector('button') || + element[0].querySelector('a') || + element[0].querySelector('[ng-click]') + ); + focusable.focus(); + + if (options.escapeToClose) { + options.rootElementKeyupCallback = function(e) { + if (e.keyCode === $mdConstant.KEY_CODE.ESCAPE) { + $timeout($mdBottomSheet.cancel); + } + }; + $rootElement.on('keyup', options.rootElementKeyupCallback); + } + }); + } - function onTouchEnd(e) { - // Re-enable the transitions on transforms - element.css($mdEffects.TRANSITION_DURATION, transitionDelay); + function onRemove(scope, element, options) { + var bottomSheet = options.bottomSheet; - var currentY = getY(e); - // If we didn't scroll much, and we didn't change targets, assume its a click - if ( Math.abs(currentY - startY) < 5 && e.target == startTarget) { - angular.element(e.target).triggerHandler('click'); - } else { - // If they went fast enough, trigger a close. - if (velocity > CLOSING_VELOCITY) { + + $animate.leave(backdrop); + return $animate.leave(bottomSheet.element).then(function() { + if (options.disableParentScroll) { + options.parent.css('overflow', options.lastOverflow); + delete options.lastOverflow; + } + + bottomSheet.cleanup(); + + // Restore focus + options.targetEvent && angular.element(options.targetEvent.target).focus(); + }); + } + + /** + * BottomSheet class to apply bottom-sheet behavior to an element + */ + function BottomSheet(element, parent) { + var deregister = $mdGesture.register(parent, 'drag', { horizontal: false }); + parent.on('$md.dragstart', onDragStart) + .on('$md.drag', onDrag) + .on('$md.dragend', onDragEnd); + + return { + element: element, + cleanup: function cleanup() { + deregister(); + parent.off('$md.dragstart', onDragStart) + .off('$md.drag', onDrag) + .off('$md.dragend', onDragEnd); + } + }; + + function onDragStart(ev) { + // Disable transitions on transform so that it feels fast + element.css($mdConstant.CSS.TRANSITION_DURATION, '0ms'); + } + + function onDrag(ev) { + var transform = ev.pointer.distanceY; + if (transform < 5) { + // Slow down drag when trying to drag up, and stop after PADDING + transform = Math.max(-PADDING, transform / 2); + } + element.css($mdConstant.CSS.TRANSFORM, 'translate3d(0,' + (PADDING + transform) + 'px,0)'); + } + + function onDragEnd(ev) { + if (ev.pointer.distanceY > 0 && + (ev.pointer.distanceY > 20 || Math.abs(ev.pointer.velocityY) > CLOSING_VELOCITY)) { + var distanceRemaining = element.prop('offsetHeight') - ev.pointer.distanceY; + var transitionDuration = Math.min(distanceRemaining / ev.pointer.velocityY * 0.75, 500); + element.css($mdConstant.CSS.TRANSITION_DURATION, transitionDuration + 'ms'); $timeout($mdBottomSheet.cancel); - - // Otherwise, untransform so that we go back to our normal position } else { - setTransformY(undefined); + element.css($mdConstant.CSS.TRANSITION_DURATION, ''); + element.css($mdConstant.CSS.TRANSFORM, ''); } } } - function onTouchMove(e) { - var currentY = getY(e); - var delta = currentY - startY; - - velocity = currentY - lastY; - lastY = currentY; - - // Do some conversion on delta to get a friction-like effect - delta = adjustedDelta(delta); - setTransformY(delta + MAX_OFFSET); - } - - /** - * Helper function to find the Y aspect of various touch events. - **/ - function getY(e) { - var touch = e.touches && e.touches.length ? e.touches[0] : e.changedTouches[0]; - return touch.clientY; - } - - /** - * Transform the element along the y-axis - **/ - function setTransformY(amt) { - if (amt === null || amt === undefined) { - element.css($mdEffects.TRANSFORM, ''); - } else { - element.css($mdEffects.TRANSFORM, 'translate3d(0, ' + amt + 'px, 0)'); - } - } - - // Returns a new value for delta that will never exceed MAX_OFFSET_AMOUNT - // Will get harder to exceed it as you get closer to it - function adjustedDelta(delta) { - if ( delta < 0 && delta < -MAX_OFFSET + WIGGLE_AMOUNT) { - delta = -delta; - var base = MAX_OFFSET - WIGGLE_AMOUNT; - delta = Math.max(-MAX_OFFSET, -Math.min(MAX_OFFSET - 5, base + ( WIGGLE_AMOUNT * (delta - base)) / MAX_OFFSET) - delta / 50); - } - - return delta; - } } } +MdBottomSheetProvider.$inject = ["$$interimElementProvider"]; + })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.button @@ -1196,19 +3483,9 @@ function MdBottomSheet($$interimElement, $animate, $mdEffects, $timeout, $$rAF, * Button */ angular.module('material.components.button', [ - 'material.core', - 'material.animations', - 'material.services.aria', - 'material.services.theming' + 'material.core' ]) - .directive('mdButton', [ - 'ngHrefDirective', - '$mdInkRipple', - '$mdAria', - '$mdUtil', - '$mdTheming', - MdButtonDirective - ]); + .directive('mdButton', MdButtonDirective); /** * @ngdoc directive @@ -1220,87 +3497,84 @@ angular.module('material.components.button', [ * @description * `` is a button directive with optional ink ripples (default enabled). * - * @param {boolean=} noink If present, disable ripple ink effects. - * @param {boolean=} disabled If present, disable tab selection. - * @param {string=} type Optional attribute to specific button types (useful for forms); such as 'submit', etc. - * @param {string=} ng-href Optional attribute to support both ARIA and link navigation - * @param {string=} href Optional attribute to support both ARIA and link navigation - * @param {string=} ariaLabel Publish the button label used by screen-readers for accessibility. Defaults to the button's text. + * If you supply a `href` or `ng-href` attribute, it will become an `` element. Otherwise, it will + * become a `'; + } + + function postLink(scope, element, attr) { + var node = element[0]; + $mdTheming(element); + $mdInkRipple.attachButtonBehavior(scope, element); + + var elementHasText = node.textContent.trim(); + if (!elementHasText) { + $mdAria.expect(element, 'aria-label'); + } + + // For anchor elements, we have to set tabindex manually when the + // element is disabled + if (isAnchor(attr) && angular.isDefined(attr.ngDisabled) ) { + scope.$watch(attr.ngDisabled, function(isDisabled) { + element.attr('tabindex', isDisabled ? -1 : 0); + }); + } + } + } +MdButtonDirective.$inject = ["$mdInkRipple", "$mdTheming", "$mdAria"]; })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.card @@ -1309,10 +3583,9 @@ function MdButtonDirective(ngHrefDirectives, $mdInkRipple, $mdAria, $mdUtil, $md * Card components. */ angular.module('material.components.card', [ + 'material.core' ]) - .directive('mdCard', [ - mdCardDirective - ]); + .directive('mdCard', mdCardDirective); @@ -1332,7 +3605,7 @@ angular.module('material.components.card', [ * @usage * * - * + * *

Paracosm

*

* The titles of Washed Out's breakthrough song and the first single from Paracosm share the * two most important words in Ernest Greene's musical language: feel it. It's a simple request, as well... @@ -1341,35 +3614,35 @@ angular.module('material.components.card', [ * * */ -function mdCardDirective() { +function mdCardDirective($mdTheming) { return { restrict: 'E', link: function($scope, $element, $attr) { + $mdTheming($element); } }; } +mdCardDirective.$inject = ["$mdTheming"]; })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.checkbox * @description Checkbox module! */ angular.module('material.components.checkbox', [ - 'material.core', - 'material.animations', - 'material.services.theming', - 'material.services.aria' + 'material.core' ]) - .directive('mdCheckbox', [ - 'inputDirective', - '$mdInkRipple', - '$mdAria', - '$mdConstant', - '$mdTheming', - MdCheckboxDirective - ]); + .directive('mdCheckbox', MdCheckboxDirective); /** * @ngdoc directive @@ -1380,14 +3653,18 @@ angular.module('material.components.checkbox', [ * @description * The checkbox directive is used like the normal [angular checkbox](https://docs.angularjs.org/api/ng/input/input%5Bcheckbox%5D). * - * @param {string} ngModel Assignable angular expression to data-bind to. + * As per the [material design spec](http://www.google.com/design/spec/style/color.html#color-ui-color-application) + * the checkbox is in the accent color by default. The primary color palette may be used with + * the `md-primary` class. + * + * @param {string} ng-model Assignable angular expression to data-bind to. * @param {string=} name Property name of the form under which the control is published. - * @param {expression=} ngTrueValue The value to which the expression should be set when selected. - * @param {expression=} ngFalseValue The value to which the expression should be set when not selected. - * @param {string=} ngChange Angular expression to be executed when input changes due to user interaction with the input element. - * @param {boolean=} noink Use of attribute indicates use of ripple ink effects - * @param {boolean=} disabled Use of attribute indicates the switch is disabled: no ink effects and not selectable - * @param {string=} ariaLabel Publish the button label used by screen-readers for accessibility. Defaults to the checkbox's text. + * @param {expression=} ng-true-value The value to which the expression should be set when selected. + * @param {expression=} ng-false-value The value to which the expression should be set when not selected. + * @param {string=} ng-change Angular expression to be executed when input changes due to user interaction with the input element. + * @param {boolean=} md-no-ink Use of attribute indicates use of ripple ink effects + * @param {string=} aria-label Adds label to checkbox for accessibility. + * Defaults to checkbox's text. If no default text is found, a warning will be logged. * * @usage * @@ -1395,20 +3672,19 @@ angular.module('material.components.checkbox', [ * Finished ? * * - * + * * No Ink Effects * * - * + * * Disabled * * * * */ -function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant, $mdTheming) { - var inputDirective = inputDirectives[0]; - +function MdCheckboxDirective(inputDirective, $mdInkRipple, $mdAria, $mdConstant, $mdTheming, $mdUtil) { + inputDirective = inputDirective[0]; var CHECKED_CSS = 'md-checked'; return { @@ -1416,7 +3692,7 @@ function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant transclude: true, require: '?ngModel', template: - '

' + + '
' + '
' + '
' + '
', @@ -1434,19 +3710,11 @@ function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant tElement.attr('role', tAttrs.type); return function postLink(scope, element, attr, ngModelCtrl) { + ngModelCtrl = ngModelCtrl || $mdUtil.fakeNgModel(); var checked = false; $mdTheming(element); - // Create a mock ngModel if the user doesn't provide one - ngModelCtrl = ngModelCtrl || { - $setViewValue: function(value) { - this.$viewValue = value; - }, - $parsers: [], - $formatters: [] - }; - - $mdAria.expect(tElement, 'aria-label', true); + $mdAria.expectWithText(element, 'aria-label'); // Reuse the original input[type=checkbox] directive from Angular core. // This is a bit hacky as we need our own event listener and own render @@ -1456,8 +3724,8 @@ function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant 0: {} }, attr, [ngModelCtrl]); - element.on('click', listener); - element.on('keypress', keypressHandler); + element.on('click', listener) + .on('keypress', keypressHandler); ngModelCtrl.$render = render; function keypressHandler(ev) { @@ -1487,11 +3755,19 @@ function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant }; } } - +MdCheckboxDirective.$inject = ["inputDirective", "$mdInkRipple", "$mdAria", "$mdConstant", "$mdTheming", "$mdUtil"]; })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.content @@ -1500,13 +3776,9 @@ function MdCheckboxDirective(inputDirectives, $mdInkRipple, $mdAria, $mdConstant * Scrollable content */ angular.module('material.components.content', [ - 'material.services.theming', - 'material.services.registry' + 'material.core' ]) - .directive('mdContent', [ - '$mdTheming', - mdContentDirective - ]); + .directive('mdContent', mdContentDirective); /** * @ngdoc directive @@ -1530,13 +3802,18 @@ angular.module('material.components.content', [ * * */ + function mdContentDirective($mdTheming) { return { restrict: 'E', controller: ['$scope', '$element', ContentController], - link: function($scope, $element, $attr) { - $mdTheming($element); - $scope.$broadcast('$mdContentLoaded', $element); + link: function(scope, element, attr) { + var node = element[0]; + + $mdTheming(element); + scope.$broadcast('$mdContentLoaded', element); + + iosScrollFix(element[0]); } }; @@ -1545,40 +3822,48 @@ function mdContentDirective($mdTheming) { this.$element = $element; } } +mdContentDirective.$inject = ["$mdTheming"]; + +function iosScrollFix(node) { + // IOS FIX: + // If we scroll where there is no more room for the webview to scroll, + // by default the webview itself will scroll up and down, this looks really + // bad. So if we are scrolling to the very top or bottom, add/subtract one + angular.element(node).on('$md.pressdown', function(ev) { + // Only touch events + if (ev.pointer.type !== 't') return; + // Don't let a child content's touchstart ruin it for us. + if (ev.$materialScrollFixed) return; + ev.$materialScrollFixed = true; + + if (node.scrollTop === 0) { + node.scrollTop = 1; + } else if (node.scrollHeight === node.scrollTop + node.offsetHeight) { + node.scrollTop -= 1; + } + }); +} })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.dialog */ angular.module('material.components.dialog', [ 'material.core', - 'material.animations', - 'material.components.backdrop', - 'material.services.compiler', - 'material.services.aria', - 'material.services.interimElement', - 'material.services.theming', + 'material.components.backdrop' ]) - .directive('mdDialog', [ - '$$rAF', - '$mdTheming', - MdDialogDirective - ]) - .factory('$mdDialog', [ - '$timeout', - '$rootElement', - '$compile', - '$mdEffects', - '$animate', - '$mdAria', - '$$interimElement', - '$mdUtil', - '$mdConstant', - '$mdTheming', - MdDialogService - ]); + .directive('mdDialog', MdDialogDirective) + .provider('$mdDialog', MdDialogProvider); function MdDialogDirective($$rAF, $mdTheming) { return { @@ -1594,6 +3879,7 @@ function MdDialogDirective($$rAF, $mdTheming) { } }; } +MdDialogDirective.$inject = ["$$rAF", "$mdTheming"]; /** * @ngdoc service @@ -1608,60 +3894,171 @@ function MdDialogDirective($$rAF, $mdTheming) { * - The dialog is always given an isolate scope. * - The dialog's template must have an outer `` element. * Inside, use an `` element for the dialog's content, and use - * an element with class `md-actions` for the dialog's actions. + * an element with class `md-actions` for the dialog's actions. * * @usage + * #### HTML + * * - *
- * - * Open a Dialog from this button! + *
+ * + * Employee Alert! + * + * + * Close Alert + * + * + * Greet Employee * *
* * + * #### JavaScript + * * - * var app = angular.module('app', ['ngMaterial']); - * app.controller('MyController', function($scope, $mdDialog) { - * $scope.openDialog = function($event) { - * $mdDialog.show({ - * targetEvent: $event, - * controller: 'DialogController', - * template: - * '' + - * ' Hello!' + - * '
' + - * ' ' + - * ' Close' + - * ' ' + - * '
' + - * '
' - * }); - * }; - * }); - * app.controller('DialogController', function($scope, $mdDialog) { - * $scope.closeDialog = function() { - * $mdDialog.hide(); - * }; - * }); + * (function(angular, undefined){ + * "use strict"; + * + * angular + * .module('demoApp', ['ngMaterial']) + * .controller('EmployeeController', EmployeeEditor) + * .controller('GreetingController', GreetingController); + * + * // Fictitious Employee Editor to show how to use simple and complex dialogs. + * + * function EmployeeEditor($scope, $mdDialog) { + * var alert; + * + * $scope.showAlert = showAlert; + * $scope.closeAlert = closeAlert; + * $scope.showGreeting = showCustomGreeting; + * + * $scope.hasAlert = function() { return !!alert }; + * $scope.userName = $scope.userName || 'Bobby'; + * + * // Dialog #1 - Show simple alert dialog and cache + * // reference to dialog instance + * + * function showAlert() { + * alert = $mdDialog.alert() + * .title('Attention, ' + $scope.userName) + * .content('This is an example of how easy dialogs can be!') + * .ok('Close'); + * + * $mdDialog + * .show( alert ) + * .finally(function() { + * alert = undefined; + * }); + * } + * + * // Close the specified dialog instance and resolve with 'finished' flag + * // Normally this is not needed, just use '$mdDialog.hide()' to close + * // the most recent dialog popup. + * + * function closeAlert() { + * $mdDialog.hide( alert, "finished" ); + * alert = undefined; + * } + * + * // Dialog #2 - Demonstrate more complex dialogs construction and popup. + * + * function showCustomGreeting($event) { + * $mdDialog.show({ + * targetEvent: $event, + * template: + * '' + + * + * ' Hello {{ employee }}!' + + * + * '
' + + * ' ' + + * ' Close Greeting' + + * + * ' ' + + * '
' + + * '
', + * controller: 'GreetingController', + * onComplete: afterShowAnimation, + * locals: { employee: $scope.userName } + * }); + * + * // When the 'enter' animation finishes... + * + * function afterShowAnimation(scope, element, options) { + * // post-show code here: DOM element focus, etc. + * } + * } + * } + * + * // Greeting controller used with the more complex 'showCustomGreeting()' custom dialog + * + * function GreetingController($scope, $mdDialog, employee) { + * // Assigned from construction locals options... + * $scope.employee = employee; + * + * $scope.closeDialog = function() { + * // Easily hides most recent dialog shown... + * // no specific instance reference is needed. + * $mdDialog.hide(); + * }; + * } + * + * })(angular); *
+ */ + + /** + * @ngdoc method + * @name $mdDialog#alert + * + * @description + * Builds a preconfigured dialog with the specified message. + * + * @returns {obj} an `$mdDialogPreset` with the chainable configuration methods: + * + * - $mdDialogPreset#title(string) - sets title to string + * - $mdDialogPreset#content(string) - sets content / message to string + * - $mdDialogPreset#ok(string) - sets okay button text to string + * + */ + + /** + * @ngdoc method + * @name $mdDialog#confirm + * + * @description + * Builds a preconfigured dialog with the specified message. You can call show and the promise returned + * will be resolved only if the user clicks the confirm action on the dialog. + * + * @returns {obj} an `$mdDialogPreset` with the chainable configuration methods: + * + * Additionally, it supports the following methods: + * + * - $mdDialogPreset#title(string) - sets title to string + * - $mdDialogPreset#content(string) - sets content / message to string + * - $mdDialogPreset#ok(string) - sets okay button text to string + * - $mdDialogPreset#cancel(string) - sets cancel button text to string * */ /** - * * @ngdoc method * @name $mdDialog#show * * @description * Show a dialog with the specified options. * - * @param {object} options An options object, with the following properties: + * @param {object} optionsOrPreset Either provide an `$mdDialogPreset` returned from `alert()`, and + * `confirm()`, or an options object with the following properties: * - `templateUrl` - `{string=}`: The url of a template that will be used as the content - * of the dialog. + * of the dialog. * - `template` - `{string=}`: Same as templateUrl, except this is an actual template string. - * - `targetEvent` - `{DOMClickEvent=}`: A click's event object. When passed in as an option, + * - `targetEvent` - `{DOMClickEvent=}`: A click's event object. When passed in as an option, * the location of the click will be used as the starting point for the opening animation * of the the dialog. + * - `disableParentScroll` - `{boolean=}`: Whether to disable scrolling while the dialog is open. + * Default true. * - `hasBackdrop` - `{boolean=}`: Whether there should be an opaque backdrop behind the dialog. * Default true. * - `clickOutsideToClose` - `{boolean=}`: Whether the user can click outside the dialog to @@ -1672,12 +4069,16 @@ function MdDialogDirective($$rAF, $mdTheming) { * will be injected with the local `$hideDialog`, which is a function used to hide the dialog. * - `locals` - `{object=}`: An object containing key/value pairs. The keys will be used as names * of values to inject into the controller. For example, `locals: {three: 3}` would inject - * `three` into the controller, with the value 3. + * `three` into the controller, with the value 3. If `bindToController` is true, they will be + * copied to the controller instead. + * - `bindToController` - `bool`: bind the locals to the controller, instead of passing them in * - `resolve` - `{object=}`: Similar to locals, except it takes promises as values, and the - * toast will not open until all of the promises resolve. + * dialog will not open until all of the promises resolve. * - `controllerAs` - `{string=}`: An alias to assign the controller to on the scope. * - `parent` - `{element=}`: The element to append the dialog to. Defaults to appending * to the root element of the application. + * - `onComplete` `{function=}`: Callback function used to announce when the show() action is + * finished. * * @returns {promise} A promise that can be resolved with `$mdDialog.hide()` or * rejected with `mdDialog.cancel()`. @@ -1691,7 +4092,6 @@ function MdDialogDirective($$rAF, $mdTheming) { * Hide an existing dialog and resolve the promise returned from `$mdDialog.show()`. * * @param {*=} response An argument for the resolved promise. - * */ /** @@ -1702,135 +4102,265 @@ function MdDialogDirective($$rAF, $mdTheming) { * Hide an existing dialog and reject the promise returned from `$mdDialog.show()`. * * @param {*=} response An argument for the rejected promise. - * */ -function MdDialogService($timeout, $rootElement, $compile, $mdEffects, $animate, $mdAria, $$interimElement, $mdUtil, $mdConstant, $mdTheming) { +function MdDialogProvider($$interimElementProvider) { - var $dialogService; - return $dialogService = $$interimElement({ - hasBackdrop: true, - isolateScope: true, - onShow: onShow, - onRemove: onRemove, - clickOutsideToClose: true, - escapeToClose: true, - targetEvent: null, - transformTemplate: function(template) { - return '
' + template + '
'; - } - }); + var alertDialogMethods = ['title', 'content', 'ariaLabel', 'ok']; - function onShow(scope, element, options) { - // Incase the user provides a raw dom element, always wrap it in jqLite - options.parent = angular.element(options.parent); + advancedDialogOptions.$inject = ["$mdDialog"]; + dialogDefaultOptions.$inject = ["$timeout", "$rootElement", "$compile", "$animate", "$mdAria", "$document", "$mdUtil", "$mdConstant", "$mdTheming", "$$rAF", "$q", "$mdDialog"]; + return $$interimElementProvider('$mdDialog') + .setDefaults({ + methods: ['disableParentScroll', 'hasBackdrop', 'clickOutsideToClose', 'escapeToClose', 'targetEvent'], + options: dialogDefaultOptions + }) + .addPreset('alert', { + methods: ['title', 'content', 'ariaLabel', 'ok'], + options: advancedDialogOptions + }) + .addPreset('confirm', { + methods: ['title', 'content', 'ariaLabel', 'ok', 'cancel'], + options: advancedDialogOptions + }); - options.popInTarget = angular.element((options.targetEvent || {}).target); - var closeButton = findCloseButton(); + /* @ngInject */ + function advancedDialogOptions($mdDialog) { + return { + template: [ + '', + '', + '

{{ dialog.title }}

', + '

{{ dialog.content }}

', + '
', + '
', + '', + '{{ dialog.cancel }}', + '', + '', + '{{ dialog.ok }}', + '', + '
', + '
' + ].join(''), + controller: function mdDialogCtrl() { + this.hide = function() { + $mdDialog.hide(true); + }; + this.abort = function() { + $mdDialog.cancel(); + }; + }, + controllerAs: 'dialog', + bindToController: true + }; + } - configureAria(element.find('md-dialog')); + /* @ngInject */ + function dialogDefaultOptions($timeout, $rootElement, $compile, $animate, $mdAria, $document, + $mdUtil, $mdConstant, $mdTheming, $$rAF, $q, $mdDialog) { + return { + hasBackdrop: true, + isolateScope: true, + onShow: onShow, + onRemove: onRemove, + clickOutsideToClose: true, + escapeToClose: true, + targetEvent: null, + disableParentScroll: true, + transformTemplate: function(template) { + return '
' + template + '
'; + } + }; + + + // On show method for dialogs + function onShow(scope, element, options) { + // Incase the user provides a raw dom element, always wrap it in jqLite + options.parent = angular.element(options.parent); + + options.popInTarget = angular.element((options.targetEvent || {}).target); + var closeButton = findCloseButton(); + + configureAria(element.find('md-dialog')); + + if (options.hasBackdrop) { + var parentOffset = options.parent.prop('scrollTop'); + options.backdrop = angular.element(''); + $mdTheming.inherit(options.backdrop, options.parent); + $animate.enter(options.backdrop, options.parent); + element.css('top', parentOffset +'px'); + } + + if (options.disableParentScroll) { + options.lastOverflow = options.parent.css('overflow'); + options.parent.css('overflow', 'hidden'); + } + + return dialogPopIn( + element, + options.parent, + options.popInTarget && options.popInTarget.length && options.popInTarget + ) + .then(function() { + if (options.escapeToClose) { + options.rootElementKeyupCallback = function(e) { + if (e.keyCode === $mdConstant.KEY_CODE.ESCAPE) { + $timeout($mdDialog.cancel); + } + }; + $rootElement.on('keyup', options.rootElementKeyupCallback); + } + + if (options.clickOutsideToClose) { + options.dialogClickOutsideCallback = function(ev) { + // Only close if we click the flex container outside the backdrop + if (ev.target === element[0]) { + $timeout($mdDialog.cancel); + } + }; + element.on('click', options.dialogClickOutsideCallback); + } + closeButton.focus(); + }); + + + function findCloseButton() { + //If no element with class dialog-close, try to find the last + //button child in md-actions and assume it is a close button + var closeButton = element[0].querySelector('.dialog-close'); + if (!closeButton) { + var actionButtons = element[0].querySelectorAll('.md-actions button'); + closeButton = actionButtons[ actionButtons.length - 1 ]; + } + return angular.element(closeButton); + } - if (options.hasBackdrop) { - options.backdrop = $compile('')(scope); - $mdTheming.inherit(options.backdrop, options.parent); - $animate.enter(options.backdrop, options.parent, null); } - return $mdEffects.popIn( - element, - options.parent, - options.popInTarget.length && options.popInTarget - ) - .then(function() { + // On remove function for all dialogs + function onRemove(scope, element, options) { + + if (options.backdrop) { + $animate.leave(options.backdrop); + } + if (options.disableParentScroll) { + options.parent.css('overflow', options.lastOverflow); + delete options.lastOverflow; + } if (options.escapeToClose) { - options.rootElementKeyupCallback = function(e) { - if (e.keyCode === $mdConstant.KEY_CODE.ESCAPE) { - $timeout($dialogService.cancel); - } - }; - - $rootElement.on('keyup', options.rootElementKeyupCallback); + $rootElement.off('keyup', options.rootElementKeyupCallback); } - if (options.clickOutsideToClose) { - options.dialogClickOutsideCallback = function(e) { - // Only close if we click the flex container outside the backdrop - if (e.target === element[0]) { - $timeout($dialogService.cancel); - } - }; - - element.on('click', options.dialogClickOutsideCallback); + element.off('click', options.dialogClickOutsideCallback); } - closeButton.focus(); - }); + return dialogPopOut( + element, + options.parent, + options.popInTarget && options.popInTarget.length && options.popInTarget + ).then(function() { + options.scope.$destroy(); + element.remove(); + options.popInTarget && options.popInTarget.focus(); + }); + } - function findCloseButton() { - //If no element with class dialog-close, try to find the last - //button child in md-actions and assume it is a close button - var closeButton = element[0].querySelector('.dialog-close'); - if (!closeButton) { - var actionButtons = element[0].querySelectorAll('.md-actions button'); - closeButton = actionButtons[ actionButtons.length - 1 ]; + /** + * Inject ARIA-specific attributes appropriate for Dialogs + */ + function configureAria(element) { + element.attr({ + 'role': 'dialog' + }); + + var dialogContent = element.find('md-content'); + if (dialogContent.length === 0){ + dialogContent = element; } - return angular.element(closeButton); + $mdAria.expectAsync(element, 'aria-label', function() { + var words = dialogContent.text().split(/\s+/); + if (words.length > 3) words = words.slice(0,3).concat('...'); + return words.join(' '); + }); } - } + function dialogPopIn(container, parentElement, clickElement) { + var dialogEl = container.find('md-dialog'); - function onRemove(scope, element, options) { + parentElement.append(container); + transformToClickElement(dialogEl, clickElement); - if (options.backdrop) { - $animate.leave(options.backdrop); - element.data('backdrop', undefined); + $$rAF(function() { + dialogEl.addClass('transition-in') + .css($mdConstant.CSS.TRANSFORM, ''); + }); + + return dialogTransitionEnd(dialogEl); } - if (options.escapeToClose) { - $rootElement.off('keyup', options.rootElementKeyupCallback); - } - if (options.clickOutsideToClose) { - element.off('click', options.dialogClickOutsideCallback); - } - return $animate.leave(element).then(function() { - element.remove(); - options.popInTarget && options.popInTarget.focus(); - }); - } + function dialogPopOut(container, parentElement, clickElement) { + var dialogEl = container.find('md-dialog'); - /** - * Inject ARIA-specific attributes appropriate for Dialogs - */ - function configureAria(element) { - element.attr({ - 'role': 'dialog' - }); + dialogEl.addClass('transition-out').removeClass('transition-in'); + transformToClickElement(dialogEl, clickElement); - var dialogContent = element.find('md-content'); - if (dialogContent.length === 0){ - dialogContent = element; + return dialogTransitionEnd(dialogEl); } - var defaultText = $mdUtil.stringFromTextBody(dialogContent.text(), 3); - $mdAria.expect(element, 'aria-label', true, defaultText); + + function transformToClickElement(dialogEl, clickElement) { + if (clickElement) { + var clickRect = clickElement[0].getBoundingClientRect(); + var dialogRect = dialogEl[0].getBoundingClientRect(); + + var scaleX = Math.min(0.5, clickRect.width / dialogRect.width); + var scaleY = Math.min(0.5, clickRect.height / dialogRect.height); + + dialogEl.css($mdConstant.CSS.TRANSFORM, 'translate3d(' + + (-dialogRect.left + clickRect.left + clickRect.width/2 - dialogRect.width/2) + 'px,' + + (-dialogRect.top + clickRect.top + clickRect.height/2 - dialogRect.height/2) + 'px,' + + '0) scale(' + scaleX + ',' + scaleY + ')' + ); + } + } + + function dialogTransitionEnd(dialogEl) { + var deferred = $q.defer(); + dialogEl.on($mdConstant.CSS.TRANSITIONEND, finished); + function finished(ev) { + //Make sure this transitionend didn't bubble up from a child + if (ev.target === dialogEl[0]) { + dialogEl.off($mdConstant.CSS.TRANSITIONEND, finished); + deferred.resolve(); + } + } + return deferred.promise; + } + } } +MdDialogProvider.$inject = ["$$interimElementProvider"]; + })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /** * @ngdoc module * @name material.components.divider * @description Divider module! */ angular.module('material.components.divider', [ - 'material.animations', - 'material.services.aria', - 'material.services.theming' + 'material.core' ]) -.directive('mdDivider', [ - '$mdTheming', - MdDividerDirective -]); + .directive('mdDivider', MdDividerDirective); function MdDividerController(){} @@ -1843,12 +4373,12 @@ function MdDividerController(){} * @description * Dividers group and separate content within lists and page layouts using strong visual and spatial distinctions. This divider is a thin rule, lightweight enough to not distract the user from content. * - * @param {boolean=} inset Add this attribute to activate the inset divider style. + * @param {boolean=} md-inset Add this attribute to activate the inset divider style. * @usage * * * - * + * * * */ @@ -1859,19 +4389,28 @@ function MdDividerDirective($mdTheming) { controller: [MdDividerController] }; } +MdDividerDirective.$inject = ["$mdTheming"]; })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { +'use strict'; + /* * @ngdoc module * @name material.components.icon * @description * Icon */ -angular.module('material.components.icon', []) - .directive('mdIcon', [ - mdIconDirective - ]); +angular.module('material.components.icon', [ + 'material.core' +]) + .directive('mdIcon', mdIconDirective); /* * @ngdoc directive @@ -1904,21 +4443,380 @@ function mdIconDirective() { } })(); +/*! + * Angular Material Design + * https://github.com/angular/material + * @license MIT + * v0.7.1 + */ (function() { + +/** + * @ngdoc module + * @name material.components.input + */ + +angular.module('material.components.input', [ + 'material.core' +]) + .directive('mdInputContainer', mdInputContainerDirective) + .directive('label', labelDirective) + .directive('input', inputTextareaDirective) + .directive('textarea', inputTextareaDirective) + .directive('mdMaxlength', mdMaxlengthDirective) + .directive('placeholder', placeholderDirective); + +/** + * @ngdoc directive + * @name mdInputContainer + * @module material.components.input + * + * @restrict E + * + * @description + * `` is the parent of any input or textarea element. + * + * Input and textarea elements will not behave properly unless the md-input-container + * parent is provided. + * + * @param md-is-error {expression=} When the given expression evaluates to true, the input container will go into error state. Defaults to erroring if the input has been touched and is invalid. + * + * @usage + * + * + * + * + * + * + * + * + * + * + * + * + * + */ +function mdInputContainerDirective($mdTheming, $parse) { + ContainerCtrl.$inject = ["$scope", "$element", "$attrs"]; + return { + restrict: 'E', + link: postLink, + controller: ContainerCtrl + }; + + function postLink(scope, element, attr) { + $mdTheming(element); + } + function ContainerCtrl($scope, $element, $attrs) { + var self = this; + + self.isErrorGetter = $attrs.mdIsError && $parse($attrs.mdIsError); + + self.element = $element; + self.setFocused = function(isFocused) { + $element.toggleClass('md-input-focused', !!isFocused); + }; + self.setHasValue = function(hasValue) { + $element.toggleClass('md-input-has-value', !!hasValue); + }; + self.setInvalid = function(isInvalid) { + $element.toggleClass('md-input-invalid', !!isInvalid); + }; + $scope.$watch(function() { + return self.label && self.input; + }, function(hasLabelAndInput) { + if (hasLabelAndInput && !self.label.attr('for')) { + self.label.attr('for', self.input.attr('id')); + } + }); + } +} +mdInputContainerDirective.$inject = ["$mdTheming", "$parse"]; + +function labelDirective() { + return { + restrict: 'E', + require: '^?mdInputContainer', + link: function(scope, element, attr, containerCtrl) { + if (!containerCtrl) return; + + containerCtrl.label = element; + scope.$on('$destroy', function() { + containerCtrl.label = null; + }); + } + }; +} + +/** + * @ngdoc directive + * @name input + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/input). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
That's too short!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +/** + * @ngdoc directive + * @name textarea + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/textarea). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +function inputTextareaDirective($mdUtil, $window, $compile, $animate) { + return { + restrict: 'E', + require: ['^?mdInputContainer', '?ngModel'], + link: postLink + }; + + function postLink(scope, element, attr, ctrls) { + + var containerCtrl = ctrls[0]; + var ngModelCtrl = ctrls[1] || $mdUtil.fakeNgModel(); + var isReadonly = angular.isDefined(attr.readonly); + + if ( !containerCtrl ) return; + if (containerCtrl.input) { + throw new Error(" can only have *one* or + * + * + * + */ +function mdInputContainerDirective($mdTheming, $parse) { + ContainerCtrl.$inject = ["$scope", "$element", "$attrs"]; + return { + restrict: 'E', + link: postLink, + controller: ContainerCtrl + }; + + function postLink(scope, element, attr) { + $mdTheming(element); + } + function ContainerCtrl($scope, $element, $attrs) { + var self = this; + + self.isErrorGetter = $attrs.mdIsError && $parse($attrs.mdIsError); + + self.element = $element; + self.setFocused = function(isFocused) { + $element.toggleClass('md-input-focused', !!isFocused); + }; + self.setHasValue = function(hasValue) { + $element.toggleClass('md-input-has-value', !!hasValue); + }; + self.setInvalid = function(isInvalid) { + $element.toggleClass('md-input-invalid', !!isInvalid); + }; + $scope.$watch(function() { + return self.label && self.input; + }, function(hasLabelAndInput) { + if (hasLabelAndInput && !self.label.attr('for')) { + self.label.attr('for', self.input.attr('id')); + } + }); + } +} +mdInputContainerDirective.$inject = ["$mdTheming", "$parse"]; + +function labelDirective() { + return { + restrict: 'E', + require: '^?mdInputContainer', + link: function(scope, element, attr, containerCtrl) { + if (!containerCtrl) return; + + containerCtrl.label = element; + scope.$on('$destroy', function() { + containerCtrl.label = null; + }); + } + }; +} + +/** + * @ngdoc directive + * @name input + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/input). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
That's too short!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +/** + * @ngdoc directive + * @name textarea + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/textarea). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +function inputTextareaDirective($mdUtil, $window, $compile, $animate) { + return { + restrict: 'E', + require: ['^?mdInputContainer', '?ngModel'], + link: postLink + }; + + function postLink(scope, element, attr, ctrls) { + + var containerCtrl = ctrls[0]; + var ngModelCtrl = ctrls[1] || $mdUtil.fakeNgModel(); + var isReadonly = angular.isDefined(attr.readonly); + + if ( !containerCtrl ) return; + if (containerCtrl.input) { + throw new Error(" can only have *one* or + * + * + * + */ +function mdInputContainerDirective($mdTheming) { + ContainerCtrl.$inject = ["$scope", "$element", "$mdUtil"]; + return { + restrict: 'E', + link: postLink, + controller: ContainerCtrl + }; + + function postLink(scope, element, attr) { + $mdTheming(element); + } + function ContainerCtrl($scope, $element, $mdUtil) { + var self = this; + + self.element = $element; + self.setFocused = function(isFocused) { + $element.toggleClass('md-input-focused', !!isFocused); + }; + self.setHasValue = function(hasValue) { + $element.toggleClass('md-input-has-value', !!hasValue); + }; + self.setInvalid = function(isInvalid) { + $element.toggleClass('md-input-invalid', !!isInvalid); + }; + + $scope.$watch(function() { + return self.label && self.input; + }, function(hasLabelAndInput) { + if (hasLabelAndInput && !self.label.attr('for')) { + self.label.attr('for', self.input.attr('id')); + } + }); + } +} +mdInputContainerDirective.$inject = ["$mdTheming"]; + +function labelDirective() { + return { + restrict: 'E', + require: '^?mdInputContainer', + link: function(scope, element, attr, containerCtrl) { + if (!containerCtrl) return; + + containerCtrl.label = element; + scope.$on('$destroy', function() { + containerCtrl.label = null; + }); + } + }; +} + +/** + * @ngdoc directive + * @name input + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/input). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
That's too short!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +/** + * @ngdoc directive + * @name textarea + * @restrict E + * @module material.components.input + * + * @description + * Must be placed as a child of an ``. + * + * Behaves like the [AngularJS input directive](https://docs.angularjs.org/api/ng/directive/textarea). + * + * @usage + * + * + * + * + * + * + *

With Errors (uses [ngMessages](https://docs.angularjs.org/api/ngMessages))

+ * + *
+ * + * + * + *
+ *
This is required!
+ *
That's too long!
+ *
+ *
+ *
+ *
+ * + * @param {number=} md-maxlength The maximum number of characters allowed in this input. If this is specified, a character counter will be shown underneath the input. + */ +function inputTextareaDirective($mdUtil, $window, $compile, $animate) { + return { + restrict: 'E', + require: ['^?mdInputContainer', '?ngModel'], + compile: compile, + }; + + function compile(element) { + element.addClass('md-input'); + return postLink; + } + function postLink(scope, element, attr, ctrls) { + + var containerCtrl = ctrls[0]; + var ngModelCtrl = ctrls[1]; + + if ( !containerCtrl ) return; + if (containerCtrl.input) { + throw new Error(" can only have *one* or - - - - it('should data-bind and become invalid', function() { - if (browser.params.browser == 'safari' || browser.params.browser == 'firefox') { - // SafariDriver can't handle contenteditable - // and Firefox driver can't clear contenteditables very well - return; - } - var contentEditable = element(by.css('[contenteditable]')); - var content = 'Change me!'; - - expect(contentEditable.getText()).toEqual(content); - - contentEditable.clear(); - contentEditable.sendKeys(protractor.Key.BACK_SPACE); - expect(contentEditable.getText()).toEqual(''); - expect(contentEditable.getAttribute('class')).toMatch(/ng-invalid-required/); - }); - - * - * - * - */ -var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$parse', '$animate', '$timeout', '$rootScope', '$q', '$interpolate', - function($scope, $exceptionHandler, $attr, $element, $parse, $animate, $timeout, $rootScope, $q, $interpolate) { - this.$viewValue = Number.NaN; - this.$modelValue = Number.NaN; - this.$validators = {}; - this.$asyncValidators = {}; - this.$parsers = []; - this.$formatters = []; - this.$viewChangeListeners = []; - this.$untouched = true; - this.$touched = false; - this.$pristine = true; - this.$dirty = false; - this.$valid = true; - this.$invalid = false; - this.$error = {}; // keep invalid keys here - this.$$success = {}; // keep valid keys here - this.$pending = undefined; // keep pending keys here - this.$name = $interpolate($attr.name || '', false)($scope); - - - var parsedNgModel = $parse($attr.ngModel), - pendingDebounce = null, - ctrl = this; - - var ngModelGet = function ngModelGet() { - var modelValue = parsedNgModel($scope); - if (ctrl.$options && ctrl.$options.getterSetter && isFunction(modelValue)) { - modelValue = modelValue(); - } - return modelValue; - }; - - var ngModelSet = function ngModelSet(newValue) { - var getterSetter; - if (ctrl.$options && ctrl.$options.getterSetter && - isFunction(getterSetter = parsedNgModel($scope))) { - - getterSetter(ctrl.$modelValue); - } else { - parsedNgModel.assign($scope, ctrl.$modelValue); - } - }; - - this.$$setOptions = function(options) { - ctrl.$options = options; - - if (!parsedNgModel.assign && (!options || !options.getterSetter)) { - throw $ngModelMinErr('nonassign', "Expression '{0}' is non-assignable. Element: {1}", - $attr.ngModel, startingTag($element)); - } - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$render - * - * @description - * Called when the view needs to be updated. It is expected that the user of the ng-model - * directive will implement this method. - * - * The `$render()` method is invoked in the following situations: - * - * * `$rollbackViewValue()` is called. If we are rolling back the view value to the last - * committed value then `$render()` is called to update the input control. - * * The value referenced by `ng-model` is changed programmatically and both the `$modelValue` and - * the `$viewValue` are different to 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 to their previous value. 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; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$isEmpty - * - * @description - * This is called when we need to determine if the value of the input is empty. - * - * For instance, the required directive does this to work out if the input has data or not. - * The default `$isEmpty` function checks whether the value is `undefined`, `''`, `null` or `NaN`. - * - * You can override this for input directives whose concept of being empty is different to the - * default. The `checkboxInputType` directive does this because in its case a value of `false` - * implies empty. - * - * @param {*} value Model value to check. - * @returns {boolean} True if `value` is empty. - */ - this.$isEmpty = function(value) { - return isUndefined(value) || value === '' || value === null || value !== value; - }; - - var parentForm = $element.inheritedData('$formController') || nullFormCtrl, - 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]; - }, - parentForm: parentForm, - $animate: $animate - }); - - /** - * @ngdoc method - * @name ngModel.NgModelController#$setPristine - * - * @description - * Sets the control to its pristine state. - * - * This method can be called to remove the 'ng-dirty' class and set the control to its pristine - * state (ng-pristine class). A model is considered to be pristine when the model has not been changed - * from when first compiled within then form. - */ - this.$setPristine = function() { - ctrl.$dirty = false; - ctrl.$pristine = true; - $animate.removeClass($element, DIRTY_CLASS); - $animate.addClass($element, PRISTINE_CLASS); - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$setUntouched - * - * @description - * Sets the control to its untouched state. - * - * This method can be called to remove the 'ng-touched' class and set the control to its - * untouched state (ng-untouched class). Upon compilation, a model is set as untouched - * 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); - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$setTouched - * - * @description - * Sets the control to its touched state. - * - * This method can be called to remove the 'ng-untouched' class and set the control to its - * touched state (ng-touched class). A model is considered to be touched when the user has - * first interacted (focussed) on the model input element and then shifted focus away (blurred) - * from the input element. - */ - this.$setTouched = function() { - ctrl.$touched = true; - ctrl.$untouched = false; - $animate.setClass($element, TOUCHED_CLASS, UNTOUCHED_CLASS); - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$rollbackViewValue - * - * @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 - * 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`. - * - * In this case, you can 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. - * - * The `$rollbackViewValue()` method should be called before programmatically changing the model of an - * input which may have such events pending. This is important in order to make sure that the - * input field will be updated with the new model value and any pending operations are cancelled. - * - * - * - * 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 = ''; - * } - * }; - * }]); - * - * - *
- *

Try typing something in each input. See that the model only updates when you - * blur off the input. - *

- *

Now see what happens if you start typing then press the Escape key

- * - *
- *

With $rollbackViewValue()

- *
- * myValue: "{{ myValue }}" - * - *

Without $rollbackViewValue()

- *
- * myValue: "{{ myValue }}" - *
- *
- *
- *
- */ - this.$rollbackViewValue = function() { - $timeout.cancel(pendingDebounce); - ctrl.$viewValue = ctrl.$$lastCommittedViewValue; - ctrl.$render(); - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$validate - * - * @description - * Runs each of the registered validators (first synchronous validators and then asynchronous validators). - */ - this.$validate = function() { - // ignore $validate before model is initialized - if (isNumber(ctrl.$modelValue) && isNaN(ctrl.$modelValue)) { - return; - } - this.$$parseAndValidate(); - }; - - this.$$runValidators = function(parseValid, modelValue, viewValue, doneCallback) { - currentValidationRunId++; - var localValidationRunId = currentValidationRunId; - - // check parser error - if (!processParseErrors(parseValid)) { - validationDone(false); - return; - } - if (!processSyncValidators()) { - validationDone(false); - return; - } - processAsyncValidators(); - - function processParseErrors(parseValid) { - var errorKey = ctrl.$$parserName || 'parse'; - if (parseValid === undefined) { - setValidity(errorKey, null); - } else { - setValidity(errorKey, parseValid); - if (!parseValid) { - forEach(ctrl.$validators, function(v, name) { - setValidity(name, null); - }); - forEach(ctrl.$asyncValidators, function(v, name) { - setValidity(name, null); - }); - return false; - } - } - return true; - } - - function processSyncValidators() { - var syncValidatorsValid = true; - forEach(ctrl.$validators, function(validator, name) { - var result = validator(modelValue, viewValue); - syncValidatorsValid = syncValidatorsValid && result; - setValidity(name, result); - }); - if (!syncValidatorsValid) { - forEach(ctrl.$asyncValidators, function(v, name) { - setValidity(name, null); - }); - return false; - } - return true; - } - - function processAsyncValidators() { - var validatorPromises = []; - var allValid = true; - forEach(ctrl.$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); - } - setValidity(name, undefined); - validatorPromises.push(promise.then(function() { - setValidity(name, true); - }, function(error) { - allValid = false; - setValidity(name, false); - })); - }); - if (!validatorPromises.length) { - validationDone(true); - } else { - $q.all(validatorPromises).then(function() { - validationDone(allValid); - }, noop); - } - } - - function setValidity(name, isValid) { - if (localValidationRunId === currentValidationRunId) { - ctrl.$setValidity(name, isValid); - } - } - - function validationDone(allValid) { - if (localValidationRunId === currentValidationRunId) { - - doneCallback(allValid); - } - } - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$commitViewValue - * - * @description - * Commit a pending update to the `$modelValue`. - * - * Updates may be pending by a debounced event or because the input is waiting for a some future - * 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; - - $timeout.cancel(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)) { - return; - } - ctrl.$$lastCommittedViewValue = viewValue; - - // change to dirty - if (ctrl.$pristine) { - ctrl.$dirty = true; - ctrl.$pristine = false; - $animate.removeClass($element, PRISTINE_CLASS); - $animate.addClass($element, DIRTY_CLASS); - parentForm.$setDirty(); - } - this.$$parseAndValidate(); - }; - - this.$$parseAndValidate = function() { - var viewValue = ctrl.$$lastCommittedViewValue; - var modelValue = viewValue; - var parserValid = isUndefined(modelValue) ? undefined : true; - - if (parserValid) { - for (var i = 0; i < ctrl.$parsers.length; i++) { - modelValue = ctrl.$parsers[i](modelValue); - if (isUndefined(modelValue)) { - parserValid = false; - break; - } - } - } - if (isNumber(ctrl.$modelValue) && isNaN(ctrl.$modelValue)) { - // ctrl.$modelValue has not been touched yet... - ctrl.$modelValue = ngModelGet(); - } - var prevModelValue = ctrl.$modelValue; - var allowInvalid = ctrl.$options && ctrl.$options.allowInvalid; - if (allowInvalid) { - ctrl.$modelValue = modelValue; - writeToModelIfNeeded(); - } - ctrl.$$runValidators(parserValid, modelValue, viewValue, function(allValid) { - if (!allowInvalid) { - // Note: Don't check ctrl.$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; - writeToModelIfNeeded(); - } - }); - - function writeToModelIfNeeded() { - if (ctrl.$modelValue !== prevModelValue) { - ctrl.$$writeModelToScope(); - } - } - }; - - this.$$writeModelToScope = function() { - ngModelSet(ctrl.$modelValue); - forEach(ctrl.$viewChangeListeners, function(listener) { - try { - listener(); - } catch (e) { - $exceptionHandler(e); - } - }); - }; - - /** - * @ngdoc method - * @name ngModel.NgModelController#$setViewValue - * - * @description - * Update the view value. - * - * This method should be called when an input directive want to change the view value; typically, - * this is done from within a DOM event handler. - * - * For example {@link ng.directive:input input} calls it when the value of the input changes and - * {@link ng.directive:select select} calls it when an option is selected. - * - * If the new `value` is an object (rather than a string or a number), 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 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. - * - * When this method 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. - * - * 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 - * `updateOn` events is triggered on the DOM element. - * All these actions will be debounced if the {@link ng.directive:ngModelOptions ngModelOptions} - * directive is used with a custom debounce for this particular event. - * - * Note that calling this function does not trigger a `$digest`. - * - * @param {string} 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); - } - }; - - this.$$debounceViewValueCommit = function(trigger) { - var debounceDelay = 0, - options = ctrl.$options, - 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']; - } - } - - $timeout.cancel(pendingDebounce); - if (debounceDelay) { - pendingDebounce = $timeout(function() { - ctrl.$commitViewValue(); - }, debounceDelay); - } else if ($rootScope.$$phase) { - ctrl.$commitViewValue(); - } else { - $scope.$apply(function() { - ctrl.$commitViewValue(); - }); - } - }; - - // model -> value - // Note: we cannot use a normal scope.$watch as we want to detect the following: - // 1. scope value is 'a' - // 2. user enters 'b' - // 3. ng-change kicks in and reverts scope value to 'a' - // -> 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(); - - // 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) { - ctrl.$modelValue = modelValue; - - var formatters = ctrl.$formatters, - idx = formatters.length; - - var viewValue = modelValue; - while (idx--) { - viewValue = formatters[idx](viewValue); - } - if (ctrl.$viewValue !== viewValue) { - ctrl.$viewValue = ctrl.$$lastCommittedViewValue = viewValue; - ctrl.$render(); - - ctrl.$$runValidators(undefined, modelValue, viewValue, noop); - } - } - - return modelValue; - }); -}]; - - -/** - * @ngdoc directive - * @name ngModel - * - * @element input - * @priority 1 - * - * @description - * The `ngModel` directive binds an `input`,`select`, `textarea` (or custom form control) to a - * property on the scope using {@link ngModel.NgModelController NgModelController}, - * which is created and exposed by this directive. - * - * `ngModel` is responsible for: - * - * - Binding the view into the model, which other directives such as `input`, `textarea` or `select` - * require. - * - Providing validation behavior (i.e. required, number, email, url). - * - Keeping the state of the control (valid/invalid, dirty/pristine, touched/untouched, validation errors). - * - Setting related css classes on the element (`ng-valid`, `ng-invalid`, `ng-dirty`, `ng-pristine`, `ng-touched`, `ng-untouched`) including animations. - * - Registering the control with its parent {@link ng.directive:form form}. - * - * Note: `ngModel` will try to bind to the property given by evaluating the expression on the - * current scope. If the property doesn't already exist on this scope, it will be created - * implicitly and added to the scope. - * - * For best practices on using `ngModel`, see: - * - * - [Understanding Scopes](https://github.com/angular/angular.js/wiki/Understanding-Scopes) - * - * For basic examples, how to use `ngModel`, see: - * - * - {@link ng.directive:input input} - * - {@link input[text] text} - * - {@link input[checkbox] checkbox} - * - {@link input[radio] radio} - * - {@link input[number] number} - * - {@link input[email] email} - * - {@link input[url] url} - * - {@link input[date] date} - * - {@link input[dateTimeLocal] dateTimeLocal} - * - {@link input[time] time} - * - {@link input[month] month} - * - {@link input[week] week} - * - {@link ng.directive:select select} - * - {@link ng.directive:textarea textarea} - * - * # CSS classes - * The following CSS classes are added and removed on the associated input/select/textarea element - * depending on the validity of the model. - * - * - `ng-valid`: the model is valid - * - `ng-invalid`: the model is invalid - * - `ng-valid-[key]`: for each valid key added by `$setValidity` - * - `ng-invalid-[key]`: for each invalid key added by `$setValidity` - * - `ng-pristine`: the control hasn't been interacted with yet - * - `ng-dirty`: the control has been interacted with - * - `ng-touched`: the control has been blurred - * - `ng-untouched`: the control hasn't been blurred - * - `ng-pending`: any `$asyncValidators` are unfulfilled - * - * Keep in mind that ngAnimate can detect each of these classes when added and removed. - * - * ## Animation Hooks - * - * Animations within models are triggered when any of the associated CSS classes are added and removed - * on the input element which is attached to the model. These classes are: `.ng-pristine`, `.ng-dirty`, - * `.ng-invalid` and `.ng-valid` as well as any other validations that are performed on the model itself. - * The animations that are triggered within ngModel are similar to how they work in ngClass and - * animations can be hooked into using CSS transitions, keyframes as well as JS animations. - * - * The following example shows a simple way to utilize CSS transitions to style an input element - * that has been rendered as invalid after it has been validated: - * - *
- * //be sure to include ngAnimate as a module to hook into more
- * //advanced animations
- * .my-input {
- *   transition:0.5s linear all;
- *   background: white;
- * }
- * .my-input.ng-invalid {
- *   background: red;
- *   color:white;
- * }
- * 
- * - * @example - * - - - - Update input to see transitions when valid/invalid. - Integer is a valid value. -
- -
-
- *
- * - * ## Binding to a getter/setter - * - * Sometimes it's helpful to bind `ngModel` to a getter/setter function. A getter/setter is a - * function that returns a representation of the model when called with zero arguments, and sets - * the internal state of a model when called with an argument. It's sometimes useful to use this - * for models that have an internal representation that's different than what the model exposes - * to the view. - * - *
- * **Best Practice:** It's best to keep getters fast because Angular is likely to call them more - * frequently than other parts of your code. - *
- * - * You use this behavior by adding `ng-model-options="{ getterSetter: true }"` to an element that - * has `ng-model` attached to it. You can also add `ng-model-options="{ getterSetter: true }"` to - * a `
`, which will enable this behavior for all ``s within it. See - * {@link ng.directive:ngModelOptions `ngModelOptions`} for more. - * - * The following example shows how to use `ngModel` with a getter/setter: - * - * @example - * - -
- - Name: - - -
user.name = 
-
-
- - angular.module('getterSetterExample', []) - .controller('ExampleController', ['$scope', function($scope) { - var _name = 'Brian'; - $scope.user = { - name: function(newName) { - if (angular.isDefined(newName)) { - _name = newName; - } - return _name; - } - }; - }]); - - *
- */ -var ngModelDirective = function() { - return { - restrict: 'A', - require: ['ngModel', '^?form', '^?ngModelOptions'], - controller: NgModelController, - // Prelink needs to run before any input directive - // so that we can set the NgModelOptions in NgModelController - // before anyone else uses it. - priority: 1, - compile: function ngModelCompile(element) { - // Setup initial state of the control - element.addClass(PRISTINE_CLASS).addClass(UNTOUCHED_CLASS).addClass(VALID_CLASS); - - return { - pre: function ngModelPreLink(scope, element, attr, ctrls) { - var modelCtrl = ctrls[0], - formCtrl = ctrls[1] || nullFormCtrl; - - modelCtrl.$$setOptions(ctrls[2] && ctrls[2].$options); - - // notify others, especially parent forms - formCtrl.$addControl(modelCtrl); - - attr.$observe('name', function(newValue) { - if (modelCtrl.$name !== newValue) { - formCtrl.$$renameControl(modelCtrl, newValue); - } - }); - - scope.$on('$destroy', function() { - formCtrl.$removeControl(modelCtrl); - }); - }, - post: function ngModelPostLink(scope, element, attr, ctrls) { - var modelCtrl = ctrls[0]; - if (modelCtrl.$options && modelCtrl.$options.updateOn) { - element.on(modelCtrl.$options.updateOn, function(ev) { - modelCtrl.$$debounceViewValueCommit(ev && ev.type); - }); - } - - element.on('blur', function(ev) { - if (modelCtrl.$touched) return; - - scope.$apply(function() { - modelCtrl.$setTouched(); - }); - }); - } - }; - } - }; -}; - - -/** - * @ngdoc directive - * @name ngChange - * - * @description - * Evaluate the given expression when the user changes the input. - * The expression is evaluated immediately, unlike the JavaScript onchange event - * which only triggers at the end of a change (usually, when the user leaves the - * form element or presses the return key). - * - * The `ngChange` expression is only evaluated when a change in the input value causes - * a new value to be committed to the model. - * - * It will not be evaluated: - * * if the value returned from the `$parsers` transformation pipeline has not changed - * * if the input has continued to be invalid since the model will stay `null` - * * if the model is changed programmatically and not by a change to the input value - * - * - * Note, this directive requires `ngModel` to be present. - * - * @element input - * @param {expression} ngChange {@link guide/expression Expression} to evaluate upon change - * in input value. - * - * @example - * - * - * - *
- * - * - *
- * debug = {{confirmed}}
- * counter = {{counter}}
- *
- *
- * - * var counter = element(by.binding('counter')); - * var debug = element(by.binding('confirmed')); - * - * it('should evaluate the expression if changing from view', function() { - * expect(counter.getText()).toContain('0'); - * - * element(by.id('ng-change-example1')).click(); - * - * expect(counter.getText()).toContain('1'); - * expect(debug.getText()).toContain('true'); - * }); - * - * it('should not evaluate the expression if changing from model', function() { - * element(by.id('ng-change-example2')).click(); - - * expect(counter.getText()).toContain('0'); - * expect(debug.getText()).toContain('true'); - * }); - * - *
- */ -var ngChangeDirective = valueFn({ - restrict: 'A', - require: 'ngModel', - link: function(scope, element, attr, ctrl) { - ctrl.$viewChangeListeners.push(function() { - scope.$eval(attr.ngChange); - }); - } -}); - - -var requiredDirective = function() { - return { - restrict: 'A', - require: '?ngModel', - link: function(scope, elm, attr, ctrl) { - if (!ctrl) return; - attr.required = true; // force truthy in case we are on non input element - - ctrl.$validators.required = function(value) { - return !attr.required || !ctrl.$isEmpty(value); - }; - - attr.$observe('required', function() { - ctrl.$validate(); - }); - } - }; -}; - - -var patternDirective = function() { - return { - restrict: 'A', - require: '?ngModel', - link: function(scope, elm, attr, ctrl) { - if (!ctrl) return; - - var regexp, patternExp = attr.ngPattern || attr.pattern; - attr.$observe('pattern', function(regex) { - if (isString(regex) && regex.length > 0) { - regex = new RegExp(regex); - } - - if (regex && !regex.test) { - throw minErr('ngPattern')('noregexp', - 'Expected {0} to be a RegExp but was {1}. Element: {2}', patternExp, - regex, startingTag(elm)); - } - - regexp = regex || undefined; - ctrl.$validate(); - }); - - ctrl.$validators.pattern = function(value) { - return ctrl.$isEmpty(value) || isUndefined(regexp) || regexp.test(value); - }; - } - }; -}; - - -var maxlengthDirective = function() { - return { - restrict: 'A', - require: '?ngModel', - link: function(scope, elm, attr, ctrl) { - if (!ctrl) return; - - var maxlength = 0; - attr.$observe('maxlength', function(value) { - maxlength = int(value) || 0; - ctrl.$validate(); - }); - ctrl.$validators.maxlength = function(modelValue, viewValue) { - return ctrl.$isEmpty(modelValue) || viewValue.length <= maxlength; - }; - } - }; -}; - -var minlengthDirective = function() { - return { - restrict: 'A', - require: '?ngModel', - link: function(scope, elm, attr, ctrl) { - if (!ctrl) return; - - var minlength = 0; - attr.$observe('minlength', function(value) { - minlength = int(value) || 0; - ctrl.$validate(); - }); - ctrl.$validators.minlength = function(modelValue, viewValue) { - return ctrl.$isEmpty(modelValue) || viewValue.length >= minlength; - }; - } - }; -}; - - -/** - * @ngdoc directive - * @name ngList - * - * @description - * Text input that converts between a delimited string and an array of strings. The default - * delimiter is a comma followed by a space - equivalent to `ng-list=", "`. You can specify a custom - * delimiter as the value of the `ngList` attribute - for example, `ng-list=" | "`. - * - * The behaviour of the directive is affected by the use of the `ngTrim` attribute. - * * If `ngTrim` is set to `"false"` then whitespace around both the separator and each - * list item is respected. This implies that the user of the directive is responsible for - * dealing with whitespace but also allows you to use whitespace as a delimiter, such as a - * tab or newline character. - * * Otherwise whitespace around the delimiter is ignored when splitting (although it is respected - * when joining the list items back together) and whitespace around each list item is stripped - * before it is added to the model. - * - * ### Example with Validation - * - * - * - * angular.module('listExample', []) - * .controller('ExampleController', ['$scope', function($scope) { - * $scope.names = ['morpheus', 'neo', 'trinity']; - * }]); - * - * - *
- * List: - * - * Required! - *
- * names = {{names}}
- * myForm.namesInput.$valid = {{myForm.namesInput.$valid}}
- * myForm.namesInput.$error = {{myForm.namesInput.$error}}
- * myForm.$valid = {{myForm.$valid}}
- * myForm.$error.required = {{!!myForm.$error.required}}
- *
- *
- * - * var listInput = element(by.model('names')); - * var names = element(by.exactBinding('names')); - * var valid = element(by.binding('myForm.namesInput.$valid')); - * var error = element(by.css('span.error')); - * - * it('should initialize to model', function() { - * expect(names.getText()).toContain('["morpheus","neo","trinity"]'); - * expect(valid.getText()).toContain('true'); - * expect(error.getCssValue('display')).toBe('none'); - * }); - * - * it('should be invalid if empty', function() { - * listInput.clear(); - * listInput.sendKeys(''); - * - * expect(names.getText()).toContain(''); - * expect(valid.getText()).toContain('false'); - * expect(error.getCssValue('display')).not.toBe('none'); - * }); - * - *
- * - * ### Example - splitting on whitespace - * - * - * - *
{{ list | json }}
- *
- * - * it("should split the text by newlines", function() { - * var listInput = element(by.model('list')); - * var output = element(by.binding('list | json')); - * listInput.sendKeys('abc\ndef\nghi'); - * expect(output.getText()).toContain('[\n "abc",\n "def",\n "ghi"\n]'); - * }); - * - *
- * - * @element input - * @param {string=} ngList optional delimiter that should be used to split the value. - */ -var ngListDirective = function() { - return { - restrict: 'A', - 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 trimValues = attr.ngTrim !== 'false'; - var separator = trimValues ? trim(ngList) : ngList; - - var parse = function(viewValue) { - // If the viewValue is invalid (say required but empty) it will be `undefined` - if (isUndefined(viewValue)) return; - - var list = []; - - if (viewValue) { - forEach(viewValue.split(separator), function(value) { - if (value) list.push(trimValues ? trim(value) : value); - }); - } - - return list; - }; - - ctrl.$parsers.push(parse); - ctrl.$formatters.push(function(value) { - if (isArray(value)) { - return value.join(ngList); - } - - return undefined; - }); - - // Override the standard $isEmpty because an empty array means the input is empty. - ctrl.$isEmpty = function(value) { - return !value || !value.length; - }; - } - }; -}; var CONSTANT_VALUE_REGEXP = /^(true|false|\d+)$/; @@ -21112,12 +20188,17 @@ var CONSTANT_VALUE_REGEXP = /^(true|false|\d+)$/; * @name ngValue * * @description - * Binds the given expression to the value of `option` or `input[radio]`, so - * that when the element is selected, the `ngModel` of that element is set to + * Binds the given expression to the value of `
* - * ## `select as` + * ## `select` **`as`** * - * Using `select as` will bind the result of the `select as` expression to the model, but + * Using `select` **`as`** will bind the result of the `select` expression to the model, but * the value of the ` + * ``` + * + * ```js + * $scope.values = [{ + * id: 1, + * label: 'aLabel', + * subItem: { name: 'aSubItem' } + * }, { + * id: 2, + * label: 'bLabel', + * subItem: { name: 'bSubItem' } + * }]; + * + * $scope.selected = { name: 'aSubItem' }; + * ``` + * + * With the purpose of preserving the selection, the **`track by`** expression is always applied to the element + * of the data source (to `item` in this example). To calculate whether an element is selected, we do the + * following: + * + * 1. Apply **`track by`** to the elements in the array. In the example: `[1, 2]` + * 2. Apply **`track by`** to the already selected value in `ngModel`. + * In the example: this is not possible as **`track by`** refers to `item.id`, but the selected + * value from `ngModel` is `{name: 'aSubItem'}`, so the **`track by`** expression is applied to + * a wrong object, the selected element can't be found, `',""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ha.optgroup=ha.option;ha.tbody=ha.tfoot=ha.colgroup=ha.caption=ha.thead;ha.th=ha.td;var Ka=Q.prototype={ready:function(b){function a(){c||(c= -!0,b())}var c=!1;"complete"===U.readyState?setTimeout(a):(this.on("DOMContentLoaded",a),Q(N).on("load",a))},toString:function(){var b=[];s(this,function(a){b.push(""+a)});return"["+b.join(", ")+"]"},eq:function(b){return 0<=b?v(this[b]):v(this[this.length+b])},length:0,push:If,sort:[].sort,splice:[].splice},vb={};s("multiple selected checked disabled readOnly required open".split(" "),function(b){vb[S(b)]=b});var Kc={};s("input select option textarea button form details".split(" "),function(b){Kc[b]= -!0});var Lc={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"};s({data:Qb,removeData:rb},function(b,a){Q[a]=b});s({data:Qb,inheritedData:ub,scope:function(b){return v.data(b,"$scope")||ub(b.parentNode||b,["$isolateScope","$scope"])},isolateScope:function(b){return v.data(b,"$isolateScope")||v.data(b,"$isolateScopeNoTemplate")},controller:Gc,injector:function(b){return ub(b,"$injector")},removeAttr:function(b,a){b.removeAttribute(a)},hasClass:Rb,css:function(b, -a,c){a=$a(a);if(z(c))b.style[a]=c;else return b.style[a]},attr:function(b,a,c){var d=S(a);if(vb[d])if(z(c))c?(b[a]=!0,b.setAttribute(a,d)):(b[a]=!1,b.removeAttribute(d));else return b[a]||(b.attributes.getNamedItem(a)||y).specified?d:t;else if(z(c))b.setAttribute(a,c);else if(b.getAttribute)return b=b.getAttribute(a,2),null===b?t:b},prop:function(b,a,c){if(z(c))b[a]=c;else return b[a]},text:function(){function b(a,b){if(x(b)){var d=a.nodeType;return d===ka||d===jb?a.textContent:""}a.textContent=b} -b.$dv="";return b}(),val:function(b,a){if(x(a)){if(b.multiple&&"select"===pa(b)){var c=[];s(b.options,function(a){a.selected&&c.push(a.value||a.text)});return 0===c.length?null:c}return b.value}b.value=a},html:function(b,a){if(x(a))return b.innerHTML;qb(b,!0);b.innerHTML=a},empty:Hc},function(b,a){Q.prototype[a]=function(a,d){var e,f,g=this.length;if(b!==Hc&&(2==b.length&&b!==Rb&&b!==Gc?a:d)===t){if(P(a)){for(e=0;e":function(a,c,d,e){return d(a,c)>e(a,c)},"<=":function(a,c,d,e){return d(a,c)<=e(a,c)},">=":function(a,c,d,e){return d(a,c)>=e(a,c)},"&&":function(a,c,d,e){return d(a,c)&&e(a,c)},"||":function(a,c,d,e){return d(a,c)||e(a,c)},"!":function(a,c,d){return!d(a,c)},"=":!0,"|":!0}),Qf={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'}, -ec=function(a){this.options=a};ec.prototype={constructor:ec,lex:function(a){this.text=a;this.index=0;this.ch=t;for(this.tokens=[];this.index=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,c,d){d=d||this.index;c=z(c)?"s "+c+"-"+this.index+" ["+this.text.substring(c,d)+"]":" "+d;throw oa("lexerr",a,c,this.text);},readNumber:function(){for(var a="",c=this.index;this.index","<=",">="))a=this.binaryFn(a,c.fn,this.relational());return a},additive:function(){for(var a= -this.multiplicative(),c;c=this.expect("+","-");)a=this.binaryFn(a,c.fn,this.multiplicative());return a},multiplicative:function(){for(var a=this.unary(),c;c=this.expect("*","/","%");)a=this.binaryFn(a,c.fn,this.unary());return a},unary:function(){var a;return this.expect("+")?this.primary():(a=this.expect("-"))?this.binaryFn(cb.ZERO,a.fn,this.unary()):(a=this.expect("!"))?this.unaryFn(a.fn,this.unary()):this.primary()},fieldAccess:function(a){var c=this.text,d=this.expect().text,e=bd(d,this.options, -c);return F(function(c,d,k){return e(k||a(c,d))},{assign:function(e,g,k){(k=a(e,k))||a.assign(e,k={});return Oa(k,d,g,c)}})},objectIndex:function(a){var c=this.text,d=this.expression();this.consume("]");return F(function(e,f){var g=a(e,f),k=d(e,f);na(k,c);return g?Aa(g[k],c):t},{assign:function(e,f,g){var k=na(d(e,g),c);(g=Aa(a(e,g),c))||a.assign(e,g={});return g[k]=f}})},functionCall:function(a,c){var d=[];if(")"!==this.peekToken().text){do d.push(this.expression());while(this.expect(","))}this.consume(")"); -var e=this.text,f=d.length?[]:null;return function(g,k){var h=c?c(g,k):g,l=a(g,k,h)||y;if(f)for(var m=d.length;m--;)f[m]=Aa(d[m](g,k),e);Aa(h,e);if(l){if(l.constructor===l)throw oa("isecfn",e);if(l===Nf||l===Of||l===Pf)throw oa("isecff",e);}h=l.apply?l.apply(h,f):l(f[0],f[1],f[2],f[3],f[4]);return Aa(h,e)}},arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;var c=this.expression();a.push(c)}while(this.expect(","))}this.consume("]");return F(function(c, -e){for(var f=[],g=0,k=a.length;ga.getHours()?c.AMPMS[0]:c.AMPMS[1]},Z:function(a){a=-1*a.getTimezoneOffset();return a=(0<=a?"+":"")+(Ab(Math[0=k};d.$observe("min",function(a){z(a)&&!X(a)&&(a=parseFloat(a,10));k=X(a)&&!isNaN(a)?a:t;e.$validate()})}if(d.max||d.ngMax){var h;e.$validators.max=function(a){return e.$isEmpty(a)|| -x(h)||a<=h};d.$observe("max",function(a){z(a)&&!X(a)&&(a=parseFloat(a,10));h=X(a)&&!isNaN(a)?a:t;e.$validate()})}},url:function(a,c,d,e,f,g){db(a,c,d,e,f,g);fc(e);e.$$parserName="url";e.$validators.url=function(a){return e.$isEmpty(a)||Rf.test(a)}},email:function(a,c,d,e,f,g){db(a,c,d,e,f,g);fc(e);e.$$parserName="email";e.$validators.email=function(a){return e.$isEmpty(a)||Sf.test(a)}},radio:function(a,c,d,e){x(d.name)&&c.attr("name",++gb);c.on("click",function(a){c[0].checked&&e.$setViewValue(d.value, -a&&a.type)});e.$render=function(){c[0].checked=d.value==e.$viewValue};d.$observe("value",e.$render)},checkbox:function(a,c,d,e,f,g,k,h){var l=sd(h,a,"ngTrueValue",d.ngTrueValue,!0),m=sd(h,a,"ngFalseValue",d.ngFalseValue,!1);c.on("click",function(a){e.$setViewValue(c[0].checked,a&&a.type)});e.$render=function(){c[0].checked=e.$viewValue};e.$isEmpty=function(a){return a!==l};e.$formatters.push(function(a){return la(a,l)});e.$parsers.push(function(a){return a?l:m})},hidden:y,button:y,submit:y,reset:y, -file:y},vc=["$browser","$sniffer","$filter","$parse",function(a,c,d,e){return{restrict:"E",require:["?ngModel"],link:{pre:function(f,g,k,h){h[0]&&(Bd[S(k.type)]||Bd.text)(f,g,k,h[0],c,a,d,e)}}}}],fb="ng-valid",td="ng-invalid",Pa="ng-pristine",Db="ng-dirty",vd="ng-pending",Vf=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(a,c,d,e,f,g,k,h,l,m){this.$modelValue=this.$viewValue=Number.NaN;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=t;this.$name=m(d.name||"",!1)(a);var p=f(d.ngModel),q=null,n=this,r=function(){var c=p(a);n.$options&&n.$options.getterSetter&&A(c)&&(c=c());return c},O=function(c){var d;n.$options&&n.$options.getterSetter&&A(d=p(a))?d(n.$modelValue):p.assign(a,n.$modelValue)};this.$$setOptions=function(a){n.$options= -a;if(!(p.assign||a&&a.getterSetter))throw Fb("nonassign",d.ngModel,sa(e));};this.$render=y;this.$isEmpty=function(a){return x(a)||""===a||null===a||a!==a};var B=e.inheritedData("$formController")||Cb,C=0;qd({ctrl:this,$element:e,set:function(a,c){a[c]=!0},unset:function(a,c){delete a[c]},parentForm:B,$animate:g});this.$setPristine=function(){n.$dirty=!1;n.$pristine=!0;g.removeClass(e,Db);g.addClass(e,Pa)};this.$setUntouched=function(){n.$touched=!1;n.$untouched=!0;g.setClass(e,"ng-untouched","ng-touched")}; -this.$setTouched=function(){n.$touched=!0;n.$untouched=!1;g.setClass(e,"ng-touched","ng-untouched")};this.$rollbackViewValue=function(){k.cancel(q);n.$viewValue=n.$$lastCommittedViewValue;n.$render()};this.$validate=function(){X(n.$modelValue)&&isNaN(n.$modelValue)||this.$$parseAndValidate()};this.$$runValidators=function(a,c,d,e){function f(){var a=!0;s(n.$validators,function(e,f){var g=e(c,d);a=a&&g;h(f,g)});return a?!0:(s(n.$asyncValidators,function(a,c){h(c,null)}),!1)}function g(){var a=[],e= -!0;s(n.$asyncValidators,function(f,g){var k=f(c,d);if(!k||!A(k.then))throw Fb("$asyncValidators",k);h(g,t);a.push(k.then(function(){h(g,!0)},function(a){e=!1;h(g,!1)}))});a.length?l.all(a).then(function(){k(e)},y):k(!0)}function h(a,c){m===C&&n.$setValidity(a,c)}function k(a){m===C&&e(a)}C++;var m=C;(function(a){var c=n.$$parserName||"parse";if(a===t)h(c,null);else if(h(c,a),!a)return s(n.$validators,function(a,c){h(c,null)}),s(n.$asyncValidators,function(a,c){h(c,null)}),!1;return!0})(a)?f()?g(): -k(!1):k(!1)};this.$commitViewValue=function(){var a=n.$viewValue;k.cancel(q);if(n.$$lastCommittedViewValue!==a||""===a&&n.$$hasNativeValidators)n.$$lastCommittedViewValue=a,n.$pristine&&(n.$dirty=!0,n.$pristine=!1,g.removeClass(e,Pa),g.addClass(e,Db),B.$setDirty()),this.$$parseAndValidate()};this.$$parseAndValidate=function(){var a=n.$$lastCommittedViewValue,c=a,d=x(c)?t:!0;if(d)for(var e=0;e=f}}}}},ue=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,c,d,e){var f=c.attr(d.$attr.ngList)||", ",g="false"!==d.ngTrim,k=g?T(f):f;e.$parsers.push(function(a){if(!x(a)){var c=[];a&&s(a.split(k),function(a){a&&c.push(g?T(a):a)});return c}});e.$formatters.push(function(a){return H(a)? -a.join(f):t});e.$isEmpty=function(a){return!a||!a.length}}}},Wf=/^(true|false|\d+)$/,we=function(){return{restrict:"A",priority:100,compile:function(a,c){return Wf.test(c.ngValue)?function(a,c,f){f.$set("value",a.$eval(f.ngValue))}:function(a,c,f){a.$watch(f.ngValue,function(a){f.$set("value",a)})}}}},xe=function(){return{restrict:"A",controller:["$scope","$attrs",function(a,c){var d=this;this.$options=a.$eval(c.ngModelOptions);this.$options.updateOn!==t?(this.$options.updateOnDefault=!1,this.$options.updateOn= -T(this.$options.updateOn.replace(Uf,function(){d.$options.updateOnDefault=!0;return" "}))):this.$options.updateOnDefault=!0}]}},Xd=["$compile",function(a){return{restrict:"AC",compile:function(c){a.$$addBindingClass(c);return function(c,e,f){a.$$addBindingInfo(e,f.ngBind);e=e[0];c.$watch(f.ngBind,function(a){e.textContent=a===t?"":a})}}}}],Zd=["$interpolate","$compile",function(a,c){return{compile:function(d){c.$$addBindingClass(d);return function(d,f,g){d=a(f.attr(g.$attr.ngBindTemplate));c.$$addBindingInfo(f, -d.expressions);f=f[0];g.$observe("ngBindTemplate",function(a){f.textContent=a===t?"":a})}}}}],Yd=["$sce","$parse","$compile",function(a,c,d){return{restrict:"A",compile:function(e,f){var g=c(f.ngBindHtml),k=c(f.ngBindHtml,function(a){return(a||"").toString()});d.$$addBindingClass(e);return function(c,e,f){d.$$addBindingInfo(e,f.ngBindHtml);c.$watch(k,function(){e.html(a.getTrustedHtml(g(c))||"")})}}}}],$d=gc("",!0),be=gc("Odd",0),ae=gc("Even",1),ce=Ia({compile:function(a,c){c.$set("ngCloak",t);a.removeClass("ng-cloak")}}), -de=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Ac={},Xf={blur:!0,focus:!0};s("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(a){var c=ua("ng-"+a);Ac[c]=["$parse","$rootScope",function(d,e){return{restrict:"A",compile:function(f,g){var k=d(g[c]);return function(c,d){d.on(a,function(d){var f=function(){k(c,{$event:d})};Xf[a]&&e.$$phase?c.$evalAsync(f):c.$apply(f)})}}}}]}); -var ge=["$animate",function(a){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(c,d,e,f,g){var k,h,l;c.$watch(e.ngIf,function(c){c?h||g(function(c,f){h=f;c[c.length++]=U.createComment(" end ngIf: "+e.ngIf+" ");k={clone:c};a.enter(c,d.parent(),d)}):(l&&(l.remove(),l=null),h&&(h.$destroy(),h=null),k&&(l=nb(k.clone),a.leave(l).then(function(){l=null}),k=null))})}}}],he=["$templateRequest","$anchorScroll","$animate","$sce",function(a,c,d,e){return{restrict:"ECA", -priority:400,terminal:!0,transclude:"element",controller:ta.noop,compile:function(f,g){var k=g.ngInclude||g.src,h=g.onload||"",l=g.autoscroll;return function(f,g,q,n,r){var s=0,t,C,D,G=function(){C&&(C.remove(),C=null);t&&(t.$destroy(),t=null);D&&(d.leave(D).then(function(){C=null}),C=D,D=null)};f.$watch(e.parseAsResourceUrl(k),function(e){var k=function(){!z(l)||l&&!f.$eval(l)||c()},q=++s;e?(a(e,!0).then(function(a){if(q===s){var c=f.$new();n.template=a;a=r(c,function(a){G();d.enter(a,null,g).then(k)}); -t=c;D=a;t.$emit("$includeContentLoaded",e);f.$eval(h)}},function(){q===s&&(G(),f.$emit("$includeContentError",e))}),f.$emit("$includeContentRequested",e)):(G(),n.template=null)})}}}}],ye=["$compile",function(a){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(c,d,e,f){/SVG/.test(d[0].toString())?(d.empty(),a(Dc(f.template,U).childNodes)(c,function(a){d.append(a)},t,t,d)):(d.html(f.template),a(d.contents())(c))}}}],ie=Ia({priority:450,compile:function(){return{pre:function(a,c, -d){a.$eval(d.ngInit)}}}}),je=Ia({terminal:!0,priority:1E3}),ke=["$locale","$interpolate",function(a,c){var d=/{}/g;return{restrict:"EA",link:function(e,f,g){var k=g.count,h=g.$attr.when&&f.attr(g.$attr.when),l=g.offset||0,m=e.$eval(h)||{},p={},q=c.startSymbol(),n=c.endSymbol(),r=/^when(Minus)?(.+)$/;s(g,function(a,c){r.test(c)&&(m[S(c.replace("when","").replace("Minus","-"))]=f.attr(g.$attr[c]))});s(m,function(a,e){p[e]=c(a.replace(d,q+k+"-"+l+n))});e.$watch(function(){var c=parseFloat(e.$eval(k)); -if(isNaN(c))return"";c in m||(c=a.pluralCat(c-l));return p[c](e)},function(a){f.text(a)})}}}],le=["$parse","$animate",function(a,c){var d=w("ngRepeat"),e=function(a,c,d,e,l,m,p){a[d]=e;l&&(a[l]=m);a.$index=c;a.$first=0===c;a.$last=c===p-1;a.$middle=!(a.$first||a.$last);a.$odd=!(a.$even=0===(c&1))};return{restrict:"A",multiElement:!0,transclude:"element",priority:1E3,terminal:!0,$$tlb:!0,compile:function(f,g){var k=g.ngRepeat,h=U.createComment(" end ngRepeat: "+k+" "),l=k.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/); -if(!l)throw d("iexp",k);var m=l[1],p=l[2],q=l[3],n=l[4],l=m.match(/^(?:([\$\w]+)|\(([\$\w]+)\s*,\s*([\$\w]+)\))$/);if(!l)throw d("iidexp",m);var r=l[3]||l[1],z=l[2];if(q&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(q)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent)$/.test(q)))throw d("badident",q);var w,C,D,G,u={$id:Ma};n?w=a(n):(D=function(a,c){return Ma(c)},G=function(a){return a});return function(a,f,g,l,m){w&&(C=function(c,d,e){z&&(u[z]=c);u[r]=d;u.$index=e;return w(a,u)}); -var n=wa();a.$watchCollection(p,function(g){var l,p,E=f[0],u,w=wa(),B,y,F,x,H,A,J;q&&(a[q]=g);if(Qa(g))H=g,p=C||D;else{p=C||G;H=[];for(J in g)g.hasOwnProperty(J)&&"$"!=J.charAt(0)&&H.push(J);H.sort()}B=H.length;J=Array(B);for(l=0;lB;)d=t.pop(),m(R,d.label,!1),d.element.remove();s(R,function(a,c){0a&&q.removeOption(c)})}for(;Q.length> -v;)Q.pop()[0].element.remove()}var u;if(!(u=r.match(d)))throw Yf("iexp",r,sa(f));var A=c(u[2]||u[1]),y=u[4]||u[6],x=/ as /.test(u[0])&&u[1],v=x?c(x):null,F=u[5],J=c(u[3]||""),B=c(u[2]?u[1]:y),K=c(u[7]),I=u[8]?c(u[8]):null,P={},Q=[[{element:f,label:""}]],S={};w&&(a(w)(e),w.removeClass("ng-scope"),w.remove());f.empty();f.on("change",function(){e.$apply(function(){var a=K(e)||[],c;if(n)c=[],s(f.val(),function(d){d=I?P[d]:d;c.push("?"===d?t:""===d?null:h(v?v:B,d,a[d]))});else{var d=I?P[f.val()]:f.val(); -c="?"===d?t:""===d?null:h(v?v:B,d,a[d])}g.$setViewValue(c);p()})});g.$render=p;e.$watchCollection(K,l);e.$watchCollection(function(){var a=K(e),c;if(a&&H(a)){c=Array(a.length);for(var d=0,f=a.length;d@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;}'); +(function(M,Y,t){'use strict';function S(b){return function(){var a=arguments[0],c;c="["+(b?b+":":"")+a+"] http://errors.angularjs.org/1.3.12/"+(b?b+"/":"")+a;for(a=1;a").append(b).html();try{return b[0].nodeType===qb?Q(c):c.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(a,b){return"<"+Q(b)})}catch(d){return Q(c)}}function pc(b){try{return decodeURIComponent(b)}catch(a){}}function qc(b){var a= +{},c,d;s((b||"").split("&"),function(b){b&&(c=b.replace(/\+/g,"%20").split("="),d=pc(c[0]),y(d)&&(b=y(c[1])?pc(c[1]):!0,rc.call(a,d)?H(a[d])?a[d].push(b):a[d]=[a[d],b]:a[d]=b))});return a}function Pb(b){var a=[];s(b,function(b,d){H(b)?s(b,function(b){a.push(Fa(d,!0)+(!0===b?"":"="+Fa(b,!0)))}):a.push(Fa(d,!0)+(!0===b?"":"="+Fa(b,!0)))});return a.length?a.join("&"):""}function rb(b){return Fa(b,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function Fa(b,a){return encodeURIComponent(b).replace(/%40/gi, +"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,a?"%20":"+")}function Id(b,a){var c,d,e=sb.length;b=D(b);for(d=0;d/,">"));}a=a||[];a.unshift(["$provide",function(a){a.value("$rootElement",b)}]);c.debugInfoEnabled&&a.push(["$compileProvider",function(a){a.debugInfoEnabled(!0)}]);a.unshift("ng");d=ab(a,c.strictDi);d.invoke(["$rootScope","$rootElement","$compile","$injector",function(a,b,c,d){a.$apply(function(){b.data("$injector", +d);c(b)(a)})}]);return d},e=/^NG_ENABLE_DEBUG_INFO!/,f=/^NG_DEFER_BOOTSTRAP!/;M&&e.test(M.name)&&(c.debugInfoEnabled=!0,M.name=M.name.replace(e,""));if(M&&!f.test(M.name))return d();M.name=M.name.replace(f,"");ca.resumeBootstrap=function(b){s(b,function(b){a.push(b)});return d()};G(ca.resumeDeferredBootstrap)&&ca.resumeDeferredBootstrap()}function Kd(){M.name="NG_ENABLE_DEBUG_INFO!"+M.name;M.location.reload()}function Ld(b){b=ca.element(b).injector();if(!b)throw Ka("test");return b.get("$$testability")} +function tc(b,a){a=a||"_";return b.replace(Md,function(b,d){return(d?a:"")+b.toLowerCase()})}function Nd(){var b;uc||((sa=M.jQuery)&&sa.fn.on?(D=sa,x(sa.fn,{scope:La.scope,isolateScope:La.isolateScope,controller:La.controller,injector:La.injector,inheritedData:La.inheritedData}),b=sa.cleanData,sa.cleanData=function(a){var c;if(Qb)Qb=!1;else for(var d=0,e;null!=(e=a[d]);d++)(c=sa._data(e,"events"))&&c.$destroy&&sa(e).triggerHandler("$destroy");b(a)}):D=R,ca.element=D,uc=!0)}function Rb(b,a,c){if(!b)throw Ka("areq", +a||"?",c||"required");return b}function tb(b,a,c){c&&H(b)&&(b=b[b.length-1]);Rb(G(b),a,"not a function, got "+(b&&"object"===typeof b?b.constructor.name||"Object":typeof b));return b}function Ma(b,a){if("hasOwnProperty"===b)throw Ka("badname",a);}function vc(b,a,c){if(!a)return b;a=a.split(".");for(var d,e=b,f=a.length,g=0;g")+d[2];for(d=d[0];d--;)c=c.lastChild;f=Ya(f,c.childNodes);c=e.firstChild;c.textContent=""}else f.push(a.createTextNode(b));e.textContent="";e.innerHTML="";s(f,function(a){e.appendChild(a)}); +return e}function R(b){if(b instanceof R)return b;var a;F(b)&&(b=U(b),a=!0);if(!(this instanceof R)){if(a&&"<"!=b.charAt(0))throw Tb("nosel");return new R(b)}if(a){a=Y;var c;b=(c=gf.exec(b))?[a.createElement(c[1])]:(c=Fc(b,a))?c.childNodes:[]}Gc(this,b)}function Ub(b){return b.cloneNode(!0)}function xb(b,a){a||yb(b);if(b.querySelectorAll)for(var c=b.querySelectorAll("*"),d=0,e=c.length;d 4096 bytes)!"));else{if(n.cookie!==y)for(y=n.cookie,d=y.split("; "),fa={},f=0;fk&&this.remove(q.key),b},get:function(a){if(k").parent()[0])});var f=T(a,b,a,c,d,e);E.$$addScopeClass(a);var g=null;return function(b,c, +d){Rb(b,"scope");d=d||{};var e=d.parentBoundTranscludeFn,h=d.transcludeControllers;d=d.futureParentElement;e&&e.$$boundTransclude&&(e=e.$$boundTransclude);g||(g=(d=d&&d[0])?"foreignobject"!==ua(d)&&d.toString().match(/SVG/)?"svg":"html":"html");d="html"!==g?D(Wb(g,D("
").append(a).html())):c?La.clone.call(a):a;if(h)for(var l in h)d.data("$"+l+"Controller",h[l].instance);E.$$addScopeInfo(d,b);c&&c(d,b);f&&f(b,d,d,e);return d}}function T(a,b,c,d,e,f){function g(a,c,d,e){var f,l,k,q,n,p,w;if(r)for(w= +Array(c.length),q=0;qK.priority)break;if(N=K.scope)K.templateUrl||(I(N)?(Oa("new/isolated scope",T||O,K,aa),T=K):Oa("new/isolated scope",T,K,aa)),O=O||K;x=K.name;!K.templateUrl&&K.controller&&(N=K.controller,C=C||{},Oa("'"+x+"' controller",C[x],K,aa),C[x]=K);if(N=K.transclude)da=!0,K.$$tlb||(Oa("transclusion",fa,K,aa),fa=K),"element"==N?(z=!0,A=K.priority,N=aa,aa=e.$$element=D(Y.createComment(" "+x+": "+e[x]+" ")),d=aa[0],V(g,Za.call(N, +0),d),Aa=E(N,f,A,l&&l.name,{nonTlbTranscludeDirective:fa})):(N=D(Ub(d)).contents(),aa.empty(),Aa=E(N,f));if(K.template)if(B=!0,Oa("template",ka,K,aa),ka=K,N=G(K.template)?K.template(aa,e):K.template,N=Sc(N),K.replace){l=K;N=Sb.test(N)?Tc(Wb(K.templateNamespace,U(N))):[];d=N[0];if(1!=N.length||d.nodeType!==oa)throw ja("tplrt",x,"");V(g,aa,d);R={$attr:{}};N=W(d,[],R);var ba=a.splice(M+1,a.length-(M+1));T&&y(N);a=a.concat(N).concat(ba);Qc(e,R);R=a.length}else aa.html(N);if(K.templateUrl)B=!0,Oa("template", +ka,K,aa),ka=K,K.replace&&(l=K),v=S(a.splice(M,a.length-M),aa,e,g,da&&Aa,k,n,{controllerDirectives:C,newIsolateScopeDirective:T,templateDirective:ka,nonTlbTranscludeDirective:fa}),R=a.length;else if(K.compile)try{Q=K.compile(aa,e,Aa),G(Q)?w(null,Q,Pa,gb):Q&&w(Q.pre,Q.post,Pa,gb)}catch(of){c(of,va(aa))}K.terminal&&(v.terminal=!0,A=Math.max(A,K.priority))}v.scope=O&&!0===O.scope;v.transcludeOnThisElement=da;v.elementTranscludeOnThisElement=z;v.templateOnThisElement=B;v.transclude=Aa;r.hasElementTranscludeDirective= +z;return v}function y(a){for(var b=0,c=a.length;bq.priority)&&-1!=q.restrict.indexOf(f)&&(l&&(q=Ob(q,{$$start:l,$$end:k})),b.push(q),h=q)}catch(w){c(w)}}return h}function B(b){if(d.hasOwnProperty(b))for(var c=a.get(b+"Directive"),e=0,f=c.length;e"+b+"";return c.childNodes[0].childNodes;default:return b}}function R(a,b){if("srcdoc"== +b)return L.HTML;var c=ua(a);if("xlinkHref"==b||"form"==c&&"action"==b||"img"!=c&&("src"==b||"ngSrc"==b))return L.RESOURCE_URL}function Pa(a,c,d,e,f){var h=R(a,e);f=g[e]||f;var k=b(d,!0,h,f);if(k){if("multiple"===e&&"select"===ua(a))throw ja("selmulti",va(a));c.push({priority:100,compile:function(){return{pre:function(a,c,g){c=g.$$observers||(g.$$observers={});if(l.test(e))throw ja("nodomevents");var n=g[e];n!==d&&(k=n&&b(n,!0,h,f),d=n);k&&(g[e]=k(a),(c[e]||(c[e]=[])).$$inter=!0,(g.$$observers&&g.$$observers[e].$$scope|| +a).$watch(k,function(a,b){"class"===e&&a!=b?g.$updateClass(a,b):g.$set(e,a)}))}}}})}}function V(a,b,c){var d=b[0],e=b.length,f=d.parentNode,g,h;if(a)for(g=0,h=a.length;g=a)return b;for(;a--;)8===b[a].nodeType&&pf.call(b,a,1);return b}function Fe(){var b={},a=!1,c=/^(\S+)(\s+as\s+(\w+))?$/;this.register=function(a,c){Ma(a,"controller");I(a)?x(b,a):b[a]=c};this.allowGlobals=function(){a= +!0};this.$get=["$injector","$window",function(d,e){function f(a,b,c,d){if(!a||!I(a.$scope))throw S("$controller")("noscp",d,b);a.$scope[b]=c}return function(g,h,l,k){var m,n,q;l=!0===l;k&&F(k)&&(q=k);if(F(g)){k=g.match(c);if(!k)throw qf("ctrlfmt",g);n=k[1];q=q||k[3];g=b.hasOwnProperty(n)?b[n]:vc(h.$scope,n,!0)||(a?vc(e,n,!0):t);tb(g,n,!0)}if(l)return l=(H(g)?g[g.length-1]:g).prototype,m=Object.create(l||null),q&&f(h,q,m,n||g.name),x(function(){d.invoke(g,m,h,n);return m},{instance:m,identifier:q}); +m=d.instantiate(g,h,n);q&&f(h,q,m,n||g.name);return m}}]}function Ge(){this.$get=["$window",function(b){return D(b.document)}]}function He(){this.$get=["$log",function(b){return function(a,c){b.error.apply(b,arguments)}}]}function Yb(b,a){if(F(b)){var c=b.replace(rf,"").trim();if(c){var d=a("Content-Type");(d=d&&0===d.indexOf(Vc))||(d=(d=c.match(sf))&&tf[d[0]].test(c));d&&(b=oc(c))}}return b}function Wc(b){var a=ha(),c,d,e;if(!b)return a;s(b.split("\n"),function(b){e=b.indexOf(":");c=Q(U(b.substr(0, +e)));d=U(b.substr(e+1));c&&(a[c]=a[c]?a[c]+", "+d:d)});return a}function Xc(b){var a=I(b)?b:t;return function(c){a||(a=Wc(b));return c?(c=a[Q(c)],void 0===c&&(c=null),c):a}}function Yc(b,a,c,d){if(G(d))return d(b,a,c);s(d,function(d){b=d(b,a,c)});return b}function Ke(){var b=this.defaults={transformResponse:[Yb],transformRequest:[function(a){return I(a)&&"[object File]"!==Da.call(a)&&"[object Blob]"!==Da.call(a)&&"[object FormData]"!==Da.call(a)?$a(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"}, +post:ra(Zb),put:ra(Zb),patch:ra(Zb)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN"},a=!1;this.useApplyAsync=function(b){return y(b)?(a=!!b,this):a};var c=this.interceptors=[];this.$get=["$httpBackend","$browser","$cacheFactory","$rootScope","$q","$injector",function(d,e,f,g,h,l){function k(a){function c(a){var b=x({},a);b.data=a.data?Yc(a.data,a.headers,a.status,e.transformResponse):a.data;a=a.status;return 200<=a&&300>a?b:h.reject(b)}function d(a){var b,c={};s(a,function(a,d){G(a)?(b= +a(),null!=b&&(c[d]=b)):c[d]=a});return c}if(!ca.isObject(a))throw S("$http")("badreq",a);var e=x({method:"get",transformRequest:b.transformRequest,transformResponse:b.transformResponse},a);e.headers=function(a){var c=b.headers,e=x({},a.headers),f,g,c=x({},c.common,c[Q(a.method)]);a:for(f in c){a=Q(f);for(g in e)if(Q(g)===a)continue a;e[f]=c[f]}return d(e)}(a);e.method=vb(e.method);var f=[function(a){var d=a.headers,e=Yc(a.data,Xc(d),t,a.transformRequest);B(e)&&s(d,function(a,b){"content-type"===Q(b)&& +delete d[b]});B(a.withCredentials)&&!B(b.withCredentials)&&(a.withCredentials=b.withCredentials);return m(a,e).then(c,c)},t],g=h.when(e);for(s(u,function(a){(a.request||a.requestError)&&f.unshift(a.request,a.requestError);(a.response||a.responseError)&&f.push(a.response,a.responseError)});f.length;){a=f.shift();var l=f.shift(),g=g.then(a,l)}g.success=function(a){g.then(function(b){a(b.data,b.status,b.headers,e)});return g};g.error=function(a){g.then(null,function(b){a(b.data,b.status,b.headers,e)}); +return g};return g}function m(c,f){function l(b,c,d,e){function f(){m(c,b,d,e)}O&&(200<=b&&300>b?O.put(X,[b,c,Wc(d),e]):O.remove(X));a?g.$applyAsync(f):(f(),g.$$phase||g.$apply())}function m(a,b,d,e){b=Math.max(b,0);(200<=b&&300>b?C.resolve:C.reject)({data:a,status:b,headers:Xc(d),config:c,statusText:e})}function w(a){m(a.data,a.status,ra(a.headers()),a.statusText)}function u(){var a=k.pendingRequests.indexOf(c);-1!==a&&k.pendingRequests.splice(a,1)}var C=h.defer(),A=C.promise,O,E,s=c.headers,X=n(c.url, +c.params);k.pendingRequests.push(c);A.then(u,u);!c.cache&&!b.cache||!1===c.cache||"GET"!==c.method&&"JSONP"!==c.method||(O=I(c.cache)?c.cache:I(b.cache)?b.cache:q);O&&(E=O.get(X),y(E)?E&&G(E.then)?E.then(w,w):H(E)?m(E[1],E[0],ra(E[2]),E[3]):m(E,200,{},"OK"):O.put(X,A));B(E)&&((E=Zc(c.url)?e.cookies()[c.xsrfCookieName||b.xsrfCookieName]:t)&&(s[c.xsrfHeaderName||b.xsrfHeaderName]=E),d(c.method,X,f,l,s,c.timeout,c.withCredentials,c.responseType));return A}function n(a,b){if(!b)return a;var c=[];Ed(b, +function(a,b){null===a||B(a)||(H(a)||(a=[a]),s(a,function(a){I(a)&&(a=qa(a)?a.toISOString():$a(a));c.push(Fa(b)+"="+Fa(a))}))});0=l&&(r.resolve(q),n(P.$$intervalId),delete f[P.$$intervalId]);u||b.$apply()},h);f[P.$$intervalId]=r;return P}var f={};e.cancel=function(b){return b&&b.$$intervalId in f?(f[b.$$intervalId].reject("canceled"),a.clearInterval(b.$$intervalId),delete f[b.$$intervalId],!0):!1};return e}]} +function Rd(){this.$get=function(){return{id:"en-us",NUMBER_FORMATS:{DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{minInt:1,minFrac:0,maxFrac:3,posPre:"",posSuf:"",negPre:"-",negSuf:"",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:"\u00a4",posSuf:"",negPre:"(\u00a4",negSuf:")",gSize:3,lgSize:3}],CURRENCY_SYM:"$"},DATETIME_FORMATS:{MONTH:"January February March April May June July August September October November December".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "), +DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),AMPMS:["AM","PM"],medium:"MMM d, y h:mm:ss a","short":"M/d/yy h:mm a",fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",mediumDate:"MMM d, y",shortDate:"M/d/yy",mediumTime:"h:mm:ss a",shortTime:"h:mm a"},pluralCat:function(b){return 1===b?"one":"other"}}}}function ac(b){b=b.split("/");for(var a=b.length;a--;)b[a]=rb(b[a]);return b.join("/")}function $c(b,a){var c=Ba(b);a.$$protocol= +c.protocol;a.$$host=c.hostname;a.$$port=ba(c.port)||wf[c.protocol]||null}function ad(b,a){var c="/"!==b.charAt(0);c&&(b="/"+b);var d=Ba(b);a.$$path=decodeURIComponent(c&&"/"===d.pathname.charAt(0)?d.pathname.substring(1):d.pathname);a.$$search=qc(d.search);a.$$hash=decodeURIComponent(d.hash);a.$$path&&"/"!=a.$$path.charAt(0)&&(a.$$path="/"+a.$$path)}function za(b,a){if(0===a.indexOf(b))return a.substr(b.length)}function Ha(b){var a=b.indexOf("#");return-1==a?b:b.substr(0,a)}function bd(b){return b.replace(/(#.+)|#$/, +"$1")}function bc(b){return b.substr(0,Ha(b).lastIndexOf("/")+1)}function cc(b,a){this.$$html5=!0;a=a||"";var c=bc(b);$c(b,this);this.$$parse=function(a){var b=za(c,a);if(!F(b))throw Gb("ipthprfx",a,c);ad(b,this);this.$$path||(this.$$path="/");this.$$compose()};this.$$compose=function(){var a=Pb(this.$$search),b=this.$$hash?"#"+rb(this.$$hash):"";this.$$url=ac(this.$$path)+(a?"?"+a:"")+b;this.$$absUrl=c+this.$$url.substr(1)};this.$$parseLinkUrl=function(d,e){if(e&&"#"===e[0])return this.hash(e.slice(1)), +!0;var f,g;(f=za(b,d))!==t?(g=f,g=(f=za(a,f))!==t?c+(za("/",f)||f):b+g):(f=za(c,d))!==t?g=c+f:c==d+"/"&&(g=c);g&&this.$$parse(g);return!!g}}function dc(b,a){var c=bc(b);$c(b,this);this.$$parse=function(d){d=za(b,d)||za(c,d);var e;"#"===d.charAt(0)?(e=za(a,d),B(e)&&(e=d)):e=this.$$html5?d:"";ad(e,this);d=this.$$path;var f=/^\/[A-Z]:(\/.*)/;0===e.indexOf(b)&&(e=e.replace(b,""));f.exec(e)||(d=(e=f.exec(d))?e[1]:d);this.$$path=d;this.$$compose()};this.$$compose=function(){var c=Pb(this.$$search),e=this.$$hash? +"#"+rb(this.$$hash):"";this.$$url=ac(this.$$path)+(c?"?"+c:"")+e;this.$$absUrl=b+(this.$$url?a+this.$$url:"")};this.$$parseLinkUrl=function(a,c){return Ha(b)==Ha(a)?(this.$$parse(a),!0):!1}}function cd(b,a){this.$$html5=!0;dc.apply(this,arguments);var c=bc(b);this.$$parseLinkUrl=function(d,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;b==Ha(d)?f=d:(g=za(c,d))?f=b+a+g:c===d+"/"&&(f=c);f&&this.$$parse(f);return!!f};this.$$compose=function(){var c=Pb(this.$$search),e=this.$$hash?"#"+rb(this.$$hash): +"";this.$$url=ac(this.$$path)+(c?"?"+c:"")+e;this.$$absUrl=b+a+this.$$url}}function Hb(b){return function(){return this[b]}}function dd(b,a){return function(c){if(B(c))return this[b];this[b]=a(c);this.$$compose();return this}}function Me(){var b="",a={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(a){return y(a)?(b=a,this):b};this.html5Mode=function(b){return Wa(b)?(a.enabled=b,this):I(b)?(Wa(b.enabled)&&(a.enabled=b.enabled),Wa(b.requireBase)&&(a.requireBase=b.requireBase),Wa(b.rewriteLinks)&& +(a.rewriteLinks=b.rewriteLinks),this):a};this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(c,d,e,f,g){function h(a,b,c){var e=k.url(),f=k.$$state;try{d.url(a,b,c),k.$$state=d.state()}catch(g){throw k.url(e),k.$$state=f,g;}}function l(a,b){c.$broadcast("$locationChangeSuccess",k.absUrl(),a,k.$$state,b)}var k,m;m=d.baseHref();var n=d.url(),q;if(a.enabled){if(!m&&a.requireBase)throw Gb("nobase");q=n.substring(0,n.indexOf("/",n.indexOf("//")+2))+(m||"/");m=e.history?cc:cd}else q= +Ha(n),m=dc;k=new m(q,"#"+b);k.$$parseLinkUrl(n,n);k.$$state=d.state();var u=/^\s*(javascript|mailto):/i;f.on("click",function(b){if(a.rewriteLinks&&!b.ctrlKey&&!b.metaKey&&!b.shiftKey&&2!=b.which&&2!=b.button){for(var e=D(b.target);"a"!==ua(e[0]);)if(e[0]===f[0]||!(e=e.parent())[0])return;var h=e.prop("href"),l=e.attr("href")||e.attr("xlink:href");I(h)&&"[object SVGAnimatedString]"===h.toString()&&(h=Ba(h.animVal).href);u.test(h)||!h||e.attr("target")||b.isDefaultPrevented()||!k.$$parseLinkUrl(h, +l)||(b.preventDefault(),k.absUrl()!=d.url()&&(c.$apply(),g.angular["ff-684208-preventDefault"]=!0))}});k.absUrl()!=n&&d.url(k.absUrl(),!0);var r=!0;d.onUrlChange(function(a,b){c.$evalAsync(function(){var d=k.absUrl(),e=k.$$state,f;k.$$parse(a);k.$$state=b;f=c.$broadcast("$locationChangeStart",a,d,b,e).defaultPrevented;k.absUrl()===a&&(f?(k.$$parse(d),k.$$state=e,h(d,!1,e)):(r=!1,l(d,e)))});c.$$phase||c.$digest()});c.$watch(function(){var a=bd(d.url()),b=bd(k.absUrl()),f=d.state(),g=k.$$replace,q= +a!==b||k.$$html5&&e.history&&f!==k.$$state;if(r||q)r=!1,c.$evalAsync(function(){var b=k.absUrl(),d=c.$broadcast("$locationChangeStart",b,a,k.$$state,f).defaultPrevented;k.absUrl()===b&&(d?(k.$$parse(a),k.$$state=f):(q&&h(b,g,f===k.$$state?null:k.$$state),l(a,f)))});k.$$replace=!1});return k}]}function Ne(){var b=!0,a=this;this.debugEnabled=function(a){return y(a)?(b=a,this):b};this.$get=["$window",function(c){function d(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=c.console||{},e=b[a]||b.log||z;a=!1;try{a=!!e.apply}catch(l){}return a?function(){var a=[];s(arguments,function(b){a.push(d(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(){b&&c.apply(a,arguments)}}()}}]}function ta(b,a){if("__defineGetter__"=== +b||"__defineSetter__"===b||"__lookupGetter__"===b||"__lookupSetter__"===b||"__proto__"===b)throw la("isecfld",a);return b}function ma(b,a){if(b){if(b.constructor===b)throw la("isecfn",a);if(b.window===b)throw la("isecwindow",a);if(b.children&&(b.nodeName||b.prop&&b.attr&&b.find))throw la("isecdom",a);if(b===Object)throw la("isecobj",a);}return b}function ec(b){return b.constant}function hb(b,a,c,d,e){ma(b,e);ma(a,e);c=c.split(".");for(var f,g=0;1h?ed(g[0],g[1],g[2],g[3],g[4],c,d):function(a,b){var e=0,f;do f=ed(g[e++],g[e++],g[e++],g[e++],g[e++],c,d)(a,b),b=t,a=f;while(e=this.promise.$$state.status&&d&&d.length&&b(function(){for(var b,e,f=0,g=d.length;fa)for(b in k++,f)e.hasOwnProperty(b)||(u--,delete f[b])}else f!==e&&(f=e,k++);return k}}c.$stateful=!0;var d=this,e,f,h,l=1s&&(y=4-s,W[y]||(W[y]=[]),W[y].push({msg:G(e.exp)?"fn: "+(e.exp.name||e.exp.toString()):e.exp,newVal:g,oldVal:l}));else if(e===c){v=!1;break a}}catch(B){f(B)}if(!(m=t.$$childHead||t!==this&&t.$$nextSibling))for(;t!==this&&!(m=t.$$nextSibling);)t=t.$parent}while(t=m);if((v||P.length)&&!s--)throw r.$$phase=null,a("infdig",b,W);}while(v||P.length); +for(r.$$phase=null;p.length;)try{p.shift()()}catch(da){f(da)}},$destroy:function(){if(!this.$$destroyed){var a=this.$parent;this.$broadcast("$destroy");this.$$destroyed=!0;if(this!==r){for(var b in this.$$listenerCount)m(this,this.$$listenerCount[b],b);a.$$childHead==this&&(a.$$childHead=this.$$nextSibling);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=z;this.$on=this.$watch=this.$watchGroup=function(){return z};this.$$listeners={};this.$parent=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=this.$root=this.$$watchers=null}}},$eval:function(a,b){return g(a)(this,b)},$evalAsync:function(a,b){r.$$phase||P.length||h.defer(function(){P.length&&r.$digest()});P.push({scope:this,expression:a,locals:b})},$$postDigest:function(a){p.push(a)},$apply:function(a){try{return k("$apply"), +this.$eval(a)}catch(b){f(b)}finally{r.$$phase=null;try{r.$digest()}catch(c){throw f(c),c;}}},$applyAsync:function(a){function b(){c.$eval(a)}var c=this;a&&v.push(b);u()},$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,m(e,1,a))}},$emit:function(a,b){var c=[],d,e=this,g=!1,h={name:a,targetScope:e, +stopPropagation:function(){g=!0},preventDefault:function(){h.defaultPrevented=!0},defaultPrevented:!1},l=Ya([h],arguments,1),k,m;do{d=e.$$listeners[a]||c;h.currentScope=e;k=0;for(m=d.length;kRa)throw Ca("iequirks");var d=ra(na);d.isEnabled=function(){return b};d.trustAs=c.trustAs;d.getTrusted=c.getTrusted;d.valueOf=c.valueOf;b||(d.trustAs=d.getTrusted=function(a,b){return b},d.valueOf=pa);d.parseAs=function(b,c){var e=a(c);return e.literal&&e.constant?e:a(c,function(a){return d.getTrusted(b,a)})};var e=d.parseAs,f=d.getTrusted,g=d.trustAs;s(na,function(a,b){var c=Q(b);d[db("parse_as_"+c)]=function(b){return e(a, +b)};d[db("get_trusted_"+c)]=function(b){return f(a,b)};d[db("trust_as_"+c)]=function(b){return g(a,b)}});return d}]}function Ue(){this.$get=["$window","$document",function(b,a){var c={},d=ba((/android (\d+)/.exec(Q((b.navigator||{}).userAgent))||[])[1]),e=/Boxee/i.test((b.navigator||{}).userAgent),f=a[0]||{},g,h=/^(Moz|webkit|ms)(?=[A-Z])/,l=f.body&&f.body.style,k=!1,m=!1;if(l){for(var n in l)if(k=h.exec(n)){g=k[0];g=g.substr(0,1).toUpperCase()+g.substr(1);break}g||(g="WebkitOpacity"in l&&"webkit"); +k=!!("transition"in l||g+"Transition"in l);m=!!("animation"in l||g+"Animation"in l);!d||k&&m||(k=F(f.body.style.webkitTransition),m=F(f.body.style.webkitAnimation))}return{history:!(!b.history||!b.history.pushState||4>d||e),hasEvent:function(a){if("input"===a&&11>=Ra)return!1;if(B(c[a])){var b=f.createElement("div");c[a]="on"+a in b}return c[a]},csp:bb(),vendorPrefix:g,transitions:k,animations:m,android:d}}]}function We(){this.$get=["$templateCache","$http","$q",function(b,a,c){function d(e,f){d.totalPendingRequests++; +var g=a.defaults&&a.defaults.transformResponse;H(g)?g=g.filter(function(a){return a!==Yb}):g===Yb&&(g=null);return a.get(e,{cache:b,transformResponse:g}).finally(function(){d.totalPendingRequests--}).then(function(a){return a.data},function(a){if(!f)throw ja("tpload",e);return c.reject(a)})}d.totalPendingRequests=0;return d}]}function Xe(){this.$get=["$rootScope","$browser","$location",function(b,a,c){return{findBindings:function(a,b,c){a=a.getElementsByClassName("ng-binding");var g=[];s(a,function(a){var d= +ca.element(a).data("$binding");d&&s(d,function(d){c?(new RegExp("(^|\\s)"+gd(b)+"(\\s|\\||$)")).test(d)&&g.push(a):-1!=d.indexOf(b)&&g.push(a)})});return g},findModels:function(a,b,c){for(var g=["ng-","data-ng-","ng\\:"],h=0;hb;b=Math.abs(b);var g=b+"",h="",l=[],k=!1;if(-1!==g.indexOf("e")){var m=g.match(/([\d\.]+)e(-?)(\d+)/);m&&"-"==m[2]&&m[3]>e+1?b=0:(h=g,k=!0)}if(k)0b&&(h=b.toFixed(e),b=parseFloat(h));else{g=(g.split(od)[1]||"").length;B(e)&&(e=Math.min(Math.max(a.minFrac,g),a.maxFrac));b=+(Math.round(+(b.toString()+"e"+e)).toString()+"e"+-e);var g=(""+b).split(od),k=g[0],g=g[1]||"",n=0,q=a.lgSize,u=a.gSize;if(k.length>=q+u)for(n=k.length-q,m=0;mb&&(d="-",b=-b);for(b=""+b;b.length-c)e+=c;0===e&&-12==c&&(e=12);return Ib(e,a,d)}}function Jb(b,a){return function(c,d){var e=c["get"+b](),f=vb(a?"SHORT"+b:b);return d[f][e]}} +function pd(b){var a=(new Date(b,0,1)).getDay();return new Date(b,0,(4>=a?5:12)-a)}function qd(b){return function(a){var c=pd(a.getFullYear());a=+new Date(a.getFullYear(),a.getMonth(),a.getDate()+(4-a.getDay()))-+c;a=1+Math.round(a/6048E5);return Ib(a,b)}}function kd(b){function a(a){var b;if(b=a.match(c)){a=new Date(0);var f=0,g=0,h=b[8]?a.setUTCFullYear:a.setFullYear,l=b[8]?a.setUTCHours:a.setHours;b[9]&&(f=ba(b[9]+b[10]),g=ba(b[9]+b[11]));h.call(a,ba(b[1]),ba(b[2])-1,ba(b[3]));f=ba(b[4]||0)-f; +g=ba(b[5]||0)-g;h=ba(b[6]||0);b=Math.round(1E3*parseFloat("0."+(b[7]||0)));l.call(a,f,g,h,b)}return a}var c=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(c,e,f){var g="",h=[],l,k;e=e||"mediumDate";e=b.DATETIME_FORMATS[e]||e;F(c)&&(c=Jf.test(c)?ba(c):a(c));V(c)&&(c=new Date(c));if(!qa(c))return c;for(;e;)(k=Kf.exec(e))?(h=Ya(h,k,1),e=h.pop()):(h.push(e),e=null);f&&"UTC"===f&&(c=new Date(c.getTime()),c.setMinutes(c.getMinutes()+ +c.getTimezoneOffset()));s(h,function(a){l=Lf[a];g+=l?l(c,b.DATETIME_FORMATS):a.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function Ef(){return function(b,a){B(a)&&(a=2);return $a(b,a)}}function Ff(){return function(b,a){V(b)&&(b=b.toString());return H(b)||F(b)?(a=Infinity===Math.abs(Number(a))?Number(a):ba(a))?0b||37<=b&&40>=b||m(a,this,this.value)});if(e.hasEvent("paste"))a.on("paste cut",m)}a.on("change",l);d.$render=function(){a.val(d.$isEmpty(d.$viewValue)?"":d.$viewValue)}} +function Mb(b,a){return function(c,d){var e,f;if(qa(c))return c;if(F(c)){'"'==c.charAt(0)&&'"'==c.charAt(c.length-1)&&(c=c.substring(1,c.length-1));if(Mf.test(c))return new Date(c);b.lastIndex=0;if(e=b.exec(c))return e.shift(),f=d?{yyyy:d.getFullYear(),MM:d.getMonth()+1,dd:d.getDate(),HH:d.getHours(),mm:d.getMinutes(),ss:d.getSeconds(),sss:d.getMilliseconds()/1E3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},s(e,function(b,c){c=s};g.$observe("min",function(a){s=q(a);h.$validate()})}if(y(g.max)||g.ngMax){var p;h.$validators.max=function(a){return!n(a)||B(p)||c(a)<=p};g.$observe("max",function(a){p=q(a);h.$validate()})}}}function td(b,a,c,d){(d.$$hasNativeValidators=I(a[0].validity))&&d.$parsers.push(function(b){var c=a.prop("validity")||{}; +return c.badInput&&!c.typeMismatch?t:b})}function ud(b,a,c,d,e){if(y(d)){b=b(d);if(!b.constant)throw S("ngModel")("constexpr",c,d);return b(a)}return e}function ic(b,a){b="ngClass"+b;return["$animate",function(c){function d(a,b){var c=[],d=0;a:for(;d(?:<\/\1>|)$/,Sb=/<|&#?\w+;/,ef=/<([\w:]+)/,ff=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, +ia={option:[1,'"],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ia.optgroup=ia.option;ia.tbody=ia.tfoot=ia.colgroup=ia.caption=ia.thead;ia.th=ia.td;var La=R.prototype={ready:function(b){function a(){c||(c=!0,b())}var c=!1;"complete"===Y.readyState?setTimeout(a):(this.on("DOMContentLoaded",a),R(M).on("load",a))}, +toString:function(){var b=[];s(this,function(a){b.push(""+a)});return"["+b.join(", ")+"]"},eq:function(b){return 0<=b?D(this[b]):D(this[this.length+b])},length:0,push:Of,sort:[].sort,splice:[].splice},Fb={};s("multiple selected checked disabled readOnly required open".split(" "),function(b){Fb[Q(b)]=b});var Mc={};s("input select option textarea button form details".split(" "),function(b){Mc[b]=!0});var Nc={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"}; +s({data:Vb,removeData:yb},function(b,a){R[a]=b});s({data:Vb,inheritedData:Eb,scope:function(b){return D.data(b,"$scope")||Eb(b.parentNode||b,["$isolateScope","$scope"])},isolateScope:function(b){return D.data(b,"$isolateScope")||D.data(b,"$isolateScopeNoTemplate")},controller:Ic,injector:function(b){return Eb(b,"$injector")},removeAttr:function(b,a){b.removeAttribute(a)},hasClass:Bb,css:function(b,a,c){a=db(a);if(y(c))b.style[a]=c;else return b.style[a]},attr:function(b,a,c){var d=Q(a);if(Fb[d])if(y(c))c? +(b[a]=!0,b.setAttribute(a,d)):(b[a]=!1,b.removeAttribute(d));else return b[a]||(b.attributes.getNamedItem(a)||z).specified?d:t;else if(y(c))b.setAttribute(a,c);else if(b.getAttribute)return b=b.getAttribute(a,2),null===b?t:b},prop:function(b,a,c){if(y(c))b[a]=c;else return b[a]},text:function(){function b(a,b){if(B(b)){var d=a.nodeType;return d===oa||d===qb?a.textContent:""}a.textContent=b}b.$dv="";return b}(),val:function(b,a){if(B(a)){if(b.multiple&&"select"===ua(b)){var c=[];s(b.options,function(a){a.selected&& +c.push(a.value||a.text)});return 0===c.length?null:c}return b.value}b.value=a},html:function(b,a){if(B(a))return b.innerHTML;xb(b,!0);b.innerHTML=a},empty:Jc},function(b,a){R.prototype[a]=function(a,d){var e,f,g=this.length;if(b!==Jc&&(2==b.length&&b!==Bb&&b!==Ic?a:d)===t){if(I(a)){for(e=0;e":function(a,c,d,e){return d(a,c)>e(a,c)},"<=":function(a,c,d,e){return d(a,c)<=e(a,c)},">=":function(a, +c,d,e){return d(a,c)>=e(a,c)},"&&":function(a,c,d,e){return d(a,c)&&e(a,c)},"||":function(a,c,d,e){return d(a,c)||e(a,c)},"!":function(a,c,d){return!d(a,c)},"=":!0,"|":!0}),Yf={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},gc=function(a){this.options=a};gc.prototype={constructor:gc,lex:function(a){this.text=a;this.index=0;for(this.tokens=[];this.index=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,c,d){d=d||this.index;c=y(c)?"s "+c+"-"+this.index+" ["+this.text.substring(c,d)+"]":" "+d;throw la("lexerr",a,c,this.text); +},readNumber:function(){for(var a="",c=this.index;this.indexa){a=this.tokens[a];var g=a.text;if(g===c||g===d||g===e||g=== +f||!(c||d||e||f))return a}return!1},expect:function(a,c,d,e){return(a=this.peek(a,c,d,e))?(this.tokens.shift(),a):!1},consume:function(a){if(0===this.tokens.length)throw la("ueoe",this.text);var c=this.expect(a);c||this.throwError("is unexpected, expecting ["+a+"]",this.peek());return c},unaryFn:function(a,c){var d=nb[a];return x(function(a,f){return d(a,f,c)},{constant:c.constant,inputs:[c]})},binaryFn:function(a,c,d,e){var f=nb[c];return x(function(c,e){return f(c,e,a,d)},{constant:a.constant&& +d.constant,inputs:!e&&[a,d]})},identifier:function(){for(var a=this.consume().text;this.peek(".")&&this.peekAhead(1).identifier&&!this.peekAhead(2,"(");)a+=this.consume().text+this.consume().text;return yf(a,this.options,this.text)},constant:function(){var a=this.consume().value;return x(function(){return a},{constant:!0,literal:!0})},statements:function(){for(var a=[];;)if(0","<=",">=");)a=this.binaryFn(a,c.text, +this.additive());return a},additive:function(){for(var a=this.multiplicative(),c;c=this.expect("+","-");)a=this.binaryFn(a,c.text,this.multiplicative());return a},multiplicative:function(){for(var a=this.unary(),c;c=this.expect("*","/","%");)a=this.binaryFn(a,c.text,this.unary());return a},unary:function(){var a;return this.expect("+")?this.primary():(a=this.expect("-"))?this.binaryFn(ib.ZERO,a.text,this.unary()):(a=this.expect("!"))?this.unaryFn(a.text,this.unary()):this.primary()},fieldAccess:function(a){var c= +this.identifier();return x(function(d,e,f){d=f||a(d,e);return null==d?t:c(d)},{assign:function(d,e,f){var g=a(d,f);g||a.assign(d,g={},f);return c.assign(g,e)}})},objectIndex:function(a){var c=this.text,d=this.expression();this.consume("]");return x(function(e,f){var g=a(e,f),h=d(e,f);ta(h,c);return g?ma(g[h],c):t},{assign:function(e,f,g){var h=ta(d(e,g),c),l=ma(a(e,g),c);l||a.assign(e,l={},g);return l[h]=f}})},functionCall:function(a,c){var d=[];if(")"!==this.peekToken().text){do d.push(this.expression()); +while(this.expect(","))}this.consume(")");var e=this.text,f=d.length?[]:null;return function(g,h){var l=c?c(g,h):y(c)?t:g,k=a(g,h,l)||z;if(f)for(var m=d.length;m--;)f[m]=ma(d[m](g,h),e);ma(l,e);if(k){if(k.constructor===k)throw la("isecfn",e);if(k===Vf||k===Wf||k===Xf)throw la("isecff",e);}l=k.apply?k.apply(l,f):k(f[0],f[1],f[2],f[3],f[4]);f&&(f.length=0);return ma(l,e)}},arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;a.push(this.expression())}while(this.expect(",")) +}this.consume("]");return x(function(c,d){for(var e=[],f=0,g=a.length;fa.getHours()?c.AMPMS[0]:c.AMPMS[1]},Z:function(a){a=-1*a.getTimezoneOffset();return a=(0<=a?"+":"")+(Ib(Math[0=h};d.$observe("min",function(a){y(a)&&!V(a)&&(a=parseFloat(a,10));h=V(a)&&!isNaN(a)?a:t;e.$validate()})}if(d.max|| +d.ngMax){var l;e.$validators.max=function(a){return e.$isEmpty(a)||B(l)||a<=l};d.$observe("max",function(a){y(a)&&!V(a)&&(a=parseFloat(a,10));l=V(a)&&!isNaN(a)?a:t;e.$validate()})}},url:function(a,c,d,e,f,g){jb(a,c,d,e,f,g);hc(e);e.$$parserName="url";e.$validators.url=function(a,c){var d=a||c;return e.$isEmpty(d)||Zf.test(d)}},email:function(a,c,d,e,f,g){jb(a,c,d,e,f,g);hc(e);e.$$parserName="email";e.$validators.email=function(a,c){var d=a||c;return e.$isEmpty(d)||$f.test(d)}},radio:function(a,c, +d,e){B(d.name)&&c.attr("name",++ob);c.on("click",function(a){c[0].checked&&e.$setViewValue(d.value,a&&a.type)});e.$render=function(){c[0].checked=d.value==e.$viewValue};d.$observe("value",e.$render)},checkbox:function(a,c,d,e,f,g,h,l){var k=ud(l,a,"ngTrueValue",d.ngTrueValue,!0),m=ud(l,a,"ngFalseValue",d.ngFalseValue,!1);c.on("click",function(a){e.$setViewValue(c[0].checked,a&&a.type)});e.$render=function(){c[0].checked=e.$viewValue};e.$isEmpty=function(a){return!1===a};e.$formatters.push(function(a){return ga(a, +k)});e.$parsers.push(function(a){return a?k:m})},hidden:z,button:z,submit:z,reset:z,file:z},xc=["$browser","$sniffer","$filter","$parse",function(a,c,d,e){return{restrict:"E",require:["?ngModel"],link:{pre:function(f,g,h,l){l[0]&&(Dd[Q(h.type)]||Dd.text)(f,g,h,l[0],c,a,d,e)}}}}],bg=/^(true|false|\d+)$/,ye=function(){return{restrict:"A",priority:100,compile:function(a,c){return bg.test(c.ngValue)?function(a,c,f){f.$set("value",a.$eval(f.ngValue))}:function(a,c,f){a.$watch(f.ngValue,function(a){f.$set("value", +a)})}}}},Zd=["$compile",function(a){return{restrict:"AC",compile:function(c){a.$$addBindingClass(c);return function(c,e,f){a.$$addBindingInfo(e,f.ngBind);e=e[0];c.$watch(f.ngBind,function(a){e.textContent=a===t?"":a})}}}}],ae=["$interpolate","$compile",function(a,c){return{compile:function(d){c.$$addBindingClass(d);return function(d,f,g){d=a(f.attr(g.$attr.ngBindTemplate));c.$$addBindingInfo(f,d.expressions);f=f[0];g.$observe("ngBindTemplate",function(a){f.textContent=a===t?"":a})}}}}],$d=["$sce", +"$parse","$compile",function(a,c,d){return{restrict:"A",compile:function(e,f){var g=c(f.ngBindHtml),h=c(f.ngBindHtml,function(a){return(a||"").toString()});d.$$addBindingClass(e);return function(c,e,f){d.$$addBindingInfo(e,f.ngBindHtml);c.$watch(h,function(){e.html(a.getTrustedHtml(g(c))||"")})}}}}],xe=ea({restrict:"A",require:"ngModel",link:function(a,c,d,e){e.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),be=ic("",!0),de=ic("Odd",0),ce=ic("Even",1),ee=Ja({compile:function(a,c){c.$set("ngCloak", +t);a.removeClass("ng-cloak")}}),fe=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Cc={},cg={blur:!0,focus:!0};s("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(a){var c=ya("ng-"+a);Cc[c]=["$parse","$rootScope",function(d,e){return{restrict:"A",compile:function(f,g){var h=d(g[c],null,!0);return function(c,d){d.on(a,function(d){var f=function(){h(c,{$event:d})}; +cg[a]&&e.$$phase?c.$evalAsync(f):c.$apply(f)})}}}}]});var ie=["$animate",function(a){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(c,d,e,f,g){var h,l,k;c.$watch(e.ngIf,function(c){c?l||g(function(c,f){l=f;c[c.length++]=Y.createComment(" end ngIf: "+e.ngIf+" ");h={clone:c};a.enter(c,d.parent(),d)}):(k&&(k.remove(),k=null),l&&(l.$destroy(),l=null),h&&(k=ub(h.clone),a.leave(k).then(function(){k=null}),h=null))})}}}],je=["$templateRequest","$anchorScroll", +"$animate","$sce",function(a,c,d,e){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:ca.noop,compile:function(f,g){var h=g.ngInclude||g.src,l=g.onload||"",k=g.autoscroll;return function(f,g,q,s,r){var t=0,p,v,w,L=function(){v&&(v.remove(),v=null);p&&(p.$destroy(),p=null);w&&(d.leave(w).then(function(){v=null}),v=w,w=null)};f.$watch(e.parseAsResourceUrl(h),function(e){var h=function(){!y(k)||k&&!f.$eval(k)||c()},q=++t;e?(a(e,!0).then(function(a){if(q===t){var c=f.$new(); +s.template=a;a=r(c,function(a){L();d.enter(a,null,g).then(h)});p=c;w=a;p.$emit("$includeContentLoaded",e);f.$eval(l)}},function(){q===t&&(L(),f.$emit("$includeContentError",e))}),f.$emit("$includeContentRequested",e)):(L(),s.template=null)})}}}}],Ae=["$compile",function(a){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(c,d,e,f){/SVG/.test(d[0].toString())?(d.empty(),a(Fc(f.template,Y).childNodes)(c,function(a){d.append(a)},{futureParentElement:d})):(d.html(f.template),a(d.contents())(c))}}}], +ke=Ja({priority:450,compile:function(){return{pre:function(a,c,d){a.$eval(d.ngInit)}}}}),we=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,c,d,e){var f=c.attr(d.$attr.ngList)||", ",g="false"!==d.ngTrim,h=g?U(f):f;e.$parsers.push(function(a){if(!B(a)){var c=[];a&&s(a.split(h),function(a){a&&c.push(g?U(a):a)});return c}});e.$formatters.push(function(a){return H(a)?a.join(f):t});e.$isEmpty=function(a){return!a||!a.length}}}},lb="ng-valid",vd="ng-invalid",Sa="ng-pristine", +Lb="ng-dirty",xd="ng-pending",Nb=new S("ngModel"),dg=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(a,c,d,e,f,g,h,l,k,m){this.$modelValue=this.$viewValue=Number.NaN;this.$$rawModelValue=t;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=t;this.$name=m(d.name||"",!1)(a);var n=f(d.ngModel),q=n.assign,u=n,r=q,P=null,p=this;this.$$setOptions=function(a){if((p.$options=a)&&a.getterSetter){var c=f(d.ngModel+"()"),g=f(d.ngModel+"($$$p)");u=function(a){var d=n(a);G(d)&&(d=c(a));return d};r=function(a,c){G(n(a))?g(a,{$$$p:p.$modelValue}):q(a,p.$modelValue)}}else if(!n.assign)throw Nb("nonassign",d.ngModel,va(e));};this.$render=z;this.$isEmpty=function(a){return B(a)||""===a||null===a||a!==a};var v=e.inheritedData("$formController")|| +Kb,w=0;sd({ctrl:this,$element:e,set:function(a,c){a[c]=!0},unset:function(a,c){delete a[c]},parentForm:v,$animate:g});this.$setPristine=function(){p.$dirty=!1;p.$pristine=!0;g.removeClass(e,Lb);g.addClass(e,Sa)};this.$setDirty=function(){p.$dirty=!0;p.$pristine=!1;g.removeClass(e,Sa);g.addClass(e,Lb);v.$setDirty()};this.$setUntouched=function(){p.$touched=!1;p.$untouched=!0;g.setClass(e,"ng-untouched","ng-touched")};this.$setTouched=function(){p.$touched=!0;p.$untouched=!1;g.setClass(e,"ng-touched", +"ng-untouched")};this.$rollbackViewValue=function(){h.cancel(P);p.$viewValue=p.$$lastCommittedViewValue;p.$render()};this.$validate=function(){if(!V(p.$modelValue)||!isNaN(p.$modelValue)){var a=p.$$rawModelValue,c=p.$valid,d=p.$modelValue,e=p.$options&&p.$options.allowInvalid;p.$$runValidators(p.$error[p.$$parserName||"parse"]?!1:t,a,p.$$lastCommittedViewValue,function(f){e||c===f||(p.$modelValue=f?a:t,p.$modelValue!==d&&p.$$writeModelToScope())})}};this.$$runValidators=function(a,c,d,e){function f(){var a= +!0;s(p.$validators,function(e,f){var g=e(c,d);a=a&&g;h(f,g)});return a?!0:(s(p.$asyncValidators,function(a,c){h(c,null)}),!1)}function g(){var a=[],e=!0;s(p.$asyncValidators,function(f,g){var l=f(c,d);if(!l||!G(l.then))throw Nb("$asyncValidators",l);h(g,t);a.push(l.then(function(){h(g,!0)},function(a){e=!1;h(g,!1)}))});a.length?k.all(a).then(function(){l(e)},z):l(!0)}function h(a,c){m===w&&p.$setValidity(a,c)}function l(a){m===w&&e(a)}w++;var m=w;(function(a){var c=p.$$parserName||"parse";if(a=== +t)h(c,null);else if(h(c,a),!a)return s(p.$validators,function(a,c){h(c,null)}),s(p.$asyncValidators,function(a,c){h(c,null)}),!1;return!0})(a)?f()?g():l(!1):l(!1)};this.$commitViewValue=function(){var a=p.$viewValue;h.cancel(P);if(p.$$lastCommittedViewValue!==a||""===a&&p.$$hasNativeValidators)p.$$lastCommittedViewValue=a,p.$pristine&&this.$setDirty(),this.$$parseAndValidate()};this.$$parseAndValidate=function(){var c=p.$$lastCommittedViewValue,d=B(c)?t:!0;if(d)for(var e=0;eF;)d=r.pop(),m(N,d.label,!1),d.element.remove()}for(;R.length> +x;){l=R.pop();for(F=1;Fa&&q.removeOption(c)})}var n;if(!(n=r.match(d)))throw fg("iexp",r,va(f));var C=c(n[2]||n[1]),x=n[4]||n[6],A=/ as /.test(n[0])&&n[1],B=A?c(A):null,D=n[5],I=c(n[3]||""),F=c(n[2]?n[1]:x),O=c(n[7]),M=n[8]?c(n[8]):null,Q={},R=[[{element:f,label:""}]],S={};z&&(a(z)(e),z.removeClass("ng-scope"),z.remove());f.empty();f.on("change",function(){e.$apply(function(){var a=O(e)||[],c;if(u)c=[],s(f.val(), +function(d){d=M?Q[d]:d;c.push("?"===d?t:""===d?null:h(B?B:F,d,a[d]))});else{var d=M?Q[f.val()]:f.val();c="?"===d?t:""===d?null:h(B?B:F,d,a[d])}g.$setViewValue(c);p()})});g.$render=p;e.$watchCollection(O,l);e.$watchCollection(function(){var a=O(e),c;if(a&&H(a)){c=Array(a.length);for(var d=0,f=a.length;df||e.$isEmpty(c)||c.length<=f}}}}},Ac=function(){return{restrict:"A",require:"?ngModel",link:function(a,c,d,e){if(e){var f=0;d.$observe("minlength",function(a){f=ba(a)||0;e.$validate()});e.$validators.minlength=function(a,c){return e.$isEmpty(c)||c.length>=f}}}}};M.angular.bootstrap?console.log("WARNING: Tried to load angular more than once."):(Nd(),Pd(ca),D(Y).ready(function(){Jd(Y,sc)}))})(window,document);!window.angular.$$csp()&&window.angular.element(document).find("head").prepend(''); //# sourceMappingURL=angular.min.js.map diff --git a/public/app/bower_components/angular/angular.min.js.gzip b/public/app/bower_components/angular/angular.min.js.gzip index d5095e7baa962770009bbf61a4ab44ee269abc37..09b460109014f96029ab0a4c454f03445cd17819 100644 GIT binary patch literal 45998 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 yb9%&$czBP}7_!y==>Y&}ntZna literal 45308 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 k(p>U2ZH~if|HHc","<=",">=","&&","||","!","ESCAPE","lex","tokens","is","readString","peek","readNumber","isIdent","readIdent","isWhitespace","ch2","ch3","fn2","fn3","throwError","chars","isExpOperator","start","end","colStr","peekCh","lastDot","peekIndex","methodName","quote","rawString","hex","String","fromCharCode","rep","ZERO","statements","primary","expect","filterChain","consume","arrayDeclaration","functionCall","objectIndex","fieldAccess","msg","peekToken","e1","e2","e3","e4","t","unaryFn","right","$parseUnaryFn","binaryFn","left","isBranching","$parseBinaryFn","$parseStatements","inputFn","argsFn","$parseFilter","every","assignment","ternary","$parseAssignment","logicalOR","middle","$parseTernary","logicalAND","equality","relational","additive","multiplicative","unary","field","$parseFieldAccess","o","indexFn","$parseObjectIndex","fnGetter","contextGetter","expressionText","$parseFunctionCall","elementFns","elementFn","$parseArrayLiteral","valueFns","$parseObjectLiteral","yy","y","MMMM","MMM","M","H","hh","EEEE","EEE","ampmGetter","Z","timeZoneGetter","zone","paddedZone","ww","w","xlinkHref","propName","normalized","ngBooleanAttrWatchAction","htmlAttr","ngAttrAliasWatchAction","nullFormRenameControl","formDirectiveFactory","isNgForm","ngFormCompile","formElement","ngFormPreLink","handleFormSubmission","returnValue","parentFormCtrl","alias","URL_REGEXP","EMAIL_REGEXP","NUMBER_REGEXP","DATE_REGEXP","DATETIMELOCAL_REGEXP","WEEK_REGEXP","MONTH_REGEXP","TIME_REGEXP","DEFAULT_REGEXP","inputType","textInputType","weekParser","isoWeek","existingDate","week","minutes","hours","seconds","milliseconds","addDays","numberInputType","urlInputType","ctrl.$validators.url","emailInputType","email","ctrl.$validators.email","radioInputType","checked","checkboxInputType","trueValue","ngTrueValue","falseValue","ngFalseValue","ctrls","NgModelController","$asyncValidators","$viewChangeListeners","$untouched","$touched","parsedNgModel","pendingDebounce","ngModelGet","modelValue","getterSetter","ngModelSet","$$setOptions","this.$$setOptions","this.$isEmpty","currentValidationRunId","this.$setPristine","this.$setUntouched","UNTOUCHED_CLASS","TOUCHED_CLASS","$setTouched","this.$setTouched","this.$rollbackViewValue","$$lastCommittedViewValue","this.$validate","$$parseAndValidate","$$runValidators","this.$$runValidators","parseValid","viewValue","doneCallback","processSyncValidators","syncValidatorsValid","validator","processAsyncValidators","validatorPromises","allValid","validationDone","localValidationRunId","processParseErrors","errorKey","this.$commitViewValue","this.$$parseAndValidate","parserValid","prevModelValue","allowInvalid","$$writeModelToScope","this.$$writeModelToScope","this.$setViewValue","updateOnDefault","$$debounceViewValueCommit","this.$$debounceViewValueCommit","debounceDelay","debounce","ngModelWatch","formatters","ngModelCompile","ngModelPreLink","modelCtrl","formCtrl","ngModelPostLink","updateOn","ctrl.$validators.required","patternExp","ctrl.$validators.pattern","ctrl.$validators.maxlength","ctrl.$validators.minlength","trimValues","CONSTANT_VALUE_REGEXP","tplAttr","ngValueConstantLink","ngValueLink","valueWatchAction","that","$compile","ngBindCompile","templateElement","ngBindLink","ngBindWatchAction","ngBindTemplateCompile","ngBindTemplateLink","ngBindHtmlCompile","tElement","ngBindHtmlGetter","ngBindHtmlWatch","getStringValue","ngBindHtmlLink","ngBindHtmlWatchAction","getTrustedHtml","forceAsyncEvents","ngEventHandler","$event","previousElements","ngIfWatchAction","newScope","srcExp","onloadExp","autoScrollExp","autoscroll","changeCounter","previousElement","currentElement","cleanupLastIncludeContent","parseAsResourceUrl","ngIncludeWatchAction","afterAnimation","thisChangeId","namespaceAdaptedClone","BRACE","numberExp","whenExp","whens","whensExpFns","isWhen","attributeName","ngPluralizeWatch","ngPluralizeWatchAction","ngRepeatMinErr","updateScope","valueIdentifier","keyIdentifier","arrayLength","$first","$last","$middle","$odd","$even","ngRepeatCompile","ngRepeatEndComment","lhs","rhs","aliasAs","trackByExp","trackByExpGetter","trackByIdExpFn","trackByIdArrayFn","trackByIdObjFn","hashFnLocals","ngRepeatLink","lastBlockMap","ngRepeatAction","previousNode","nextNode","nextBlockMap","collectionLength","trackById","collectionKeys","nextBlockOrder","trackByIdFn","itemKey","blockKey","ngRepeatTransclude","ngShowWatchAction","NG_HIDE_CLASS","tempClasses","NG_HIDE_IN_PROGRESS_CLASS","ngHideWatchAction","ngStyleWatchAction","newStyles","oldStyles","ngSwitchController","cases","selectedTranscludes","selectedElements","previousLeaveAnimations","selectedScopes","spliceFactory","ngSwitchWatchAction","selectedTransclude","caseElement","selectedScope","anchor","ngOptionsMinErr","NG_OPTIONS_REGEXP","nullModelCtrl","optionsMap","ngModelCtrl","unknownOption","databound","init","self.init","ngModelCtrl_","nullOption_","unknownOption_","addOption","self.addOption","removeOption","self.removeOption","hasOption","renderUnknownOption","self.renderUnknownOption","unknownVal","self.hasOption","setupAsSingle","selectElement","selectCtrl","ngModelCtrl.$render","emptyOption","setupAsMultiple","lastView","selectMultipleWatch","setupAsOptions","callExpression","exprFn","valueName","keyName","createIsSelectedFn","selectedSet","trackFn","trackIndex","isSelected","compareValueFn","selectAsFn","scheduleRendering","renderScheduled","render","updateLabelMap","labelMap","label","added","optionGroups","optionGroupNames","optionGroupName","optionGroup","existingParent","existingOptions","existingOption","valuesFn","anySelected","optionId","trackKeysCache","groupByFn","displayFn","nullOption","groupIndex","groupLength","optionGroupsCache","optGroupTemplate","lastElement","optionTemplate","optionsExp","selectAs","track","selectionChanged","selectedKey","viewValueFn","getLabels","toDisplay","ngModelCtrl.$isEmpty","nullSelectCtrl","selectCtrlName","interpolateWatchAction","$$csp"] +"names":["window","document","undefined","minErr","isArrayLike","obj","isWindow","length","nodeType","NODE_TYPE_ELEMENT","isString","isArray","forEach","iterator","context","key","isFunction","hasOwnProperty","call","isPrimitive","forEachSorted","keys","Object","sort","i","reverseParams","iteratorFn","value","nextUid","uid","setHashKey","h","$$hashKey","extend","dst","ii","arguments","j","jj","int","str","parseInt","inherit","parent","extra","create","noop","identity","$","valueFn","isUndefined","isDefined","isObject","isNumber","isDate","toString","isRegExp","isScope","$evalAsync","$watch","isBoolean","isElement","node","nodeName","prop","attr","find","makeMap","items","split","nodeName_","element","lowercase","arrayRemove","array","index","indexOf","splice","copy","source","destination","stackSource","stackDest","ngMinErr","push","result","Date","getTime","RegExp","match","lastIndex","emptyObject","getPrototypeOf","shallowCopy","src","charAt","equals","o1","o2","t1","t2","keySet","concat","array1","array2","slice","bind","self","fn","curryArgs","startIndex","apply","toJsonReplacer","val","toJson","pretty","JSON","stringify","fromJson","json","parse","startingTag","jqLite","clone","empty","e","elemHtml","append","html","NODE_TYPE_TEXT","replace","tryDecodeURIComponent","decodeURIComponent","parseKeyValue","keyValue","key_value","toKeyValue","parts","arrayValue","encodeUriQuery","join","encodeUriSegment","pctEncodeSpaces","encodeURIComponent","getNgAttribute","ngAttr","ngAttrPrefixes","angularInit","bootstrap","appElement","module","config","prefix","name","hasAttribute","getAttribute","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","test","angular","resumeBootstrap","angular.resumeBootstrap","extraModules","resumeDeferredBootstrap","reloadWithDebugInfo","location","reload","getTestability","rootElement","get","snake_case","separator","SNAKE_CASE_REGEXP","letter","pos","toLowerCase","bindJQuery","originalCleanData","bindJQueryFired","jQuery","on","JQLitePrototype","isolateScope","controller","inheritedData","cleanData","jQuery.cleanData","elems","events","skipDestroyOnNextJQueryCleanData","elem","_data","$destroy","triggerHandler","JQLite","assertArg","arg","reason","assertArgFn","acceptArrayAnnotation","constructor","assertNotHasOwnProperty","getter","path","bindFnToScope","lastInstance","len","getBlockNodes","nodes","endNode","blockNodes","nextSibling","createMap","setupModuleLoader","ensure","factory","$injectorMinErr","$$minErr","requires","configFn","invokeLater","provider","method","insertMethod","queue","invokeQueue","moduleInstance","configBlocks","runBlocks","_invokeQueue","_configBlocks","_runBlocks","service","constant","animation","filter","directive","run","block","publishExternalAPI","version","uppercase","counter","csp","angularModule","$LocaleProvider","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","$browser","$BrowserProvider","$cacheFactory","$CacheFactoryProvider","$controller","$ControllerProvider","$document","$DocumentProvider","$exceptionHandler","$ExceptionHandlerProvider","$filter","$FilterProvider","$interpolate","$InterpolateProvider","$interval","$IntervalProvider","$http","$HttpProvider","$httpBackend","$HttpBackendProvider","$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","$$asyncCallback","$$AsyncCallbackProvider","$$jqLite","$$jqLiteProvider","camelCase","SPECIAL_CHARS_REGEXP","_","offset","toUpperCase","MOZ_HACK_REGEXP","jqLiteAcceptsData","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","cloneNode","jqLiteDealoc","onlyDescendants","jqLiteRemoveData","querySelectorAll","descendants","l","jqLiteOff","type","unsupported","expandoStore","jqLiteExpandoStore","handle","listenerFns","removeEventListener","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","getAliasedAttrName","ALIASED_ATTR","createEventHandler","eventHandler","event","isDefaultPrevented","event.isDefaultPrevented","defaultPrevented","eventFns","eventFnsLength","immediatePropagationStopped","originalStopImmediatePropagation","stopImmediatePropagation","event.stopImmediatePropagation","stopPropagation","isImmediatePropagationStopped","event.isImmediatePropagationStopped","$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","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","decorator","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","supported","Browser","completeOutstandingRequest","outstandingRequestCount","outstandingRequestCallbacks","pop","error","startPoller","interval","check","pollFns","pollFn","pollTimeout","cacheStateAndFireUrlChange","cacheState","fireUrlChange","cachedState","history","state","lastCachedState","lastBrowserUrl","url","lastHistoryState","urlChangeListeners","listener","safeDecodeURIComponent","rawDocument","clearTimeout","pendingDeferIds","isMock","$$completeOutstandingRequest","$$incOutstandingRequestCount","self.$$incOutstandingRequestCount","notifyWhenNoOutstandingRequests","self.notifyWhenNoOutstandingRequests","callback","addPollFn","self.addPollFn","href","baseElement","reloadLocation","self.url","sameState","sameBase","stripHash","substr","self.state","urlChangeInit","onUrlChange","self.onUrlChange","$$checkUrlChange","baseHref","self.baseHref","lastCookies","lastCookieString","cookiePath","cookies","self.cookies","cookieLength","cookie","warn","cookieArray","substring","defer","self.defer","delay","timeoutId","cancel","self.defer.cancel","deferId","cacheFactory","cacheId","options","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","LOCAL_REGEXP","bindings","definition","scopeName","$compileMinErr","mode","collection","optional","attrName","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","$$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","parentBoundTranscludeFn","transcludeControllers","futureParentElement","$$boundTransclude","$linkNode","wrapTemplate","controllerName","$$addScopeInfo","nodeList","$rootElement","childLinkFn","childScope","childBoundTranscludeFn","stableNodeList","nodeLinkFnFound","linkFns","idx","nodeLinkFn","$new","transcludeOnThisElement","createBoundTranscludeFn","transclude","elementTranscludeOnThisElement","templateOnThisElement","attrs","linkFnFound","Attributes","collectDirectives","applyDirectivesToNode","$$element","terminal","previousBoundTranscludeFn","elementTransclusion","boundTranscludeFn","transcludedScope","cloneFn","controllers","containingScope","$$transcluded","attrsMap","$attr","addDirective","directiveNormalize","isNgAttr","nAttrs","attributes","attrStartName","attrEndName","ngAttrName","NG_ATTR_BINDING","PREFIX_REGEXP","directiveNName","directiveIsMultiElement","nName","addAttrInterpolateDirective","animVal","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","retrievalMethod","$searchElement","linkNode","controllersBoundTransclude","cloneAttachFn","hasElementTranscludeDirective","scopeToChild","controllerDirectives","$scope","$attrs","$transclude","controllerInstance","controllerAs","templateDirective","$$originalDirective","isolateScopeController","isolateBindingContext","identifier","bindToController","lastValue","parentGet","parentSet","compare","$observe","$$observers","$$scope","literal","b","assign","parentValueWatch","parentValue","$stateful","unwatch","$watchCollection","$on","invokeLinkFn","template","templateUrl","terminalPriority","newScopeDirective","nonTlbTranscludeDirective","hasTranscludeDirective","hasTemplate","$compileNode","$template","childTranscludeFn","$$start","$$end","directiveValue","assertNoDuplicate","$$tlb","createComment","replaceWith","replaceDirective","contents","denormalizeTemplate","removeComments","templateNamespace","newTemplateAttrs","templateDirectives","unprocessedDirectives","markDirectivesAsIsolate","mergeTemplateAttributes","compileTemplateUrl","Math","max","tDirectives","startAttrName","endAttrName","multiElement","srcAttr","dstAttr","$set","tAttrs","linkQueue","afterTemplateNodeLinkFn","afterTemplateChildLinkFn","beforeTemplateCompileNode","origAsyncDirective","derivedSyncDirective","getTrustedResourceUrl","then","content","tempTemplateAttrs","beforeTemplateLinkNode","linkRootElement","$$destroyed","oldClasses","delayedNodeLinkFn","ignoreChildLinkFn","diff","what","previousDirective","text","interpolateFn","textInterpolateCompileFn","templateNode","templateNodeParent","hasCompileParent","$$addBindingClass","textInterpolateLinkFn","$$addBindingInfo","expressions","interpolateFnWatchAction","wrapper","getTrustedContext","attrNormalizedName","HTML","RESOURCE_URL","allOrNothing","trustedContext","attrInterpolatePreLinkFn","newValue","$$inter","oldValue","$updateClass","elementsToRemove","newNode","firstElementToRemove","removeCount","j2","replaceChild","expando","k","kk","annotation","attributesToCopy","$normalize","$addClass","classVal","$removeClass","newClasses","toAdd","tokenDifference","toRemove","writeAttr","booleanKey","aliasedKey","observer","trimmedSrcset","srcPattern","rawUris","nbrUrisWith2parts","floor","innerIdx","lastTuple","removeAttr","listeners","startSymbol","endSymbol","binding","isolated","noTemplate","dataName","str1","str2","values","tokens1","tokens2","token","jqNodes","globals","CNTRL_REG","register","this.register","allowGlobals","this.allowGlobals","addIdentifier","expression","later","ident","$controllerMinErr","controllerPrototype","exception","cause","defaultHttpResponseTransform","headers","tempData","JSON_PROTECTION_PREFIX","contentType","jsonStart","JSON_START","JSON_ENDS","parseHeaders","line","headersGetter","headersObj","transformData","status","fns","defaults","transformResponse","transformRequest","d","common","CONTENT_TYPE_APPLICATION_JSON","patch","xsrfCookieName","xsrfHeaderName","useApplyAsync","this.useApplyAsync","interceptorFactories","interceptors","requestConfig","response","resp","reject","executeHeaderFns","headerContent","processedHeaders","headerFn","header","mergeHeaders","defHeaders","reqHeaders","defHeaderName","reqHeaderName","lowercaseDefHeaderName","chain","serverRequest","reqData","withCredentials","sendReq","promise","when","reversedInterceptors","interceptor","request","requestError","responseError","thenFn","rejectFn","success","promise.success","promise.error","done","headersString","statusText","resolveHttpPromise","resolvePromise","$applyAsync","$$phase","deferred","resolve","resolvePromiseWithResult","removePendingReq","pendingRequests","cachedResp","buildUrl","params","defaultCache","xsrfValue","urlIsSameOrigin","timeout","responseType","v","toISOString","interceptorFactory","createShortMethods","createShortMethodsWithData","createXhr","XMLHttpRequest","createHttpBackend","callbacks","$browserDefer","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","mustHaveExpression","unescapeText","escapedStartRegexp","escapedEndRegexp","parseStringifyInterceptor","getTrusted","valueOf","newErr","$interpolateMinErr","endIndex","parseFns","textLength","expressionPositions","startSymbolLength","exp","endSymbolLength","compute","interpolationFn","$$watchDelegate","objectEquality","$watchGroup","interpolateFnWatcher","oldValues","currValue","$interpolate.startSymbol","$interpolate.endSymbol","count","invokeApply","setInterval","clearInterval","iteration","skipApply","$$intervalId","tick","notify","intervals","interval.cancel","NUMBER_FORMATS","DECIMAL_SEP","GROUP_SEP","PATTERNS","minInt","minFrac","maxFrac","posPre","posSuf","negPre","negSuf","gSize","lgSize","CURRENCY_SYM","DATETIME_FORMATS","MONTH","SHORTMONTH","DAY","SHORTDAY","AMPMS","medium","fullDate","longDate","mediumDate","shortDate","mediumTime","shortTime","pluralCat","num","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","stripFile","lastIndexOf","LocationHtml5Url","appBase","basePrefix","$$html5","appBaseNoFile","$$parse","this.$$parse","pathUrl","$locationMinErr","$$compose","this.$$compose","$$url","$$absUrl","$$parseLinkUrl","this.$$parseLinkUrl","relHref","appUrl","prevAppUrl","rewrittenUrl","LocationHashbangUrl","hashPrefix","withoutBaseUrl","withoutHashUrl","windowsFilePathExp","firstPathSegmentMatch","LocationHashbangInHtml5Url","locationGetter","property","locationGetterSetter","preprocess","html5Mode","requireBase","rewriteLinks","this.hashPrefix","this.html5Mode","setBrowserUrlWithFallback","oldUrl","oldState","$$state","afterLocationChange","$broadcast","absUrl","LocationMode","initialUrl","IGNORE_URI_REGEXP","ctrlKey","metaKey","shiftKey","which","button","target","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","ensureSafeMemberName","fullExpression","$parseMinErr","ensureSafeObject","children","isConstant","setter","setValue","fullExp","propertyObj","isPossiblyDangerousMemberName","cspSafeGetterFn","key0","key1","key2","key3","key4","expensiveChecks","eso","o","eso0","eso1","eso2","eso3","eso4","cspSafeGetter","pathVal","getterFnWithEnsureSafeObject","s","getterFn","getterFnCache","getterFnCacheExpensive","getterFnCacheDefault","pathKeys","pathKeysLength","code","needsEnsureSafeObject","lookupJs","evaledFnGetter","Function","sharedGetter","fn.assign","getValueOf","objectValueOf","cacheDefault","cacheExpensive","wrapSharedExpression","wrapped","collectExpressionInputs","inputs","expressionInputDirtyCheck","oldValueOfValue","inputsWatchDelegate","parsedExpression","inputExpressions","$$inputs","lastResult","oldInputValue","expressionInputWatch","newInputValue","oldInputValueOfValues","expressionInputsWatch","changed","oneTimeWatchDelegate","oneTimeWatch","oneTimeListener","old","$$postDigest","oneTimeLiteralWatchDelegate","isAllDefined","allDefined","constantWatchDelegate","constantWatch","constantListener","addInterceptor","interceptorFn","watchDelegate","regularInterceptedExpression","oneTimeInterceptedExpression","$parseOptions","$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","TTL","$rootScopeMinErr","lastDirtyWatch","applyAsyncId","digestTtl","this.digestTtl","Scope","$id","$parent","$$watchers","$$nextSibling","$$prevSibling","$$childHead","$$childTail","$root","$$listeners","$$listenerCount","beginPhase","phase","decrementListenerCount","current","initWatchVal","flushApplyAsync","applyAsyncQueue","scheduleApplyAsync","isolate","destroyChild","child","$$ChildScope","this.$$ChildScope","watchExp","watcher","last","eq","deregisterWatch","watchExpressions","watchGroupAction","changeReactionScheduled","firstRun","newValues","deregisterFns","shouldCall","deregisterWatchGroup","expr","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","isNaN","msg","next","postDigestQueue","eventName","this.$watchGroup","$applyAsyncExpression","namedListeners","indexOfListener","$emit","targetScope","listenerArgs","currentScope","$$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","msie","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","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","filters","suffix","currencyFilter","dateFilter","filterFilter","jsonFilter","limitToFilter","lowercaseFilter","numberFilter","orderByFilter","uppercaseFilter","comparator","matchAgainstAnyProp","predicateFn","createPredicateFn","shouldMatchPrimitives","actual","expected","item","deepCompare","dontMatchWholeObject","actualType","expectedType","expectedVal","matchAnyProperty","actualVal","$locale","formats","amount","currencySymbol","fractionSize","formatNumber","number","groupSep","decimalSep","isFinite","isNegative","abs","numStr","formatedText","hasExponent","toFixed","parseFloat","fractionLen","min","round","fraction","lgroup","group","padNumber","digits","neg","dateGetter","date","dateStrGetter","shortForm","getFirstThursdayOfYear","year","dayOfWeekOnFirst","getDay","weekGetter","firstThurs","getFullYear","thisThurs","getMonth","getDate","jsonStringToDate","string","R_ISO8601_STR","tzHour","tzMin","dateSetter","setUTCFullYear","setFullYear","timeSetter","setUTCHours","setHours","m","ms","format","timezone","NUMBER_STRING","DATE_FORMATS_SPLIT","setMinutes","getMinutes","getTimezoneOffset","DATE_FORMATS","object","spacing","limit","Infinity","sortPredicate","reverseOrder","reverseComparator","comp","descending","objectToString","v1","v2","map","predicate","ngDirective","FormController","controls","parentForm","$$parentForm","nullFormCtrl","$error","$$success","$pending","$name","$dirty","$pristine","$valid","$invalid","$submitted","$addControl","$rollbackViewValue","form.$rollbackViewValue","control","$commitViewValue","form.$commitViewValue","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","timezoneOffset","ngMin","minVal","$validators","ctrl.$validators.min","$validate","ngMax","maxVal","ctrl.$validators.max","validity","VALIDITY_STATE_PROPERTY","badInput","typeMismatch","parseConstantExpr","fallback","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","isActive_","active","full","major","minor","dot","codeName","JQLite._data","MOUSE_EVENT_MAP","mouseleave","mouseenter","optgroup","tbody","tfoot","colgroup","caption","thead","th","td","ready","trigger","fired","removeData","removeAttribute","css","lowercasedName","specified","getNamedItem","ret","getText","$dv","multiple","selected","nodeCount","jqLiteOn","types","related","relatedTarget","contains","off","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","$$selectors","classNameFilter","this.classNameFilter","$$classNameFilter","runAnimationPostDigest","cancelFn","$$cancelFn","defer.promise.$$cancelFn","ngAnimatePostDigest","ngAnimateNotifyComplete","resolveElementClasses","hasClasses","cachedClassManipulation","op","asyncPromise","currentDefer","applyStyles","styles","from","to","animate","enter","leave","move","$$addClassImmediately","$$removeClassImmediately","add","createdCache","STORAGE_KEY","$$setClassImmediately","APPLICATION_JSON","PATH_MATCH","locationPrototype","paramValue","Location","Location.prototype.state","CALL","APPLY","BIND","CONSTANTS","null","true","false","constantGetter","OPERATORS","+","-","*","/","%","===","!==","==","!=","<",">","<=",">=","&&","||","!","ESCAPE","lex","tokens","readString","peek","readNumber","isIdent","readIdent","is","isWhitespace","ch2","ch3","op2","op3","op1","operator","throwError","chars","isExpOperator","start","end","colStr","peekCh","quote","rawString","hex","String","fromCharCode","rep","ZERO","statements","primary","expect","filterChain","consume","arrayDeclaration","functionCall","objectIndex","fieldAccess","peekToken","e1","e2","e3","e4","peekAhead","t","unaryFn","right","$parseUnaryFn","binaryFn","left","isBranching","$parseBinaryFn","$parseConstant","$parseStatements","inputFn","argsFn","$parseFilter","every","assignment","ternary","$parseAssignment","logicalOR","middle","$parseTernary","logicalAND","equality","relational","additive","multiplicative","unary","$parseFieldAccess","indexFn","$parseObjectIndex","fnGetter","contextGetter","expressionText","$parseFunctionCall","elementFns","$parseArrayLiteral","valueFns","$parseObjectLiteral","yy","y","MMMM","MMM","M","H","hh","EEEE","EEE","ampmGetter","Z","timeZoneGetter","zone","paddedZone","ww","w","xlinkHref","propName","normalized","ngBooleanAttrWatchAction","htmlAttr","ngAttrAliasWatchAction","nullFormRenameControl","formDirectiveFactory","isNgForm","ngFormCompile","formElement","ngFormPreLink","handleFormSubmission","parentFormCtrl","alias","URL_REGEXP","EMAIL_REGEXP","NUMBER_REGEXP","DATE_REGEXP","DATETIMELOCAL_REGEXP","WEEK_REGEXP","MONTH_REGEXP","TIME_REGEXP","inputType","textInputType","weekParser","isoWeek","existingDate","week","minutes","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","ctrls","CONSTANT_VALUE_REGEXP","tplAttr","ngValueConstantLink","ngValueLink","valueWatchAction","$compile","ngBindCompile","templateElement","ngBindLink","ngBindWatchAction","ngBindTemplateCompile","ngBindTemplateLink","ngBindHtmlCompile","tElement","ngBindHtmlGetter","ngBindHtmlWatch","getStringValue","ngBindHtmlLink","ngBindHtmlWatchAction","getTrustedHtml","$viewChangeListeners","forceAsyncEvents","ngEventHandler","$event","previousElements","ngIfWatchAction","newScope","srcExp","onloadExp","autoScrollExp","autoscroll","changeCounter","previousElement","currentElement","cleanupLastIncludeContent","parseAsResourceUrl","ngIncludeWatchAction","afterAnimation","thisChangeId","namespaceAdaptedClone","trimValues","NgModelController","$modelValue","$$rawModelValue","$asyncValidators","$untouched","$touched","parsedNgModel","parsedNgModelAssign","ngModelGet","ngModelSet","pendingDebounce","$$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","parserValid","allValid","$$writeModelToScope","this.$$runValidators","parseValid","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","BRACE","IS_WHEN","updateElementText","newText","numberExp","whenExp","whens","whensExpFns","braceReplacement","watchRemover","lastCount","attributeName","tmpMatch","whenKey","ngPluralizeWatchAction","countIsNaN","ngRepeatMinErr","updateScope","valueIdentifier","keyIdentifier","arrayLength","$first","$last","$middle","$odd","$even","ngRepeatCompile","ngRepeatEndComment","lhs","rhs","aliasAs","trackByExp","trackByExpGetter","trackByIdExpFn","trackByIdArrayFn","trackByIdObjFn","hashFnLocals","ngRepeatLink","lastBlockMap","ngRepeatAction","previousNode","nextNode","nextBlockMap","collectionLength","trackById","collectionKeys","nextBlockOrder","trackByIdFn","itemKey","blockKey","ngRepeatTransclude","ngShowWatchAction","NG_HIDE_CLASS","tempClasses","NG_HIDE_IN_PROGRESS_CLASS","ngHideWatchAction","ngStyleWatchAction","newStyles","oldStyles","ngSwitchController","cases","selectedTranscludes","selectedElements","previousLeaveAnimations","selectedScopes","spliceFactory","ngSwitchWatchAction","selectedTransclude","caseElement","selectedScope","anchor","ngOptionsMinErr","NG_OPTIONS_REGEXP","nullModelCtrl","optionsMap","ngModelCtrl","unknownOption","databound","init","self.init","ngModelCtrl_","nullOption_","unknownOption_","addOption","self.addOption","removeOption","self.removeOption","hasOption","renderUnknownOption","self.renderUnknownOption","unknownVal","self.hasOption","setupAsSingle","selectElement","selectCtrl","ngModelCtrl.$render","emptyOption","setupAsMultiple","lastView","selectMultipleWatch","setupAsOptions","callExpression","exprFn","valueName","keyName","createIsSelectedFn","selectedSet","trackFn","trackIndex","isSelected","compareValueFn","selectAsFn","scheduleRendering","renderScheduled","render","updateLabelMap","labelMap","label","added","optionGroups","optionGroupNames","optionGroupName","optionGroup","existingParent","existingOptions","existingOption","valuesFn","anySelected","optionId","trackKeysCache","groupByFn","displayFn","nullOption","groupIndex","groupLength","optionGroupsCache","optGroupTemplate","lastElement","optionTemplate","optionsExp","selectAs","track","selectionChanged","selectedKey","viewValueFn","getLabels","toDisplay","ngModelCtrl.$isEmpty","nullSelectCtrl","selectCtrlName","interpolateWatchAction","ctrl.$validators.required","patternExp","ctrl.$validators.pattern","intVal","ctrl.$validators.maxlength","ctrl.$validators.minlength","$$csp"] } diff --git a/public/app/bower_components/angular/bower.json b/public/app/bower_components/angular/bower.json index db95c247..2690e016 100644 --- a/public/app/bower_components/angular/bower.json +++ b/public/app/bower_components/angular/bower.json @@ -1,6 +1,6 @@ { "name": "angular", - "version": "1.3.1", + "version": "1.3.12", "main": "./angular.js", "ignore": [], "dependencies": { diff --git a/public/app/bower_components/angular/package.json b/public/app/bower_components/angular/package.json index bdb1eff0..b5476ab9 100644 --- a/public/app/bower_components/angular/package.json +++ b/public/app/bower_components/angular/package.json @@ -1,6 +1,6 @@ { "name": "angular", - "version": "1.3.1", + "version": "1.3.12", "description": "HTML enhanced for web apps", "main": "angular.js", "scripts": { diff --git a/public/app/bower_components/html5-boilerplate/.bower.json b/public/app/bower_components/html5-boilerplate/.bower.json index 5fb96e72..c30d1ae1 100644 --- a/public/app/bower_components/html5-boilerplate/.bower.json +++ b/public/app/bower_components/html5-boilerplate/.bower.json @@ -1,12 +1,12 @@ { "name": "html5-boilerplate", "homepage": "https://github.com/h5bp/html5-boilerplate", - "version": "4.3.0", - "_release": "4.3.0", + "version": "5.0.0", + "_release": "5.0.0", "_resolution": { "type": "version", - "tag": "v4.3.0", - "commit": "72cdf1e96c6506c76c51e53abc1f2bd224776649" + "tag": "v5.0.0", + "commit": "60a8ff033665e1207714d6670fcd7b65304ec02f" }, "_source": "git://github.com/h5bp/html5-boilerplate.git", "_target": "*", diff --git a/public/app/bower_components/html5-boilerplate/.editorconfig b/public/app/bower_components/html5-boilerplate/.editorconfig new file mode 100644 index 00000000..f6c80807 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/.editorconfig @@ -0,0 +1,22 @@ +# For more information about the properties used in +# this file, please see the EditorConfig documentation: +# http://editorconfig.org/ + +root = true + +[*] +charset = utf-8 +end_of_line = lf +indent_size = 4 +indent_style = space +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false + +[{.travis.yml,package.json}] +# The indent size used in the `package.json` file cannot be changed +# https://github.com/npm/npm/pull/3180#issuecomment-16336516 +indent_size = 2 +indent_style = space diff --git a/public/app/bower_components/html5-boilerplate/.gitattributes b/public/app/bower_components/html5-boilerplate/.gitattributes index 21256661..cf911c10 100644 --- a/public/app/bower_components/html5-boilerplate/.gitattributes +++ b/public/app/bower_components/html5-boilerplate/.gitattributes @@ -1 +1,17 @@ -* text=auto \ No newline at end of file +# Automatically normalize line endings for all text-based files +# http://git-scm.com/docs/gitattributes#_end_of_line_conversion +* text=auto + +# For the following file types, normalize line endings to LF on +# checkin and prevent conversion to CRLF when they are checked out +# (this is required in order to prevent newline related issues like, +# for example, after the build script is run) +.* text eol=lf +*.css text eol=lf +*.html text eol=lf +*.js text eol=lf +*.json text eol=lf +*.md text eol=lf +*.sh text eol=lf +*.txt text eol=lf +*.xml text eol=lf diff --git a/public/app/bower_components/html5-boilerplate/.gitignore b/public/app/bower_components/html5-boilerplate/.gitignore index 16b2d7d0..9eb74bc7 100644 --- a/public/app/bower_components/html5-boilerplate/.gitignore +++ b/public/app/bower_components/html5-boilerplate/.gitignore @@ -1,2 +1,2 @@ -# Include your project-specific ignores in this file -# Read about how to use .gitignore: https://help.github.com/articles/ignoring-files +archive +node_modules diff --git a/public/app/bower_components/html5-boilerplate/.htaccess b/public/app/bower_components/html5-boilerplate/.htaccess deleted file mode 100644 index 6861adaa..00000000 --- a/public/app/bower_components/html5-boilerplate/.htaccess +++ /dev/null @@ -1,551 +0,0 @@ -# Apache Server Configs v1.1.0 | MIT License -# https://github.com/h5bp/server-configs-apache - -# (!) Using `.htaccess` files slows down Apache, therefore, if you have access -# to the main server config file (usually called `httpd.conf`), you should add -# this logic there: http://httpd.apache.org/docs/current/howto/htaccess.html. - -# ############################################################################## -# # CROSS-ORIGIN RESOURCE SHARING (CORS) # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Cross-domain AJAX requests | -# ------------------------------------------------------------------------------ - -# Enable cross-origin AJAX requests. -# http://code.google.com/p/html5security/wiki/CrossOriginRequestSecurity -# http://enable-cors.org/ - -# -# Header set Access-Control-Allow-Origin "*" -# - -# ------------------------------------------------------------------------------ -# | CORS-enabled images | -# ------------------------------------------------------------------------------ - -# Send the CORS header for images when browsers request it. -# https://developer.mozilla.org/en/CORS_Enabled_Image -# http://blog.chromium.org/2011/07/using-cross-domain-images-in-webgl-and.html -# http://hacks.mozilla.org/2011/11/using-cors-to-load-webgl-textures-from-cross-domain-images/ - - - - - SetEnvIf Origin ":" IS_CORS - Header set Access-Control-Allow-Origin "*" env=IS_CORS - - - - -# ------------------------------------------------------------------------------ -# | Web fonts access | -# ------------------------------------------------------------------------------ - -# Allow access from all domains for web fonts - - - - Header set Access-Control-Allow-Origin "*" - - - - -# ############################################################################## -# # ERRORS # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | 404 error prevention for non-existing redirected folders | -# ------------------------------------------------------------------------------ - -# Prevent Apache from returning a 404 error for a rewrite if a directory -# with the same name does not exist. -# http://httpd.apache.org/docs/current/content-negotiation.html#multiviews -# http://www.webmasterworld.com/apache/3808792.htm - -Options -MultiViews - -# ------------------------------------------------------------------------------ -# | Custom error messages / pages | -# ------------------------------------------------------------------------------ - -# You can customize what Apache returns to the client in case of an error (see -# http://httpd.apache.org/docs/current/mod/core.html#errordocument), e.g.: - -ErrorDocument 404 /404.html - - -# ############################################################################## -# # INTERNET EXPLORER # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Better website experience | -# ------------------------------------------------------------------------------ - -# Force IE to render pages in the highest available mode in the various -# cases when it may not: http://hsivonen.iki.fi/doctype/ie-mode.pdf. - - - Header set X-UA-Compatible "IE=edge" - # `mod_headers` can't match based on the content-type, however, we only - # want to send this header for HTML pages and not for the other resources - - Header unset X-UA-Compatible - - - -# ------------------------------------------------------------------------------ -# | Cookie setting from iframes | -# ------------------------------------------------------------------------------ - -# Allow cookies to be set from iframes in IE. - -# -# Header set P3P "policyref=\"/w3c/p3p.xml\", CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"" -# - -# ------------------------------------------------------------------------------ -# | Screen flicker | -# ------------------------------------------------------------------------------ - -# Stop screen flicker in IE on CSS rollovers (this only works in -# combination with the `ExpiresByType` directives for images from below). - -# BrowserMatch "MSIE" brokenvary=1 -# BrowserMatch "Mozilla/4.[0-9]{2}" brokenvary=1 -# BrowserMatch "Opera" !brokenvary -# SetEnvIf brokenvary 1 force-no-vary - - -# ############################################################################## -# # MIME TYPES AND ENCODING # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Proper MIME types for all files | -# ------------------------------------------------------------------------------ - - - - # Audio - AddType audio/mp4 m4a f4a f4b - AddType audio/ogg oga ogg - - # JavaScript - # Normalize to standard type (it's sniffed in IE anyways): - # http://tools.ietf.org/html/rfc4329#section-7.2 - AddType application/javascript js - AddType application/json json - - # Video - AddType video/mp4 mp4 m4v f4v f4p - AddType video/ogg ogv - AddType video/webm webm - AddType video/x-flv flv - - # Web fonts - AddType application/font-woff woff - AddType application/vnd.ms-fontobject eot - - # Browsers usually ignore the font MIME types and sniff the content, - # however, Chrome shows a warning if other MIME types are used for the - # following fonts. - AddType application/x-font-ttf ttc ttf - AddType font/opentype otf - - # Make SVGZ fonts work on iPad: - # https://twitter.com/FontSquirrel/status/14855840545 - AddType image/svg+xml svg svgz - AddEncoding gzip svgz - - # Other - AddType application/octet-stream safariextz - AddType application/x-chrome-extension crx - AddType application/x-opera-extension oex - AddType application/x-shockwave-flash swf - AddType application/x-web-app-manifest+json webapp - AddType application/x-xpinstall xpi - AddType application/xml atom rdf rss xml - AddType image/webp webp - AddType image/x-icon ico - AddType text/cache-manifest appcache manifest - AddType text/vtt vtt - AddType text/x-component htc - AddType text/x-vcard vcf - - - -# ------------------------------------------------------------------------------ -# | UTF-8 encoding | -# ------------------------------------------------------------------------------ - -# Use UTF-8 encoding for anything served as `text/html` or `text/plain`. -AddDefaultCharset utf-8 - -# Force UTF-8 for certain file formats. - - AddCharset utf-8 .atom .css .js .json .rss .vtt .webapp .xml - - - -# ############################################################################## -# # URL REWRITES # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Rewrite engine | -# ------------------------------------------------------------------------------ - -# Turning on the rewrite engine and enabling the `FollowSymLinks` option is -# necessary for the following directives to work. - -# If your web host doesn't allow the `FollowSymlinks` option, you may need to -# comment it out and use `Options +SymLinksIfOwnerMatch` but, be aware of the -# performance impact: http://httpd.apache.org/docs/current/misc/perf-tuning.html#symlinks - -# Also, some cloud hosting services require `RewriteBase` to be set: -# http://www.rackspace.com/knowledge_center/frequently-asked-question/why-is-mod-rewrite-not-working-on-my-site - - - Options +FollowSymlinks - # Options +SymLinksIfOwnerMatch - RewriteEngine On - # RewriteBase / - - -# ------------------------------------------------------------------------------ -# | Suppressing / Forcing the "www." at the beginning of URLs | -# ------------------------------------------------------------------------------ - -# The same content should never be available under two different URLs especially -# not with and without "www." at the beginning. This can cause SEO problems -# (duplicate content), therefore, you should choose one of the alternatives and -# redirect the other one. - -# By default option 1 (no "www.") is activated: -# http://no-www.org/faq.php?q=class_b - -# If you'd prefer to use option 2, just comment out all the lines from option 1 -# and uncomment the ones from option 2. - -# IMPORTANT: NEVER USE BOTH RULES AT THE SAME TIME! - -# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# Option 1: rewrite www.example.com → example.com - - - RewriteCond %{HTTPS} !=on - RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] - RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L] - - -# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# Option 2: rewrite example.com → www.example.com - -# Be aware that the following might not be a good idea if you use "real" -# subdomains for certain parts of your website. - -# -# RewriteCond %{HTTPS} !=on -# RewriteCond %{HTTP_HOST} !^www\..+$ [NC] -# RewriteCond %{HTTP_HOST} !=localhost [NC] -# RewriteCond %{HTTP_HOST} !=127.0.0.1 -# RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] -# - - -# ############################################################################## -# # SECURITY # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Content Security Policy (CSP) | -# ------------------------------------------------------------------------------ - -# You can mitigate the risk of cross-site scripting and other content-injection -# attacks by setting a Content Security Policy which whitelists trusted sources -# of content for your site. - -# The example header below allows ONLY scripts that are loaded from the current -# site's origin (no inline scripts, no CDN, etc). This almost certainly won't -# work as-is for your site! - -# To get all the details you'll need to craft a reasonable policy for your site, -# read: http://html5rocks.com/en/tutorials/security/content-security-policy (or -# see the specification: http://w3.org/TR/CSP). - -# -# Header set Content-Security-Policy "script-src 'self'; object-src 'self'" -# -# Header unset Content-Security-Policy -# -# - -# ------------------------------------------------------------------------------ -# | File access | -# ------------------------------------------------------------------------------ - -# Block access to directories without a default document. -# Usually you should leave this uncommented because you shouldn't allow anyone -# to surf through every directory on your server (which may includes rather -# private places like the CMS's directories). - - - Options -Indexes - - -# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# Block access to hidden files and directories. -# This includes directories used by version control systems such as Git and SVN. - - - RewriteCond %{SCRIPT_FILENAME} -d [OR] - RewriteCond %{SCRIPT_FILENAME} -f - RewriteRule "(^|/)\." - [F] - - -# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# Block access to backup and source files. -# These files may be left by some text editors and can pose a great security -# danger when anyone has access to them. - - - Order allow,deny - Deny from all - Satisfy All - - -# ------------------------------------------------------------------------------ -# | Secure Sockets Layer (SSL) | -# ------------------------------------------------------------------------------ - -# Rewrite secure requests properly to prevent SSL certificate warnings, e.g.: -# prevent `https://www.example.com` when your certificate only allows -# `https://secure.example.com`. - -# -# RewriteCond %{SERVER_PORT} !^443 -# RewriteRule ^ https://example-domain-please-change-me.com%{REQUEST_URI} [R=301,L] -# - -# ------------------------------------------------------------------------------ -# | HTTP Strict Transport Security (HSTS) | -# ------------------------------------------------------------------------------ - -# Force client-side SSL redirection. - -# If a user types "example.com" in his browser, the above rule will redirect -# him to the secure version of the site. That still leaves a window of oppor- -# tunity (the initial HTTP connection) for an attacker to downgrade or redirect -# the request. The following header ensures that browser will ONLY connect to -# your server via HTTPS, regardless of what the users type in the address bar. -# http://tools.ietf.org/html/draft-ietf-websec-strict-transport-sec-14#section-6.1 -# http://www.html5rocks.com/en/tutorials/security/transport-layer-security/ - -# (!) Remove the `includeSubDomains` optional directive if the subdomains are -# not using HTTPS. - -# -# Header set Strict-Transport-Security "max-age=16070400; includeSubDomains" -# - -# ------------------------------------------------------------------------------ -# | Server software information | -# ------------------------------------------------------------------------------ - -# Avoid displaying the exact Apache version number, the description of the -# generic OS-type and the information about Apache's compiled-in modules. - -# ADD THIS DIRECTIVE IN THE `httpd.conf` AS IT WILL NOT WORK IN THE `.htaccess`! - -# ServerTokens Prod - - -# ############################################################################## -# # WEB PERFORMANCE # -# ############################################################################## - -# ------------------------------------------------------------------------------ -# | Compression | -# ------------------------------------------------------------------------------ - - - - # Force compression for mangled headers. - # http://developer.yahoo.com/blogs/ydn/posts/2010/12/pushing-beyond-gzipping - - - SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding - RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding - - - - # Compress all output labeled with one of the following MIME-types - # (for Apache versions below 2.3.7, you don't need to enable `mod_filter` - # and can remove the `` and `` lines - # as `AddOutputFilterByType` is still in the core directives). - - AddOutputFilterByType DEFLATE application/atom+xml \ - application/javascript \ - application/json \ - application/rss+xml \ - application/vnd.ms-fontobject \ - application/x-font-ttf \ - application/x-web-app-manifest+json \ - application/xhtml+xml \ - application/xml \ - font/opentype \ - image/svg+xml \ - image/x-icon \ - text/css \ - text/html \ - text/plain \ - text/x-component \ - text/xml - - - - -# ------------------------------------------------------------------------------ -# | Content transformations | -# ------------------------------------------------------------------------------ - -# Prevent some of the mobile network providers from modifying the content of -# your site: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.5. - -# -# Header set Cache-Control "no-transform" -# - -# ------------------------------------------------------------------------------ -# | ETag removal | -# ------------------------------------------------------------------------------ - -# Since we're sending far-future expires headers (see below), ETags can -# be removed: http://developer.yahoo.com/performance/rules.html#etags. - -# `FileETag None` is not enough for every server. - - Header unset ETag - - -FileETag None - -# ------------------------------------------------------------------------------ -# | Expires headers (for better cache control) | -# ------------------------------------------------------------------------------ - -# The following expires headers are set pretty far in the future. If you don't -# control versioning with filename-based cache busting, consider lowering the -# cache time for resources like CSS and JS to something like 1 week. - - - - ExpiresActive on - ExpiresDefault "access plus 1 month" - - # CSS - ExpiresByType text/css "access plus 1 year" - - # Data interchange - ExpiresByType application/json "access plus 0 seconds" - ExpiresByType application/xml "access plus 0 seconds" - ExpiresByType text/xml "access plus 0 seconds" - - # Favicon (cannot be renamed!) - ExpiresByType image/x-icon "access plus 1 week" - - # HTML components (HTCs) - ExpiresByType text/x-component "access plus 1 month" - - # HTML - ExpiresByType text/html "access plus 0 seconds" - - # JavaScript - ExpiresByType application/javascript "access plus 1 year" - - # Manifest files - ExpiresByType application/x-web-app-manifest+json "access plus 0 seconds" - ExpiresByType text/cache-manifest "access plus 0 seconds" - - # Media - ExpiresByType audio/ogg "access plus 1 month" - ExpiresByType image/gif "access plus 1 month" - ExpiresByType image/jpeg "access plus 1 month" - ExpiresByType image/png "access plus 1 month" - ExpiresByType video/mp4 "access plus 1 month" - ExpiresByType video/ogg "access plus 1 month" - ExpiresByType video/webm "access plus 1 month" - - # Web feeds - ExpiresByType application/atom+xml "access plus 1 hour" - ExpiresByType application/rss+xml "access plus 1 hour" - - # Web fonts - ExpiresByType application/font-woff "access plus 1 month" - ExpiresByType application/vnd.ms-fontobject "access plus 1 month" - ExpiresByType application/x-font-ttf "access plus 1 month" - ExpiresByType font/opentype "access plus 1 month" - ExpiresByType image/svg+xml "access plus 1 month" - - - -# ------------------------------------------------------------------------------ -# | Filename-based cache busting | -# ------------------------------------------------------------------------------ - -# If you're not using a build process to manage your filename version revving, -# you might want to consider enabling the following directives to route all -# requests such as `/css/style.12345.css` to `/css/style.css`. - -# To understand why this is important and a better idea than `*.css?v231`, read: -# http://stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring - -# -# RewriteCond %{REQUEST_FILENAME} !-f -# RewriteRule ^(.+)\.(\d+)\.(js|css|png|jpg|gif)$ $1.$3 [L] -# - -# ------------------------------------------------------------------------------ -# | File concatenation | -# ------------------------------------------------------------------------------ - -# Allow concatenation from within specific CSS and JS files, e.g.: -# Inside of `script.combined.js` you could have -# -# -# and they would be included into this single file. - -# -# -# Options +Includes -# AddOutputFilterByType INCLUDES application/javascript application/json -# SetOutputFilter INCLUDES -# -# -# Options +Includes -# AddOutputFilterByType INCLUDES text/css -# SetOutputFilter INCLUDES -# -# - -# ------------------------------------------------------------------------------ -# | Persistent connections | -# ------------------------------------------------------------------------------ - -# Allow multiple requests to be sent over the same TCP connection: -# http://httpd.apache.org/docs/current/en/mod/core.html#keepalive. - -# Enable if you serve a lot of static content but, be aware of the -# possible disadvantages! - -# -# Header set Connection Keep-Alive -# diff --git a/public/app/bower_components/html5-boilerplate/.jscsrc b/public/app/bower_components/html5-boilerplate/.jscsrc new file mode 100644 index 00000000..a83f173d --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/.jscsrc @@ -0,0 +1,68 @@ +{ + "disallowEmptyBlocks": true, + "disallowKeywords": [ + "with" + ], + "disallowMixedSpacesAndTabs": true, + "disallowMultipleLineStrings": true, + "disallowMultipleVarDecl": true, + "disallowSpaceAfterPrefixUnaryOperators": [ + "!", + "+", + "++", + "-", + "--", + "~" + ], + "disallowSpaceBeforeBinaryOperators": [ + "," + ], + "disallowSpaceBeforePostfixUnaryOperators": true, + "disallowSpacesInNamedFunctionExpression": { + "beforeOpeningRoundBrace": true + }, + "disallowSpacesInsideArrayBrackets": true, + "disallowSpacesInsideParentheses": true, + "disallowTrailingComma": true, + "disallowTrailingWhitespace": true, + "requireCamelCaseOrUpperCaseIdentifiers": true, + "requireCapitalizedConstructors": true, + "requireCommaBeforeLineBreak": true, + "requireCurlyBraces": true, + "requireDotNotation": true, + "requireLineFeedAtFileEnd": true, + "requireParenthesesAroundIIFE": true, + "requireSpaceAfterBinaryOperators": true, + "requireSpaceAfterKeywords": [ + "catch", + "do", + "else", + "for", + "if", + "return", + "switch", + "try", + "while" + ], + "requireSpaceAfterLineComment": true, + "requireSpaceBeforeBinaryOperators": true, + "requireSpaceBeforeBlockStatements": true, + "requireSpacesInAnonymousFunctionExpression": { + "beforeOpeningCurlyBrace": true + }, + "requireSpacesInConditionalExpression": true, + "requireSpacesInFunctionDeclaration": { + "beforeOpeningCurlyBrace": true + }, + "requireSpacesInFunctionExpression": { + "beforeOpeningCurlyBrace": true + }, + "requireSpacesInNamedFunctionExpression": { + "beforeOpeningCurlyBrace": true + }, + "requireSpacesInsideObjectBrackets": "allButNested", + "validateIndentation": 4, + "validateLineBreaks": "LF", + "validateParameterSeparator": ", ", + "validateQuoteMarks": "'" +} diff --git a/public/app/bower_components/html5-boilerplate/.jshintrc b/public/app/bower_components/html5-boilerplate/.jshintrc new file mode 100644 index 00000000..8b2a0be4 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/.jshintrc @@ -0,0 +1,32 @@ +{ + + // Enforcing options + // http://www.jshint.com/docs/options/#enforcing-options + + "bitwise": true, + "eqeqeq": true, + "forin": true, + "latedef": true, + "noarg": true, + "nonbsp": true, + "nonew": true, + "undef": true, + "unused": true, + + // - - - - - - - - - - - - - - - - - - - - - - - - - - - + + // Relaxing options + // http://www.jshint.com/docs/options/#relaxing-options + + "esnext": true, + + // - - - - - - - - - - - - - - - - - - - - - - - - - - - + + // Environments + // http://www.jshint.com/docs/options/#environments + + "browser": true, + "jquery": true, + "node": true + +} diff --git a/public/app/bower_components/html5-boilerplate/.travis.yml b/public/app/bower_components/html5-boilerplate/.travis.yml new file mode 100644 index 00000000..922330a7 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/.travis.yml @@ -0,0 +1,62 @@ +# For more information about the configurations used +# in this file, please see the Travis CI documentation: +# http://docs.travis-ci.com + +after_success: + + # If the tests past, Travis will automatically download and execute + # the following script(s). + + # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + # The `commit_build_changes.sh` script will run `npm run build`, + # and if that generates changes, it will commit them to the `master` + # branch: + # + # * ensuring that the content from the `dist/` directory is always + # in sync with the rest of the content + # + # * removing the need to execute the build step locally everytime + # a change is made (especially in the case of trivial changes + # such as typos) + # + # Note: The `commit_build_changes.sh` script will only run if the + # commit was made to the `master` branch. + + - curl -sSL "https://raw.githubusercontent.com/h5bp-bot/scripts/0.6.0/commit_build_changes.sh" | + bash -s -- --branch "master" + --commands "npm install && npm run build" + --commit-message "Update content from the \`dist\` directory [skip ci]" + +env: + global: + + # The `secure` key contains three encrypted environment variables + # (GH_TOKEN, GH_USER_EMAIL and GH_USER_NAME), the values of which + # are used by the scripts that are automatically executed by Travis. + # + # Note: The `secure` key will only work for this repository, so if + # you create your own fork, you will need to generate your own key: + # + # travis encrypt -r "/" \ + # GH_TOKEN="" \ + # GH_USER_EMAIL="" \ + # GH_USER_NAME="" + # + # To learn more about how to generate the: + # + # * `secure` key, see: + # http://docs.travis-ci.com/user/encryption-keys/ + # + # * GitHub access token, see: + # https://help.github.com/articles/creating-an-access-token-for-command-line-use/ + + - secure: "mkLhS1ajE7gYNUdHsAfcW6vU9THb2DmPA01PQlXz2y/F3Ld0IwEpqrGGLWyg9ZSYr0g7xq+M46pPiZsfZgCYSLv0flA/RFLmiXcVQfap3BZf8sqTtE3M9AHuy9sxUgus2M9GA7Wupws2KC2PXZM0OT12GSSOCYQCLD3ySD4b4mE=" + +git: + depth: 10 + +language: node_js + +node_js: + - "0.10" diff --git a/public/app/bower_components/html5-boilerplate/404.html b/public/app/bower_components/html5-boilerplate/404.html deleted file mode 100644 index fdace4ab..00000000 --- a/public/app/bower_components/html5-boilerplate/404.html +++ /dev/null @@ -1,157 +0,0 @@ - - - - - Page Not Found :( - - - -
-

Not found :(

-

Sorry, but the page you were trying to view does not exist.

-

It looks like this was the result of either:

-
    -
  • a mistyped address
  • -
  • an out-of-date link
  • -
- - -
- - diff --git a/public/app/bower_components/html5-boilerplate/CHANGELOG.md b/public/app/bower_components/html5-boilerplate/CHANGELOG.md index 90a0a3bf..a937640c 100644 --- a/public/app/bower_components/html5-boilerplate/CHANGELOG.md +++ b/public/app/bower_components/html5-boilerplate/CHANGELOG.md @@ -1,23 +1,83 @@ -### HEAD +### 5.0 + +* Update to jQuery 1.11.2. +* Update Apache Server Configs to v2.11.0. +* Rename Apple touch icon to `apple-touch-icon.png` and add + `` in `index.html` + ([#1622](https://github.com/h5bp/html5-boilerplate/issues/1622)). +* Add vertical centering for `iframe` + ([#1613](https://github.com/h5bp/html5-boilerplate/issues/1613)). +* Change the outdated browser prompt classname to `browserupgrade` + ([#1608](https://github.com/h5bp/html5-boilerplate/issues/1608)). +* Update to Normalize.css 3.0.2. + ([#1050](https://github.com/h5bp/html5-boilerplate/issues/1050)). +* Update `apple-touch-icon-precomposed.png` and the _"Apple touch + icons"_ related documentation + ([#1599](https://github.com/h5bp/html5-boilerplate/pull/1599)). +* Add pseudo-elements to universal selector in print media query + ([#1585](https://github.com/h5bp/html5-boilerplate/pull/1585)). +* Update to Modernizr 2.8.3. +* Remove need to readjust margins in `404.html` + ([#1567](https://github.com/h5bp/html5-boilerplate/pull/1567)). +* Add `/.editorconfig` file + ([#1561](https://github.com/h5bp/html5-boilerplate/issues/1561), + [#1564](https://github.com/h5bp/html5-boilerplate/issues/1564)). +* Add `auto` to the Google Universal Analytics tracker create method + ([#1562](https://github.com/h5bp/html5-boilerplate/issues/1562)). +* Add `timeline` and `timelineEnd` to the list of `console` methods + ([#1559](https://github.com/h5bp/html5-boilerplate/issues/1559)). +* Add `lang=""` to `` + ([#1542](https://github.com/h5bp/html5-boilerplate/issues/1542)). +* Use `` instead of `` + ([#1522](https://github.com/h5bp/html5-boilerplate/issues/1522)). +* Add `/browserconfig.xml` file and tile images + ([#1481](https://github.com/h5bp/html5-boilerplate/issues/1481)). +* Add `Disallow:` to `robots.txt` + ([#1487](https://github.com/h5bp/html5-boilerplate/issues/1487)). +* Remove default foreground color from form elements + ([#1390](https://github.com/h5bp/html5-boilerplate/issues/1390)). +* Remove default margin from print styles + ([#1477](https://github.com/h5bp/html5-boilerplate/issues/1477)). +* Remove image replacement helper class `.ir` + ([#1472](https://github.com/h5bp/html5-boilerplate/issues/1472), + [#1475](https://github.com/h5bp/html5-boilerplate/issues/1475)). +* Add vertical centering for `svg` + ([#1453](https://github.com/h5bp/html5-boilerplate/issues/1453)). +* Redesign 404 page + ([#1443](https://github.com/h5bp/html5-boilerplate/pull/1443)). +* Remove IE 6/7 hacks from `main.css` + ([#1050](https://github.com/h5bp/html5-boilerplate/issues/1050)). +* Remove IE conditional classes + ([#1187](https://github.com/h5bp/html5-boilerplate/issues/1187), + [#1290](https://github.com/h5bp/html5-boilerplate/issues/1290)). ### 4.3.0 (September 10, 2013) -* Use one apple-touch-icon instead of six ([#1367](https://github.com/h5bp/html5-boilerplate/issues/1367)). -* Move font-related declarations from `body` to `html` ([#1411](https://github.com/h5bp/html5-boilerplate/issues/1411)). +* Use one `apple-touch-icon` instead of six + ([#1367](https://github.com/h5bp/html5-boilerplate/issues/1367)). +* Move font-related declarations from `body` to `html` + ([#1411](https://github.com/h5bp/html5-boilerplate/issues/1411)). * Update to Apache Server Configs 1.1.0. -* Add `initial-scale=1` to the viewport `meta` ([#1398](https://github.com/h5bp/html5-boilerplate/pull/1398)). -* Vertical centering for audio-, canvas- and video-tags ([#1326](https://github.com/h5bp/html5-boilerplate/issues/1326)). -* Remove Google Chrome Frame related code ([#1379](https://github.com/h5bp/html5-boilerplate/pull/1379), [#1396](https://github.com/h5bp/html5-boilerplate/pull/1396)). -* Update to Google Universal Analytics ([#1347](https://github.com/h5bp/html5-boilerplate/issues/1347)). +* Add `initial-scale=1` to the viewport `meta` + ([#1398](https://github.com/h5bp/html5-boilerplate/pull/1398)). +* Vertical centering for audio-, canvas- and video-tags + ([#1326](https://github.com/h5bp/html5-boilerplate/issues/1326)). +* Remove Google Chrome Frame related code + ([#1379](https://github.com/h5bp/html5-boilerplate/pull/1379), + [#1396](https://github.com/h5bp/html5-boilerplate/pull/1396)). +* Update to Google Universal Analytics + ([#1347](https://github.com/h5bp/html5-boilerplate/issues/1347)). * Update to jQuery 1.10.2. * Update to Normalize.css 1.1.3. ### 4.2.0 (April 8, 2013) -* Remove Google Analytics protocol check ([#1319](https://github.com/h5bp/html5-boilerplate/pull/1319)). +* Remove Google Analytics protocol check + ([#1319](https://github.com/h5bp/html5-boilerplate/pull/1319)). * Update to Normalize.css 1.1.1. -* Update Apache configurations to include the latest changes in the canonical - [`.htaccess`](https://github.com/h5bp/server-configs-apache) file. +* Update Apache configurations to include the latest changes in the + canonical [`.htaccess`](https://github.com/h5bp/server-configs-apache) + file. * Use a protocol relative URL for the 404 template script. * Update to jQuery 1.9.1. @@ -28,10 +88,14 @@ ### 4.0.3 (January 12, 2013) -* Use 32x32 favicon.ico ([#1286](https://github.com/h5bp/html5-boilerplate/pull/1286)). -* Remove named function expression in plugins.js ([#1280](https://github.com/h5bp/html5-boilerplate/pull/1280)). -* Adjust CSS image-replacement code ([#1239](https://github.com/h5bp/html5-boilerplate/issues/1239)). -* Update HiDPI example media query ([#1127](https://github.com/h5bp/html5-boilerplate/issues/1127)). +* Use 32x32 favicon.ico + ([#1286](https://github.com/h5bp/html5-boilerplate/pull/1286)). +* Remove named function expression in plugins.js + ([#1280](https://github.com/h5bp/html5-boilerplate/pull/1280)). +* Adjust CSS image-replacement code + ([#1239](https://github.com/h5bp/html5-boilerplate/issues/1239)). +* Update HiDPI example media query + ([#1127](https://github.com/h5bp/html5-boilerplate/issues/1127)). ### 4.0.2 (December 9, 2012) @@ -41,28 +105,43 @@ ### 4.0.1 (October 20, 2012) -* Further improvements to `console` method stubbing ([#1206](https://github.com/h5bp/html5-boilerplate/issues/1206), [#1229](https://github.com/h5bp/html5-boilerplate/pull/1229)). +* Further improvements to `console` method stubbing + ([#1206](https://github.com/h5bp/html5-boilerplate/issues/1206), + [#1229](https://github.com/h5bp/html5-boilerplate/pull/1229)). * Update to jQuery 1.8.2. * Update to Modernizr 2.6.2. * Minor additions to the documentation. ### 4.0.0 (August 28, 2012) -* Improve the Apache compression configuration ([#1012](https://github.com/h5bp/html5-boilerplate/issues/1012), [#1173](https://github.com/h5bp/html5-boilerplate/issues/1173)). -* Add a HiDPI example media query ([#1127](https://github.com/h5bp/html5-boilerplate/issues/1127)). -* Add bundled docs ([#1154](https://github.com/h5bp/html5-boilerplate/issues/1154)). -* Add MIT license ([#1139](https://github.com/h5bp/html5-boilerplate/issues/1139)). +* Improve the Apache compression configuration + ([#1012](https://github.com/h5bp/html5-boilerplate/issues/1012), + [#1173](https://github.com/h5bp/html5-boilerplate/issues/1173)). +* Add a HiDPI example media query + ([#1127](https://github.com/h5bp/html5-boilerplate/issues/1127)). +* Add bundled docs + ([#1154](https://github.com/h5bp/html5-boilerplate/issues/1154)). +* Add MIT license + ([#1139](https://github.com/h5bp/html5-boilerplate/issues/1139)). * Update to Normalize.css 1.0.1. -* Separate Normalize.css from the rest of the CSS ([#1160](https://github.com/h5bp/html5-boilerplate/issues/1160)). -* Improve `console.log` protection ([#1107](https://github.com/h5bp/html5-boilerplate/issues/1107)). +* Separate Normalize.css from the rest of the CSS + ([#1160](https://github.com/h5bp/html5-boilerplate/issues/1160)). +* Improve `console.log` protection + ([#1107](https://github.com/h5bp/html5-boilerplate/issues/1107)). * Replace hot pink text selection color with a neutral color. -* Change image replacement technique ([#1149](https://github.com/h5bp/html5-boilerplate/issues/1149)). -* Code format and consistency changes ([#1112](https://github.com/h5bp/html5-boilerplate/issues/1112)). +* Change image replacement technique + ([#1149](https://github.com/h5bp/html5-boilerplate/issues/1149)). +* Code format and consistency changes + ([#1112](https://github.com/h5bp/html5-boilerplate/issues/1112)). * Rename CSS file and rename JS files and subdirectories. -* Update to jQuery 1.8 ([#1161](https://github.com/h5bp/html5-boilerplate/issues/1161)). -* Update to Modernizr 2.6.1 ([#1086](https://github.com/h5bp/html5-boilerplate/issues/1086)). -* Remove uncompressed jQuery ([#1153](https://github.com/h5bp/html5-boilerplate/issues/1153)). -* Remove superfluous inline comments ([#1150](https://github.com/h5bp/html5-boilerplate/issues/1150)). +* Update to jQuery 1.8 + ([#1161](https://github.com/h5bp/html5-boilerplate/issues/1161)). +* Update to Modernizr 2.6.1 + ([#1086](https://github.com/h5bp/html5-boilerplate/issues/1086)). +* Remove uncompressed jQuery + ([#1153](https://github.com/h5bp/html5-boilerplate/issues/1153)). +* Remove superfluous inline comments + ([#1150](https://github.com/h5bp/html5-boilerplate/issues/1150)). ### 3.0.2 (February 19, 2012) @@ -77,42 +156,60 @@ * Improvements to `.htaccess`. * Improve 404 design. * Simplify JS folder structure. -* Change `html` IE class names changed to target ranges rather than specific versions of IE. -* Update CSS to include latest normalize.css changes and better typographic defaults ([#825](https://github.com/h5bp/html5-boilerplate/issues/825)). +* Change `html` IE class names changed to target ranges rather than + specific versions of IE. +* Update CSS to include latest normalize.css changes and better + typographic defaults + ([#825](https://github.com/h5bp/html5-boilerplate/issues/825)). * Update to Modernizr 2.5 (includes yepnope 1.5 and html5shiv 3.2). * Update to jQuery 1.7.1. * Revert to async snippet for the Google Analytics script. -* Remove the ant build script ([#826](https://github.com/h5bp/html5-boilerplate/issues/826)). -* Remove Respond.js ([#816](https://github.com/h5bp/html5-boilerplate/issues/816)). -* Remove the `demo/` directory ([#808](https://github.com/h5bp/html5-boilerplate/issues/808)). -* Remove the `test/` directory ([#808](https://github.com/h5bp/html5-boilerplate/issues/808)). -* Remove Google Chrome Frame script for IE6 users; replace with links to Chrome Frame and options for alternative browsers. -* Remove `initial-scale=1` from the viewport `meta` ([#824](https://github.com/h5bp/html5-boilerplate/issues/824)). +* Remove the ant build script + ([#826](https://github.com/h5bp/html5-boilerplate/issues/826)). +* Remove Respond.js + ([#816](https://github.com/h5bp/html5-boilerplate/issues/816)). +* Remove the `demo/` directory + ([#808](https://github.com/h5bp/html5-boilerplate/issues/808)). +* Remove the `test/` directory + ([#808](https://github.com/h5bp/html5-boilerplate/issues/808)). +* Remove Google Chrome Frame script for IE6 users; replace with links + to Chrome Frame and options for alternative browsers. +* Remove `initial-scale=1` from the viewport `meta` + ([#824](https://github.com/h5bp/html5-boilerplate/issues/824)). * Remove `defer` from all scripts to avoid legacy IE bugs. -* Remove explicit Site Speed tracking for Google Analytics. It's now enabled by default. +* Remove explicit Site Speed tracking for Google Analytics. It's now + enabled by default. ### 2.0.0 (August 10, 2011) -* Change starting CSS to be based on normalize.css instead of reset.css ([#500](https://github.com/h5bp/html5-boilerplate/issues/500)). +* Change starting CSS to be based on normalize.css instead of reset.css + ([#500](https://github.com/h5bp/html5-boilerplate/issues/500)). * Add Respond.js media query polyfill. * Add Google Chrome Frame script prompt for IE6 users. -* Simplify the `html` conditional comments for modern browsers and add an `oldie` class. +* Simplify the `html` conditional comments for modern browsers and add + an `oldie` class. * Update clearfix to use "micro clearfix". * Add placeholder CSS MQs for mobile-first approach. * Add `textarea { resize: vertical; }` to only allow vertical resizing. -* Add `img { max-width: 100%; }` to the print styles; prevents images being truncated. +* Add `img { max-width: 100%; }` to the print styles; prevents images + being truncated. * Add Site Speed tracking for Google Analytics. * Update to jQuery 1.6.2 (and use minified by default). -* Update to Modernizr 2.0 Complete, Production minified (includes yepnope, html5shiv, and Respond.js). +* Update to Modernizr 2.0 Complete, Production minified (includes + yepnope, html5shiv, and Respond.js). * Use `Modernizr.load()` to load the Google Analytics script. * Much faster build process. * Add build script options for CSSLint, JSLint, JSHint tools. * Build script now compresses all images in subfolders. * Build script now versions files by SHA hash. -* Many `.htaccess` improvements including: disable directory browsing, improved support for all versions of Apache, more robust and extensive HTTP compression rules. +* Many `.htaccess` improvements including: disable directory browsing, + improved support for all versions of Apache, more robust and extensive + HTTP compression rules. * Remove `handheld.css` as it has very poor device support. -* Remove touch-icon `link` elements from the HTML and include improved touch-icon support. -* Remove the cache-busting query paramaters from files references in the HTML. +* Remove touch-icon `link` elements from the HTML and include improved + touch-icon support. +* Remove the cache-busting query paramaters from files references in + the HTML. * Remove IE6 PNGFix. ### 1.0.0 (March 21, 2011) @@ -120,8 +217,10 @@ * Rewrite build script to make it more customizable and flexible. * Add a humans.txt. * Numerous `.htaccess` improvements (including inline documentation). -* Move the alternative server configurations to the H5BP server configs repo. -* Use a protocol-relative url to reference jQuery and prevent mixed content warnings. +* Move the alternative server configurations to the H5BP server configs + repo. +* Use a protocol-relative url to reference jQuery and prevent mixed + content warnings. * Optimize the Google Analytics snippet. * Use Eric Meyer's recent CSS reset update and the HTML5 Doctor reset. * More robust `sub`/`sup` CSS styles. diff --git a/public/app/bower_components/html5-boilerplate/CONTRIBUTING.md b/public/app/bower_components/html5-boilerplate/CONTRIBUTING.md index 89c63e1d..e8335c00 100644 --- a/public/app/bower_components/html5-boilerplate/CONTRIBUTING.md +++ b/public/app/bower_components/html5-boilerplate/CONTRIBUTING.md @@ -20,8 +20,7 @@ and [submitting pull requests](#pull-requests), but please respect the following restrictions: * Please **do not** use the issue tracker for personal support requests (use - [Stack Overflow](http://stackoverflow.com/questions/tagged/html5boilerplate) - or IRC). + [Stack Overflow](https://stackoverflow.com/questions/tagged/html5boilerplate)). * Please **do not** derail or troll issues. Keep the discussion on topic and respect the opinions of others. @@ -100,11 +99,11 @@ project's developers might not want to merge into the project. Please adhere to the coding conventions used throughout a project (indentation, accurate comments, etc.) and any other requirements (such as test coverage). -Adhering to the following this process is the best way to get your work +Adhering to the following process is the best way to get your work included in the project: -1. [Fork](http://help.github.com/fork-a-repo/) the project, clone your fork, - and configure the remotes: +1. [Fork](https://help.github.com/articles/fork-a-repo) the project, clone your + fork, and configure the remotes: ```bash # Clone your fork of the repo into the current directory @@ -132,7 +131,7 @@ included in the project: 4. Commit your changes in logical chunks. Please adhere to these [git commit message guidelines](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html) or your code is unlikely be merged into the main project. Use Git's - [interactive rebase](https://help.github.com/articles/interactive-rebase) + [interactive rebase](https://help.github.com/articles/about-git-rebase) feature to tidy up your commits before making them public. 5. Locally merge (or rebase) the upstream development branch into your topic branch: @@ -151,4 +150,4 @@ included in the project: with a clear title and description. **IMPORTANT**: By submitting a patch, you agree to allow the project owners to -license your work under the the terms of the [MIT License](LICENSE.md). +license your work under the terms of the [MIT License](LICENSE.md). diff --git a/public/app/bower_components/html5-boilerplate/README.md b/public/app/bower_components/html5-boilerplate/README.md index 55830a77..e05ab7ea 100644 --- a/public/app/bower_components/html5-boilerplate/README.md +++ b/public/app/bower_components/html5-boilerplate/README.md @@ -1,5 +1,8 @@ # [HTML5 Boilerplate](http://html5boilerplate.com) +[![Build Status](https://travis-ci.org/h5bp/html5-boilerplate.svg)](https://travis-ci.org/h5bp/html5-boilerplate) +[![devDependency Status](https://david-dm.org/h5bp/html5-boilerplate/dev-status.svg)](https://david-dm.org/h5bp/html5-boilerplate#info=devDependencies) + HTML5 Boilerplate is a professional front-end template for building fast, robust, and adaptable web apps or sites. @@ -9,7 +12,7 @@ framework, so you're free to architect your code in the way that you want. * Source: [https://github.com/h5bp/html5-boilerplate](https://github.com/h5bp/html5-boilerplate) * Homepage: [http://html5boilerplate.com](http://html5boilerplate.com) -* Twitter: [@h5bp](http://twitter.com/h5bp) +* Twitter: [@h5bp](https://twitter.com/h5bp) ## Quick start @@ -20,36 +23,38 @@ Choose one of the following options: [html5boilerplate.com](http://html5boilerplate.com/) or a custom build from [Initializr](http://www.initializr.com). 2. Clone the git repo — `git clone - https://github.com/h5bp/html5-boilerplate.git` - and checkout the tagged - release you'd like to use. + https://github.com/h5bp/html5-boilerplate.git` - and checkout the [tagged + release](https://github.com/h5bp/html5-boilerplate/releases) you'd like to + use. ## Features * HTML5 ready. Use the new elements with confidence. -* Cross-browser compatible (Chrome, Opera, Safari, Firefox 3.6+, IE6+). +* Cross-browser compatible (Chrome, Firefox, IE8+, Opera, Safari). * Designed with progressive enhancement in mind. * Includes [Normalize.css](http://necolas.github.com/normalize.css/) for CSS normalizations and common bug fixes. -* The latest [jQuery](http://jquery.com/) via CDN, with a local fallback. +* The latest [jQuery](https://jquery.com/) via CDN, with a local fallback. * The latest [Modernizr](http://modernizr.com/) build for feature detection. -* IE-specific classes for easier cross-browser control. * Placeholder CSS Media Queries. * Useful CSS helpers. * Default print CSS, performance optimized. -* Protection against any stray `console.log` causing JavaScript errors in - IE6/7. +* Protection against any stray `console` statements causing JavaScript errors + in older browsers. * An optimized Google Analytics snippet. * Apache server caching, compression, and other configuration defaults for Grade-A performance. -* Cross-domain Ajax and Flash. * "Delete-key friendly." Easy to strip out parts you don't need. * Extensive inline and accompanying documentation. +[HTML5 Boilerplate v4 provides legacy browser +support](https://github.com/h5bp/html5-boilerplate/tree/v4) (IE 6+, Firefox +3.6+, Safari 4+), but is no longer actively developed. ## Documentation -Take a look at the [documentation table of contents](doc/TOC.md). This +Take a look at the [documentation table of contents](dist/doc/TOC.md). This documentation is bundled with the project, which makes it readily available for offline reading and provides a useful starting point for any documentation you want to write about your project. diff --git a/public/app/bower_components/html5-boilerplate/apple-touch-icon-precomposed.png b/public/app/bower_components/html5-boilerplate/apple-touch-icon-precomposed.png deleted file mode 100644 index 1ea85edc6fd9d63f688509c47959a98e10a1c0d0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1226 zcmV;*1U37KP)0{{R3FC5Sl0000mP)t-s>x(1c zh9kRjBbi_#Y)B%5bVf#Ja6DFAFiBA1T=)mCp000D4 zNkl$qo(5J!YTix#(2} zlF4%|{W<2$_>;kO9d)5q8N6I-(yp>gF2OOW ziLG&5f^)FY;2>2QE+6)9sxoj*@~R9xlUil_rYSTq8H;7|bUB!>z?PVX5`&#In6JQU z!dQYG3?&|)|2+WX^mliXNGscx%kc0^jkuc%;gHt$?VbF^uQJ_ChFGPQy!~V^qhNA` zThW##KcCA+Q!u|yzeW?yE?8;HO=L)_vCnRU`E`0V_89|fQWN-7|JIoQ%~b}#w9;_5 zMos=^iOUhe)z~bJ`*)`c(Mr2lV>avJew|27TCqRZI2gIo7BMvz??Ex)R*n7>tiRH{ z8WrqTofy;T0MomN|0rQ=^nWt(yauKlimNe~#sJewV`<6u~%tgA<(1FU{G`scfkq0s?GTL7))^&PvsXkh6p zu+!z4m;JdoDkB^&6-~L=U~(XQlX$vRG}TB2bC?V`q^#bTV%%j?U23+wz~uOPhxabs zVEohKA-nC82Nu8O!qU0SH-S~hv0B>ZbctI`YHH`Q_`!T-fzONFD6$4&7Dqs#$LVOR(=jQWMB7;Ww%GpglL~?oej=zl07Zhw-`OJl7XXXY5?Q3K7gM z3&ca8E_b~{krp}pr+uV9U!Zeos*|zE;jMjypUI%R;Aq zE+1dIJ&PQ}CXwp+=Te>SMULUJu&2I!`jfni97DDLaq9p7(j9x31Td|Ad+N)`KQ0_D zF=Fz=)Q?Q4;qto5(W$p}8i%sW!{3@!5<`)ej75GC%;4JFcxvlkS6E +# Header set Access-Control-Allow-Origin "*" +# + +# ---------------------------------------------------------------------- +# | Cross-origin images | +# ---------------------------------------------------------------------- + +# Send the CORS header for images when browsers request it. +# +# https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_enabled_image +# https://blog.chromium.org/2011/07/using-cross-domain-images-in-webgl-and.html + + + + + SetEnvIf Origin ":" IS_CORS + Header set Access-Control-Allow-Origin "*" env=IS_CORS + + + + +# ---------------------------------------------------------------------- +# | Cross-origin web fonts | +# ---------------------------------------------------------------------- + +# Allow cross-origin access to web fonts. + + + + Header set Access-Control-Allow-Origin "*" + + + +# ---------------------------------------------------------------------- +# | Cross-origin resource timing | +# ---------------------------------------------------------------------- + +# Allow cross-origin access to the timing information for all resources. +# +# If a resource isn't served with a `Timing-Allow-Origin` header that +# would allow its timing information to be shared with the document, +# some of the attributes of the `PerformanceResourceTiming` object will +# be set to zero. +# +# http://www.w3.org/TR/resource-timing/ +# http://www.stevesouders.com/blog/2014/08/21/resource-timing-practical-tips/ + +# +# Header set Timing-Allow-Origin: "*" +# + + +# ###################################################################### +# # ERRORS # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Custom error messages/pages | +# ---------------------------------------------------------------------- + +# Customize what Apache returns to the client in case of an error. +# https://httpd.apache.org/docs/current/mod/core.html#errordocument + +ErrorDocument 404 /404.html + +# ---------------------------------------------------------------------- +# | Error prevention | +# ---------------------------------------------------------------------- + +# Disable the pattern matching based on filenames. +# +# This setting prevents Apache from returning a 404 error as the result +# of a rewrite when the directory with the same name does not exist. +# +# https://httpd.apache.org/docs/current/content-negotiation.html#multiviews + +Options -MultiViews + + +# ###################################################################### +# # INTERNET EXPLORER # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Document modes | +# ---------------------------------------------------------------------- + +# Force Internet Explorer 8/9/10 to render pages in the highest mode +# available in the various cases when it may not. +# +# https://hsivonen.fi/doctype/#ie8 +# +# (!) Starting with Internet Explorer 11, document modes are deprecated. +# If your business still relies on older web apps and services that were +# designed for older versions of Internet Explorer, you might want to +# consider enabling `Enterprise Mode` throughout your company. +# +# http://msdn.microsoft.com/en-us/library/ie/bg182625.aspx#docmode +# http://blogs.msdn.com/b/ie/archive/2014/04/02/stay-up-to-date-with-enterprise-mode-for-internet-explorer-11.aspx + + + Header set X-UA-Compatible "IE=edge" + # `mod_headers` cannot match based on the content-type, however, + # the `X-UA-Compatible` response header should be send only for + # HTML documents and not for the other resources. + + Header unset X-UA-Compatible + + + +# ---------------------------------------------------------------------- +# | Iframes cookies | +# ---------------------------------------------------------------------- + +# Allow cookies to be set from iframes in Internet Explorer. +# +# http://msdn.microsoft.com/en-us/library/ms537343.aspx +# http://www.w3.org/TR/2000/CR-P3P-20001215/ + +# +# Header set P3P "policyref=\"/w3c/p3p.xml\", CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"" +# + + +# ###################################################################### +# # MEDIA TYPES AND CHARACTER ENCODINGS # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Media types | +# ---------------------------------------------------------------------- + +# Serve resources with the proper media types (f.k.a. MIME types). +# +# https://www.iana.org/assignments/media-types/media-types.xhtml +# https://httpd.apache.org/docs/current/mod/mod_mime.html#addtype + + + + # Data interchange + + AddType application/json json map topojson + AddType application/ld+json jsonld + AddType application/vnd.geo+json geojson + AddType application/xml atom rdf rss xml + + + # JavaScript + + # Normalize to standard type. + # https://tools.ietf.org/html/rfc4329#section-7.2 + + AddType application/javascript js + + + # Manifest files + + # If you are providing a web application manifest file (see + # the specification: https://w3c.github.io/manifest/), it is + # recommended that you serve it with the `application/manifest+json` + # media type. + # + # Because the web application manifest file doesn't have its + # own unique file extension, you can set its media type either + # by matching: + # + # 1) the exact location of the file (this can be done using a + # directive such as ``, but it will NOT work in + # the `.htaccess` file, so you will have to do it in the main + # server configuration file or inside of a `` + # container) + # + # e.g.: + # + # + # AddType application/manifest+json json + # + # + # 2) the filename (this can be problematic as you will need to + # ensure that you don't have any other file with the same name + # as the one you gave to your web application manifest file) + # + # e.g.: + # + # + # AddType application/manifest+json json + # + + AddType application/x-web-app-manifest+json webapp + AddType text/cache-manifest appcache manifest + + + # Media files + + AddType audio/mp4 f4a f4b m4a + AddType audio/ogg oga ogg opus + AddType image/bmp bmp + AddType image/webp webp + AddType video/mp4 f4v f4p m4v mp4 + AddType video/ogg ogv + AddType video/webm webm + AddType video/x-flv flv + AddType image/svg+xml svg svgz + + # Serving `.ico` image files with a different media type + # prevents Internet Explorer from displaying then as images: + # https://github.com/h5bp/html5-boilerplate/commit/37b5fec090d00f38de64b591bcddcb205aadf8ee + + AddType image/x-icon cur ico + + + # Web fonts + + AddType application/font-woff woff + AddType application/font-woff2 woff2 + AddType application/vnd.ms-fontobject eot + + # Browsers usually ignore the font media types and simply sniff + # the bytes to figure out the font type. + # https://mimesniff.spec.whatwg.org/#matching-a-font-type-pattern + # + # However, Blink and WebKit based browsers will show a warning + # in the console if the following font types are served with any + # other media types. + + AddType application/x-font-ttf ttc ttf + AddType font/opentype otf + + + # Other + + AddType application/octet-stream safariextz + AddType application/x-bb-appworld bbaw + AddType application/x-chrome-extension crx + AddType application/x-opera-extension oex + AddType application/x-xpinstall xpi + AddType text/vcard vcard vcf + AddType text/vnd.rim.location.xloc xloc + AddType text/vtt vtt + AddType text/x-component htc + + + +# ---------------------------------------------------------------------- +# | Character encodings | +# ---------------------------------------------------------------------- + +# Serve all resources labeled as `text/html` or `text/plain` +# with the media type `charset` parameter set to `UTF-8`. +# +# https://httpd.apache.org/docs/current/mod/core.html#adddefaultcharset + +AddDefaultCharset utf-8 + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Serve the following file types with the media type `charset` +# parameter set to `UTF-8`. +# +# https://httpd.apache.org/docs/current/mod/mod_mime.html#addcharset + + + AddCharset utf-8 .atom \ + .bbaw \ + .css \ + .geojson \ + .js \ + .json \ + .jsonld \ + .rdf \ + .rss \ + .topojson \ + .vtt \ + .webapp \ + .xloc \ + .xml + + + +# ###################################################################### +# # REWRITES # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Rewrite engine | +# ---------------------------------------------------------------------- + +# (1) Turn on the rewrite engine (this is necessary in order for +# the `RewriteRule` directives to work). +# +# https://httpd.apache.org/docs/current/mod/mod_rewrite.html#RewriteEngine +# +# (2) Enable the `FollowSymLinks` option if it isn't already. +# +# https://httpd.apache.org/docs/current/mod/core.html#options +# +# (3) If your web host doesn't allow the `FollowSymlinks` option, +# you need to comment it out or remove it, and then uncomment +# the `Options +SymLinksIfOwnerMatch` line (4), but be aware +# of the performance impact. +# +# https://httpd.apache.org/docs/current/misc/perf-tuning.html#symlinks +# +# (4) Some cloud hosting services will require you set `RewriteBase`. +# +# http://www.rackspace.com/knowledge_center/frequently-asked-question/why-is-modrewrite-not-working-on-my-site +# https://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritebase +# +# (5) Depending on how your server is set up, you may also need to +# use the `RewriteOptions` directive to enable some options for +# the rewrite engine. +# +# https://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriteoptions + + + + # (1) + RewriteEngine On + + # (2) + Options +FollowSymlinks + + # (3) + # Options +SymLinksIfOwnerMatch + + # (4) + # RewriteBase / + + # (5) + # RewriteOptions + + + +# ---------------------------------------------------------------------- +# | Forcing `https://` | +# ---------------------------------------------------------------------- + +# Redirect from the `http://` to the `https://` version of the URL. +# https://wiki.apache.org/httpd/RewriteHTTPToHTTPS + +# +# RewriteEngine On +# RewriteCond %{HTTPS} !=on +# RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] +# + +# ---------------------------------------------------------------------- +# | Suppressing / Forcing the `www.` at the beginning of URLs | +# ---------------------------------------------------------------------- + +# The same content should never be available under two different +# URLs, especially not with and without `www.` at the beginning. +# This can cause SEO problems (duplicate content), and therefore, +# you should choose one of the alternatives and redirect the other +# one. +# +# By default `Option 1` (no `www.`) is activated. +# http://no-www.org/faq.php?q=class_b +# +# If you would prefer to use `Option 2`, just comment out all the +# lines from `Option 1` and uncomment the ones from `Option 2`. +# +# (!) NEVER USE BOTH RULES AT THE SAME TIME! + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Option 1: rewrite www.example.com → example.com + + + RewriteEngine On + RewriteCond %{HTTPS} !=on + RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] + RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L] + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Option 2: rewrite example.com → www.example.com +# +# Be aware that the following might not be a good idea if you use "real" +# subdomains for certain parts of your website. + +# +# RewriteEngine On +# RewriteCond %{HTTPS} !=on +# RewriteCond %{HTTP_HOST} !^www\. [NC] +# RewriteCond %{SERVER_ADDR} !=127.0.0.1 +# RewriteCond %{SERVER_ADDR} !=::1 +# RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] +# + + +# ###################################################################### +# # SECURITY # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Clickjacking | +# ---------------------------------------------------------------------- + +# Protect website against clickjacking. +# +# The example below sends the `X-Frame-Options` response header with +# the value `DENY`, informing browsers not to display the content of +# the web page in any frame. +# +# This might not be the best setting for everyone. You should read +# about the other two possible values the `X-Frame-Options` header +# field can have: `SAMEORIGIN` and `ALLOW-FROM`. +# https://tools.ietf.org/html/rfc7034#section-2.1. +# +# Keep in mind that while you could send the `X-Frame-Options` header +# for all of your website’s pages, this has the potential downside that +# it forbids even non-malicious framing of your content (e.g.: when +# users visit your website using a Google Image Search results page). +# +# Nonetheless, you should ensure that you send the `X-Frame-Options` +# header for all pages that allow a user to make a state changing +# operation (e.g: pages that contain one-click purchase links, checkout +# or bank-transfer confirmation pages, pages that make permanent +# configuration changes, etc.). +# +# Sending the `X-Frame-Options` header can also protect your website +# against more than just clickjacking attacks: +# https://cure53.de/xfo-clickjacking.pdf. +# +# https://tools.ietf.org/html/rfc7034 +# http://blogs.msdn.com/b/ieinternals/archive/2010/03/30/combating-clickjacking-with-x-frame-options.aspx +# https://www.owasp.org/index.php/Clickjacking + +# +# Header set X-Frame-Options "DENY" +# # `mod_headers` cannot match based on the content-type, however, +# # the `X-Frame-Options` response header should be send only for +# # HTML documents and not for the other resources. +# +# Header unset X-Frame-Options +# +# + +# ---------------------------------------------------------------------- +# | Content Security Policy (CSP) | +# ---------------------------------------------------------------------- + +# Mitigate the risk of cross-site scripting and other content-injection +# attacks. +# +# This can be done by setting a `Content Security Policy` which +# whitelists trusted sources of content for your website. +# +# The example header below allows ONLY scripts that are loaded from the +# current website's origin (no inline scripts, no CDN, etc). That almost +# certainly won't work as-is for your website! +# +# For more details on how to craft a reasonable policy for your website, +# read: http://www.html5rocks.com/en/tutorials/security/content-security-policy/ +# (or the specification: http://www.w3.org/TR/CSP11/). Also, to make +# things easier, you can use an online CSP header generator such as: +# http://cspisawesome.com/. + +# +# Header set Content-Security-Policy "script-src 'self'; object-src 'self'" +# # `mod_headers` cannot match based on the content-type, however, +# # the `Content-Security-Policy` response header should be send +# # only for HTML documents and not for the other resources. +# +# Header unset Content-Security-Policy +# +# + +# ---------------------------------------------------------------------- +# | File access | +# ---------------------------------------------------------------------- + +# Block access to directories without a default document. +# +# You should leave the following uncommented, as you shouldn't allow +# anyone to surf through every directory on your server (which may +# includes rather private places such as the CMS's directories). + + + Options -Indexes + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Block access to all hidden files and directories with the exception of +# the visible content from within the `/.well-known/` hidden directory. +# +# These types of files usually contain user preferences or the preserved +# state of an utility, and can include rather private places like, for +# example, the `.git` or `.svn` directories. +# +# The `/.well-known/` directory represents the standard (RFC 5785) path +# prefix for "well-known locations" (e.g.: `/.well-known/manifest.json`, +# `/.well-known/keybase.txt`), and therefore, access to its visible +# content should not be blocked. +# +# https://www.mnot.net/blog/2010/04/07/well-known +# https://tools.ietf.org/html/rfc5785 + + + RewriteEngine On + RewriteCond %{REQUEST_URI} "!(^|/)\.well-known/([^./]+./?)+$" [NC] + RewriteCond %{SCRIPT_FILENAME} -d [OR] + RewriteCond %{SCRIPT_FILENAME} -f + RewriteRule "(^|/)\." - [F] + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Block access to files that can expose sensitive information. +# +# By default, block access to backup and source files that may be +# left by some text editors and can pose a security risk when anyone +# has access to them. +# +# http://feross.org/cmsploit/ +# +# (!) Update the `` regular expression from below to +# include any files that might end up on your production server and +# can expose sensitive information about your website. These files may +# include: configuration files, files that contain metadata about the +# project (e.g.: project dependencies), build scripts, etc.. + + + + # Apache < 2.3 + + Order allow,deny + Deny from all + Satisfy All + + + # Apache ≥ 2.3 + + Require all denied + + + + +# ---------------------------------------------------------------------- +# | HTTP Strict Transport Security (HSTS) | +# ---------------------------------------------------------------------- + +# Force client-side SSL redirection. +# +# If a user types `example.com` in their browser, even if the server +# redirects them to the secure version of the website, that still leaves +# a window of opportunity (the initial HTTP connection) for an attacker +# to downgrade or redirect the request. +# +# The following header ensures that browser will ONLY connect to your +# server via HTTPS, regardless of what the users type in the browser's +# address bar. +# +# (!) Remove the `includeSubDomains` optional directive if the website's +# subdomains are not using HTTPS. +# +# http://www.html5rocks.com/en/tutorials/security/transport-layer-security/ +# https://tools.ietf.org/html/draft-ietf-websec-strict-transport-sec-14#section-6.1 +# http://blogs.msdn.com/b/ieinternals/archive/2014/08/18/hsts-strict-transport-security-attacks-mitigations-deployment-https.aspx + +# +# Header set Strict-Transport-Security "max-age=16070400; includeSubDomains" +# + +# ---------------------------------------------------------------------- +# | Reducing MIME type security risks | +# ---------------------------------------------------------------------- + +# Prevent some browsers from MIME-sniffing the response. +# +# This reduces exposure to drive-by download attacks and cross-origin +# data leaks, and should be left uncommented, especially if the server +# is serving user-uploaded content or content that could potentially be +# treated as executable by the browser. +# +# http://www.slideshare.net/hasegawayosuke/owasp-hasegawa +# http://blogs.msdn.com/b/ie/archive/2008/07/02/ie8-security-part-v-comprehensive-protection.aspx +# http://msdn.microsoft.com/en-us/library/ie/gg622941.aspx +# https://mimesniff.spec.whatwg.org/ + + + Header set X-Content-Type-Options "nosniff" + + +# ---------------------------------------------------------------------- +# | Reflected Cross-Site Scripting (XSS) attacks | +# ---------------------------------------------------------------------- + +# (1) Try to re-enable the cross-site scripting (XSS) filter built +# into most web browsers. +# +# The filter is usually enabled by default, but in some cases it +# may be disabled by the user. However, in Internet Explorer for +# example, it can be re-enabled just by sending the +# `X-XSS-Protection` header with the value of `1`. +# +# (2) Prevent web browsers from rendering the web page if a potential +# reflected (a.k.a non-persistent) XSS attack is detected by the +# filter. +# +# By default, if the filter is enabled and browsers detect a +# reflected XSS attack, they will attempt to block the attack +# by making the smallest possible modifications to the returned +# web page. +# +# Unfortunately, in some browsers (e.g.: Internet Explorer), +# this default behavior may allow the XSS filter to be exploited, +# thereby, it's better to inform browsers to prevent the rendering +# of the page altogether, instead of attempting to modify it. +# +# http://hackademix.net/2009/11/21/ies-xss-filter-creates-xss-vulnerabilities +# +# (!) Do not rely on the XSS filter to prevent XSS attacks! Ensure that +# you are taking all possible measures to prevent XSS attacks, the +# most obvious being: validating and sanitizing your website's inputs. +# +# http://blogs.msdn.com/b/ie/archive/2008/07/02/ie8-security-part-iv-the-xss-filter.aspx +# http://blogs.msdn.com/b/ieinternals/archive/2011/01/31/controlling-the-internet-explorer-xss-filter-with-the-x-xss-protection-http-header.aspx +# https://www.owasp.org/index.php/Cross-site_Scripting_%28XSS%29 + +# +# # (1) (2) +# Header set X-XSS-Protection "1; mode=block" +# # `mod_headers` cannot match based on the content-type, however, +# # the `X-XSS-Protection` response header should be send only for +# # HTML documents and not for the other resources. +# +# Header unset X-XSS-Protection +# +# + +# ---------------------------------------------------------------------- +# | Server software information | +# ---------------------------------------------------------------------- + +# Prevent Apache from sending in the `Server` response header its +# exact version number, the description of the generic OS-type or +# information about its compiled-in modules. +# +# (!) The `ServerTokens` directive will only work in the main server +# configuration file, so don't try to enable it in the `.htaccess` file! +# +# https://httpd.apache.org/docs/current/mod/core.html#servertokens + +# ServerTokens Prod + + +# ###################################################################### +# # WEB PERFORMANCE # +# ###################################################################### + +# ---------------------------------------------------------------------- +# | Compression | +# ---------------------------------------------------------------------- + + + + # Force compression for mangled `Accept-Encoding` request headers + # https://developer.yahoo.com/blogs/ydn/pushing-beyond-gzipping-25601.html + + + + SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding + RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding + + + + # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + # Compress all output labeled with one of the following media types. + # + # (!) For Apache versions below version 2.3.7 you don't need to + # enable `mod_filter` and can remove the `` + # and `` lines as `AddOutputFilterByType` is still in + # the core directives. + # + # https://httpd.apache.org/docs/current/mod/mod_filter.html#addoutputfilterbytype + + + AddOutputFilterByType DEFLATE "application/atom+xml" \ + "application/javascript" \ + "application/json" \ + "application/ld+json" \ + "application/manifest+json" \ + "application/rdf+xml" \ + "application/rss+xml" \ + "application/schema+json" \ + "application/vnd.geo+json" \ + "application/vnd.ms-fontobject" \ + "application/x-font-ttf" \ + "application/x-javascript" \ + "application/x-web-app-manifest+json" \ + "application/xhtml+xml" \ + "application/xml" \ + "font/eot" \ + "font/opentype" \ + "image/bmp" \ + "image/svg+xml" \ + "image/vnd.microsoft.icon" \ + "image/x-icon" \ + "text/cache-manifest" \ + "text/css" \ + "text/html" \ + "text/javascript" \ + "text/plain" \ + "text/vcard" \ + "text/vnd.rim.location.xloc" \ + "text/vtt" \ + "text/x-component" \ + "text/x-cross-domain-policy" \ + "text/xml" + + + + # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + # Map the following filename extensions to the specified + # encoding type in order to make Apache serve the file types + # with the appropriate `Content-Encoding` response header + # (do note that this will NOT make Apache compress them!). + # + # If these files types would be served without an appropriate + # `Content-Enable` response header, client applications (e.g.: + # browsers) wouldn't know that they first need to uncompress + # the response, and thus, wouldn't be able to understand the + # content. + # + # https://httpd.apache.org/docs/current/mod/mod_mime.html#addencoding + + + AddEncoding gzip svgz + + + + +# ---------------------------------------------------------------------- +# | Content transformation | +# ---------------------------------------------------------------------- + +# Prevent intermediate caches or proxies (e.g.: such as the ones +# used by mobile network providers) from modifying the website's +# content. +# +# https://tools.ietf.org/html/rfc2616#section-14.9.5 +# +# (!) If you are using `mod_pagespeed`, please note that setting +# the `Cache-Control: no-transform` response header will prevent +# `PageSpeed` from rewriting `HTML` files, and, if the +# `ModPagespeedDisableRewriteOnNoTransform` directive isn't set +# to `off`, also from rewriting other resources. +# +# https://developers.google.com/speed/pagespeed/module/configuration#notransform + +# +# Header merge Cache-Control "no-transform" +# + +# ---------------------------------------------------------------------- +# | ETags | +# ---------------------------------------------------------------------- + +# Remove `ETags` as resources are sent with far-future expires headers. +# +# https://developer.yahoo.com/performance/rules.html#etags +# https://tools.ietf.org/html/rfc7232#section-2.3 + +# `FileETag None` doesn't work in all cases. + + Header unset ETag + + +FileETag None + +# ---------------------------------------------------------------------- +# | Expires headers | +# ---------------------------------------------------------------------- + +# Serve resources with far-future expires headers. +# +# (!) If you don't control versioning with filename-based +# cache busting, you should consider lowering the cache times +# to something like one week. +# +# https://httpd.apache.org/docs/current/mod/mod_expires.html + + + + ExpiresActive on + ExpiresDefault "access plus 1 month" + + # CSS + ExpiresByType text/css "access plus 1 year" + + # Data interchange + ExpiresByType application/atom+xml "access plus 1 hour" + ExpiresByType application/rdf+xml "access plus 1 hour" + ExpiresByType application/rss+xml "access plus 1 hour" + + ExpiresByType application/json "access plus 0 seconds" + ExpiresByType application/ld+json "access plus 0 seconds" + ExpiresByType application/schema+json "access plus 0 seconds" + ExpiresByType application/vnd.geo+json "access plus 0 seconds" + ExpiresByType application/xml "access plus 0 seconds" + ExpiresByType text/xml "access plus 0 seconds" + + # Favicon (cannot be renamed!) and cursor images + ExpiresByType image/vnd.microsoft.icon "access plus 1 week" + ExpiresByType image/x-icon "access plus 1 week" + + # HTML + ExpiresByType text/html "access plus 0 seconds" + + # JavaScript + ExpiresByType application/javascript "access plus 1 year" + ExpiresByType application/x-javascript "access plus 1 year" + ExpiresByType text/javascript "access plus 1 year" + + # Manifest files + ExpiresByType application/manifest+json "access plus 1 year" + + ExpiresByType application/x-web-app-manifest+json "access plus 0 seconds" + ExpiresByType text/cache-manifest "access plus 0 seconds" + + # Media files + ExpiresByType audio/ogg "access plus 1 month" + ExpiresByType image/bmp "access plus 1 month" + ExpiresByType image/gif "access plus 1 month" + ExpiresByType image/jpeg "access plus 1 month" + ExpiresByType image/png "access plus 1 month" + ExpiresByType image/svg+xml "access plus 1 month" + ExpiresByType video/mp4 "access plus 1 month" + ExpiresByType video/ogg "access plus 1 month" + ExpiresByType video/webm "access plus 1 month" + + # Web fonts + + # Embedded OpenType (EOT) + ExpiresByType application/vnd.ms-fontobject "access plus 1 month" + ExpiresByType font/eot "access plus 1 month" + + # OpenType + ExpiresByType font/opentype "access plus 1 month" + + # TrueType + ExpiresByType application/x-font-ttf "access plus 1 month" + + # Web Open Font Format (WOFF) 1.0 + ExpiresByType application/font-woff "access plus 1 month" + ExpiresByType application/x-font-woff "access plus 1 month" + ExpiresByType font/woff "access plus 1 month" + + # Web Open Font Format (WOFF) 2.0 + ExpiresByType application/font-woff2 "access plus 1 month" + + # Other + ExpiresByType text/x-cross-domain-policy "access plus 1 week" + + + +# ---------------------------------------------------------------------- +# | File concatenation | +# ---------------------------------------------------------------------- + +# Allow concatenation from within specific files. +# +# e.g.: +# +# If you have the following lines in a file called, for +# example, `main.combined.js`: +# +# +# +# +# Apache will replace those lines with the content of the +# specified files. + +# +# +# Options +Includes +# AddOutputFilterByType INCLUDES application/javascript \ +# application/x-javascript \ +# text/javascript +# SetOutputFilter INCLUDES +# +# +# Options +Includes +# AddOutputFilterByType INCLUDES text/css +# SetOutputFilter INCLUDES +# +# + +# ---------------------------------------------------------------------- +# | Filename-based cache busting | +# ---------------------------------------------------------------------- + +# If you're not using a build process to manage your filename version +# revving, you might want to consider enabling the following directives +# to route all requests such as `/style.12345.css` to `/style.css`. +# +# To understand why this is important and even a better solution than +# using something like `*.css?v231`, please see: +# http://www.stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring/ + +# +# RewriteEngine On +# RewriteCond %{REQUEST_FILENAME} !-f +# RewriteRule ^(.+)\.(\d+)\.(bmp|css|cur|gif|ico|jpe?g|js|png|svgz?|webp)$ $1.$3 [L] +# diff --git a/public/app/bower_components/html5-boilerplate/dist/404.html b/public/app/bower_components/html5-boilerplate/dist/404.html new file mode 100644 index 00000000..8d7925a8 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/404.html @@ -0,0 +1,60 @@ + + + + + Page Not Found + + + + +

Page Not Found

+

Sorry, but the page you were trying to view does not exist.

+ + + diff --git a/public/app/bower_components/html5-boilerplate/dist/apple-touch-icon.png b/public/app/bower_components/html5-boilerplate/dist/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..600738f2cee82ca5dc8e92efdb4561fd59eaeb47 GIT binary patch literal 3959 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 literal 0 HcmV?d00001 diff --git a/public/app/bower_components/html5-boilerplate/dist/browserconfig.xml b/public/app/bower_components/html5-boilerplate/dist/browserconfig.xml new file mode 100644 index 00000000..46de5d3c --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/browserconfig.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/public/app/bower_components/html5-boilerplate/crossdomain.xml b/public/app/bower_components/html5-boilerplate/dist/crossdomain.xml similarity index 84% rename from public/app/bower_components/html5-boilerplate/crossdomain.xml rename to public/app/bower_components/html5-boilerplate/dist/crossdomain.xml index 29a035d7..818b8225 100644 --- a/public/app/bower_components/html5-boilerplate/crossdomain.xml +++ b/public/app/bower_components/html5-boilerplate/dist/crossdomain.xml @@ -1,7 +1,7 @@ - + diff --git a/public/app/bower_components/html5-boilerplate/dist/css/main.css b/public/app/bower_components/html5-boilerplate/dist/css/main.css new file mode 100644 index 00000000..a2451dd4 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/css/main.css @@ -0,0 +1,282 @@ +/*! HTML5 Boilerplate v5.0.0 | MIT License | http://h5bp.com/ */ + +/* + * What follows is the result of much research on cross-browser styling. + * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal, + * Kroc Camen, and the H5BP dev community and team. + */ + +/* ========================================================================== + Base styles: opinionated defaults + ========================================================================== */ + +html { + color: #222; + font-size: 1em; + line-height: 1.4; +} + +/* + * Remove text-shadow in selection highlight: + * https://twitter.com/miketaylr/status/12228805301 + * + * These selection rule sets have to be separate. + * Customize the background color to match your design. + */ + +::-moz-selection { + background: #b3d4fc; + text-shadow: none; +} + +::selection { + background: #b3d4fc; + text-shadow: none; +} + +/* + * A better looking default horizontal rule + */ + +hr { + display: block; + height: 1px; + border: 0; + border-top: 1px solid #ccc; + margin: 1em 0; + padding: 0; +} + +/* + * Remove the gap between audio, canvas, iframes, + * images, videos and the bottom of their containers: + * https://github.com/h5bp/html5-boilerplate/issues/440 + */ + +audio, +canvas, +iframe, +img, +svg, +video { + vertical-align: middle; +} + +/* + * Remove default fieldset styles. + */ + +fieldset { + border: 0; + margin: 0; + padding: 0; +} + +/* + * Allow only vertical resizing of textareas. + */ + +textarea { + resize: vertical; +} + +/* ========================================================================== + Browser Upgrade Prompt + ========================================================================== */ + +.browserupgrade { + margin: 0.2em 0; + background: #ccc; + color: #000; + padding: 0.2em 0; +} + +/* ========================================================================== + Author's custom styles + ========================================================================== */ + + + + + + + + + + + + + + + + + +/* ========================================================================== + Helper classes + ========================================================================== */ + +/* + * Hide visually and from screen readers: + * http://juicystudio.com/article/screen-readers-display-none.php + */ + +.hidden { + display: none !important; + visibility: hidden; +} + +/* + * Hide only visually, but have it available for screen readers: + * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility + */ + +.visuallyhidden { + border: 0; + clip: rect(0 0 0 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; +} + +/* + * Extends the .visuallyhidden class to allow the element + * to be focusable when navigated to via the keyboard: + * https://www.drupal.org/node/897638 + */ + +.visuallyhidden.focusable:active, +.visuallyhidden.focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; +} + +/* + * Hide visually and from screen readers, but maintain layout + */ + +.invisible { + visibility: hidden; +} + +/* + * Clearfix: contain floats + * + * For modern browsers + * 1. The space content is one way to avoid an Opera bug when the + * `contenteditable` attribute is included anywhere else in the document. + * Otherwise it causes space to appear at the top and bottom of elements + * that receive the `clearfix` class. + * 2. The use of `table` rather than `block` is only necessary if using + * `:before` to contain the top-margins of child elements. + */ + +.clearfix:before, +.clearfix:after { + content: " "; /* 1 */ + display: table; /* 2 */ +} + +.clearfix:after { + clear: both; +} + +/* ========================================================================== + EXAMPLE Media Queries for Responsive Design. + These examples override the primary ('mobile first') styles. + Modify as content requires. + ========================================================================== */ + +@media only screen and (min-width: 35em) { + /* Style adjustments for viewports that meet the condition */ +} + +@media print, + (-o-min-device-pixel-ratio: 5/4), + (-webkit-min-device-pixel-ratio: 1.25), + (min-resolution: 120dpi) { + /* Style adjustments for high resolution devices */ +} + +/* ========================================================================== + Print styles. + Inlined to avoid the additional HTTP request: + http://www.phpied.com/delay-loading-your-print-css/ + ========================================================================== */ + +@media print { + *, + *:before, + *:after { + background: transparent !important; + color: #000 !important; /* Black prints faster: + http://www.sanbeiji.com/archives/953 */ + box-shadow: none !important; + text-shadow: none !important; + } + + a, + a:visited { + text-decoration: underline; + } + + a[href]:after { + content: " (" attr(href) ")"; + } + + abbr[title]:after { + content: " (" attr(title) ")"; + } + + /* + * Don't show links that are fragment identifiers, + * or use the `javascript:` pseudo protocol + */ + + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; + } + + pre, + blockquote { + border: 1px solid #999; + page-break-inside: avoid; + } + + /* + * Printing Tables: + * http://css-discuss.incutio.com/wiki/Printing_Tables + */ + + thead { + display: table-header-group; + } + + tr, + img { + page-break-inside: avoid; + } + + img { + max-width: 100% !important; + } + + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + + h2, + h3 { + page-break-after: avoid; + } +} diff --git a/public/app/bower_components/html5-boilerplate/dist/css/normalize.css b/public/app/bower_components/html5-boilerplate/dist/css/normalize.css new file mode 100644 index 00000000..458eea1e --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/css/normalize.css @@ -0,0 +1,427 @@ +/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ + +/** + * 1. Set default font family to sans-serif. + * 2. Prevent iOS text size adjust after orientation change, without disabling + * user zoom. + */ + +html { + font-family: sans-serif; /* 1 */ + -ms-text-size-adjust: 100%; /* 2 */ + -webkit-text-size-adjust: 100%; /* 2 */ +} + +/** + * Remove default margin. + */ + +body { + margin: 0; +} + +/* HTML5 display definitions + ========================================================================== */ + +/** + * Correct `block` display not defined for any HTML5 element in IE 8/9. + * Correct `block` display not defined for `details` or `summary` in IE 10/11 + * and Firefox. + * Correct `block` display not defined for `main` in IE 11. + */ + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} + +/** + * 1. Correct `inline-block` display not defined in IE 8/9. + * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. + */ + +audio, +canvas, +progress, +video { + display: inline-block; /* 1 */ + vertical-align: baseline; /* 2 */ +} + +/** + * Prevent modern browsers from displaying `audio` without controls. + * Remove excess height in iOS 5 devices. + */ + +audio:not([controls]) { + display: none; + height: 0; +} + +/** + * Address `[hidden]` styling not present in IE 8/9/10. + * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. + */ + +[hidden], +template { + display: none; +} + +/* Links + ========================================================================== */ + +/** + * Remove the gray background color from active links in IE 10. + */ + +a { + background-color: transparent; +} + +/** + * Improve readability when focused and also mouse hovered in all browsers. + */ + +a:active, +a:hover { + outline: 0; +} + +/* Text-level semantics + ========================================================================== */ + +/** + * Address styling not present in IE 8/9/10/11, Safari, and Chrome. + */ + +abbr[title] { + border-bottom: 1px dotted; +} + +/** + * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. + */ + +b, +strong { + font-weight: bold; +} + +/** + * Address styling not present in Safari and Chrome. + */ + +dfn { + font-style: italic; +} + +/** + * Address variable `h1` font-size and margin within `section` and `article` + * contexts in Firefox 4+, Safari, and Chrome. + */ + +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +/** + * Address styling not present in IE 8/9. + */ + +mark { + background: #ff0; + color: #000; +} + +/** + * Address inconsistent and variable font size in all browsers. + */ + +small { + font-size: 80%; +} + +/** + * Prevent `sub` and `sup` affecting `line-height` in all browsers. + */ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +/* Embedded content + ========================================================================== */ + +/** + * Remove border when inside `a` element in IE 8/9/10. + */ + +img { + border: 0; +} + +/** + * Correct overflow not hidden in IE 9/10/11. + */ + +svg:not(:root) { + overflow: hidden; +} + +/* Grouping content + ========================================================================== */ + +/** + * Address margin not present in IE 8/9 and Safari. + */ + +figure { + margin: 1em 40px; +} + +/** + * Address differences between Firefox and other browsers. + */ + +hr { + -moz-box-sizing: content-box; + box-sizing: content-box; + height: 0; +} + +/** + * Contain overflow in all browsers. + */ + +pre { + overflow: auto; +} + +/** + * Address odd `em`-unit font size rendering in all browsers. + */ + +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} + +/* Forms + ========================================================================== */ + +/** + * Known limitation: by default, Chrome and Safari on OS X allow very limited + * styling of `select`, unless a `border` property is set. + */ + +/** + * 1. Correct color not being inherited. + * Known issue: affects color of disabled elements. + * 2. Correct font properties not being inherited. + * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. + */ + +button, +input, +optgroup, +select, +textarea { + color: inherit; /* 1 */ + font: inherit; /* 2 */ + margin: 0; /* 3 */ +} + +/** + * Address `overflow` set to `hidden` in IE 8/9/10/11. + */ + +button { + overflow: visible; +} + +/** + * Address inconsistent `text-transform` inheritance for `button` and `select`. + * All other form control elements do not inherit `text-transform` values. + * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. + * Correct `select` style inheritance in Firefox. + */ + +button, +select { + text-transform: none; +} + +/** + * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` + * and `video` controls. + * 2. Correct inability to style clickable `input` types in iOS. + * 3. Improve usability and consistency of cursor style between image-type + * `input` and others. + */ + +button, +html input[type="button"], /* 1 */ +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; /* 2 */ + cursor: pointer; /* 3 */ +} + +/** + * Re-set default cursor for disabled elements. + */ + +button[disabled], +html input[disabled] { + cursor: default; +} + +/** + * Remove inner padding and border in Firefox 4+. + */ + +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} + +/** + * Address Firefox 4+ setting `line-height` on `input` using `!important` in + * the UA stylesheet. + */ + +input { + line-height: normal; +} + +/** + * It's recommended that you don't attempt to style these elements. + * Firefox's implementation doesn't respect box-sizing, padding, or width. + * + * 1. Address box sizing set to `content-box` in IE 8/9/10. + * 2. Remove excess padding in IE 8/9/10. + */ + +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Fix the cursor style for Chrome's increment/decrement buttons. For certain + * `font-size` values of the `input`, it causes the cursor style of the + * decrement button to change from `default` to `text`. + */ + +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +/** + * 1. Address `appearance` set to `searchfield` in Safari and Chrome. + * 2. Address `box-sizing` set to `border-box` in Safari and Chrome + * (include `-moz` to future-proof). + */ + +input[type="search"] { + -webkit-appearance: textfield; /* 1 */ + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; /* 2 */ + box-sizing: content-box; +} + +/** + * Remove inner padding and search cancel button in Safari and Chrome on OS X. + * Safari (but not Chrome) clips the cancel button when the search input has + * padding (and `textfield` appearance). + */ + +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * Define consistent border, margin, and padding. + */ + +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} + +/** + * 1. Correct `color` not being inherited in IE 8/9/10/11. + * 2. Remove padding so people aren't caught out if they zero out fieldsets. + */ + +legend { + border: 0; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Remove default vertical scrollbar in IE 8/9/10/11. + */ + +textarea { + overflow: auto; +} + +/** + * Don't inherit the `font-weight` (applied by a rule above). + * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. + */ + +optgroup { + font-weight: bold; +} + +/* Tables + ========================================================================== */ + +/** + * Remove most spacing between table cells. + */ + +table { + border-collapse: collapse; + border-spacing: 0; +} + +td, +th { + padding: 0; +} diff --git a/public/app/bower_components/html5-boilerplate/dist/doc/TOC.md b/public/app/bower_components/html5-boilerplate/dist/doc/TOC.md new file mode 100644 index 00000000..199c6b07 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/doc/TOC.md @@ -0,0 +1,29 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) + +## Getting started + +* [Usage](usage.md) — Overview of the project contents. +* [FAQ](faq.md) — Frequently asked questions along with their answers. + +## HTML5 Boilerplate core + +* [HTML](html.md) — Guide to the default HTML. +* [CSS](css.md) — Guide to the default CSS. +* [JavaScript](js.md) — Guide to the default JavaScript. +* [Everything else](misc.md). + +## Development + +* [Extending and customizing HTML5 Boilerplate](extend.md) — Going further + with the boilerplate. + +## Related projects + +The [H5BP organization](https://github.com/h5bp) maintains several projects +that complement HTML5 Boilerplate, projects that can help you improve different +aspects of your website/web app (e.g.: the performance, security, etc.). + +* [Server Configs](https://github.com/h5bp/server-configs) — Fast & smart + configurations for web servers, like Apache and Nginx +* [Ant Build Script](https://github.com/h5bp/ant-build-script) — Apache Ant + based build script. diff --git a/public/app/bower_components/html5-boilerplate/dist/doc/css.md b/public/app/bower_components/html5-boilerplate/dist/doc/css.md new file mode 100644 index 00000000..59f9cabb --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/doc/css.md @@ -0,0 +1,162 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# The CSS + +HTML5 Boilerplate's CSS includes: + +* [Normalize.css](#normalizecss) +* [Useful defaults](#useful-defaults) +* [Common helpers](#common-helpers) +* [Placeholder media queries](#media-queries) +* [Print styles](#print-styles) + +This starting CSS does not rely on the presence of +[conditional class names](http://www.paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/), +[conditional style sheets](http://css-tricks.com/how-to-create-an-ie-only-stylesheet/), +or [Modernizr](http://modernizr.com/), and it is ready to use no matter what +your development preferences happen to be. + + +## Normalize.css + +In order to make browsers render all elements more consistently and in line +with modern standards, we include +[Normalize.css](https://necolas.github.io/normalize.css/) — a modern, HTML5-ready +alternative to CSS resets. + +As opposed to CSS resets, Normalize.css: + +* targets only the styles that need normalizing +* preserves useful browser defaults rather than erasing them +* corrects bugs and common browser inconsistencies +* improves usability with subtle improvements +* doesn't clutter the debugging tools +* has better documentation + +For more information about Normalize.css, please refer to its [project +page](https://necolas.github.com/normalize.css/), as well as this +[blog post](http://nicolasgallagher.com/about-normalize-css/). + + +## Useful defaults + +Several base styles are included that build upon `Normalize.css`. These +styles: + +* provide basic typography settings that improve text readability +* protect against unwanted `text-shadow` during text highlighting +* tweak the default alignment of some elements (e.g.: `img`, `video`, + `fieldset`, `textarea`) +* style the prompt that is displayed to users using an outdated browser + +You are free and even encouraged to modify or add to these base styles as your +project requires. + + +## Common helpers + +Along with the base styles, we also provide some commonly used helper classes. + +#### `.hidden` + +The `hidden` class can be added to any element that you want to hide visually +and from screen readers. It could be an element that will be populated and +displayed later, or an element you will hide with JavaScript. + +#### `.visuallyhidden` + +The `visuallyhidden` class can be added to any element that you want to hide +visually, while still have its content accessible to screen readers. + +See also: + +* [CSS in Action: Invisible Content Just for Screen Reader + Users](http://www.webaim.org/techniques/css/invisiblecontent/) +* [Hiding content for + accessibility](http://snook.ca/archives/html_and_css/hiding-content-for-accessibility) +* [HTML5 Boilerplate - Issue #194](https://github.com/h5bp/html5-boilerplate/issues/194/). + +#### `.invisible` + +The `invisible` class can be added to any element that you want to hide +visually and from screen readers, but without affecting the layout. + +As opposed to the `hidden` class that effectively removes the element from the +layout, the `invisible` class will simply make the element invisible while +keeping it in the flow and not affecting the positioning of the surrounding +content. + +__N.B.__ Try to stay away from, and don't use the classes specified above for +[keyword stuffing](https://en.wikipedia.org/wiki/Keyword_stuffing) as you will +harm your site's ranking! + +#### `.clearfix` + +The `clearfix` class can be added to any element to ensure that it always fully +contains its floated children. + +Over the years there have been many variants of the clearfix hack, but currently, +we use the [micro clearfix](http://nicolasgallagher.com/micro-clearfix-hack/). + + +## Media Queries + +HTML5 Boilerplate makes it easy for you to get started with a +[_mobile first_](http://www.lukew.com/presos/preso.asp?26) and [_responsive web +design_](http://www.alistapart.com/articles/responsive-web-design/) approach to +development. But it's worth remembering that there are [no silver +bullets](http://www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/). + +We include placeholder media queries to help you build up your mobile styles for +wider viewports and high-resolution displays. It's recommended that you adapt +these media queries based on the content of your site rather than mirroring the +fixed dimensions of specific devices. + +If you do not want to take the _mobile first_ approach, you can simply edit or +remove these placeholder media queries. One possibility would be to work from +wide viewports down, and use `max-width` media queries instead (e.g.: +`@media only screen and (max-width: 480px)`). + +For more features that can help you in your mobile web development, take a look +into our [Mobile Boilerplate](https://github.com/h5bp/mobile-boilerplate). + + +## Print styles + +Lastly, we provide some useful print styles that will optimize the printing +process, as well as make the printed pages easier to read. + +At printing time, these styles will: + +* strip all background colors, change the font color to black, and remove the + `text-shadow` — done in order to [help save printer ink and speed up the + printing process](http://www.sanbeiji.com/archives/953) +* underline and expand links to include the URL — done in order to allow users + to know where to refer to
+ (exceptions to this are: the links that are + [fragment identifiers](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href), + or use the + [`javascript:` pseudo protocol](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void#JavaScript_URIs)) +* expand abbreviations to include the full description — done in order to allow + users to know what the abbreviations stands for +* provide instructions on how browsers should break the content into pages and + on [orphans/widows](https://en.wikipedia.org/wiki/Widows_and_orphans), namely, + we instruct + [supporting browsers](https://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28Cascading_Style_Sheets%29#Grammar_and_rules) + that they should: + + * ensure the table header (``) is [printed on each page spanned by the + table](http://css-discuss.incutio.com/wiki/Printing_Tables) + * prevent block quotations, preformatted text, images and table rows from + being split onto two different pages + * ensure that headings never appear on a different page than the text they + are associated with + * ensure that + [orphans and widows](https://en.wikipedia.org/wiki/Widows_and_orphans) do + [not appear on printed pages](http://css-tricks.com/almanac/properties/o/orphans/) + +The print styles are included along with the other `css` to [avoid the +additional HTTP request](http://www.phpied.com/delay-loading-your-print-css/). +Also, they should always be included last, so that the other styles can be +overwritten. diff --git a/public/app/bower_components/html5-boilerplate/doc/extend.md b/public/app/bower_components/html5-boilerplate/dist/doc/extend.md similarity index 67% rename from public/app/bower_components/html5-boilerplate/doc/extend.md rename to public/app/bower_components/html5-boilerplate/dist/doc/extend.md index 87ba790f..1eeb55b3 100644 --- a/public/app/bower_components/html5-boilerplate/doc/extend.md +++ b/public/app/bower_components/html5-boilerplate/dist/doc/extend.md @@ -4,10 +4,46 @@ table of contents](TOC.md) # Extend and customise HTML5 Boilerplate Here is some useful advice for how you can make your project with HTML5 -Boilerplate even better. We don't want to include it all by default, as not -everything fits with everyone's needs. +Boilerplate even better. We don't want to include it all by default, as +not everything fits with everyone's needs. +* [App Stores](#app-stores) +* [DNS prefetching](#dns-prefetching) +* [Google Universal Analytics](#google-universal-analytics) +* [Internet Explorer](#internet-explorer) +* [Miscellaneous](#miscellaneous) +* [News Feeds](#news-feeds) +* [Search](#search) +* [Social Networks](#social-networks) +* [URLs](#urls) +* [Web Apps](#web-apps) + + +## App Stores + +### Install a Chrome Web Store app + +Users can install a Chrome app directly from your website, as long as +the app and site have been associated via Google's Webmaster Tools. +Read more on [Chrome Web Store's Inline Installation +docs](https://developer.chrome.com/webstore/inline_installation). + +```html + +``` + +### Smart App Banners in iOS 6+ Safari + +Stop bothering everyone with gross modals advertising your entry in the +App Store. Include the following [meta tag](https://developer.apple.com/library/IOS/documentation/AppleApplications/Reference/SafariWebContent/PromotingAppswithAppBanners/PromotingAppswithAppBanners.html#//apple_ref/doc/uid/TP40002051-CH6-SW2) +will unintrusively allow the user the option to download your iOS app, +or open it with some data about the user's current state on the website. + +```html + +``` + ## DNS prefetching In short, DNS Prefetching is a method of informing the browser of domain names @@ -27,7 +63,7 @@ page. The goal of this is that when the foreign IP address is finally needed it will already be in the client cache and will not block the loading of the foreign -content. Less requests result in faster page load times. The perception of this +content. Fewer requests result in faster page load times. The perception of this is increased on a mobile platform where DNS latency can be greater. #### Disable implicit prefetching @@ -56,7 +92,7 @@ your site, for example) then you can queue up a domain name to be prefetched. You can use as many of these as you need, but it's best if they are all immediately after the [Meta -Charset](https://developer.mozilla.org/en/HTML/Element/meta#attr-charset) +Charset](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) element (which should go right at the top of the `head`), so the browser can act on them ASAP. @@ -81,53 +117,114 @@ Microsoft Ajax Content Delivery Network: ``` -### Browser support for DNS prefetching - -Chrome, Firefox 3.5+, Safari 5+, Opera (Unknown), IE 9 (called "Pre-resolution" -on blogs.msdn.com) - ### Further reading about DNS prefetching -* https://developer.mozilla.org/En/Controlling_DNS_prefetching -* http://dev.chromium.org/developers/design-documents/dns-prefetching -* http://www.apple.com/safari/whats-new.html +* https://developer.mozilla.org/en-US/docs/Controlling_DNS_prefetching +* https://dev.chromium.org/developers/design-documents/dns-prefetching * http://blogs.msdn.com/b/ie/archive/2011/03/17/internet-explorer-9-network-performance-improvements.aspx * http://dayofjs.com/videos/22158462/web-browsers_alex-russel -## Search +## Google Universal Analytics -### Direct search spiders to your sitemap +### More tracking settings -[Learn how to make a sitemap](http://www.sitemaps.org/protocol.php) +The [optimized Google Universal Analytics +snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics) +included with HTML5 Boilerplate includes something like this: -```html - +```js +ga('create', 'UA-XXXXX-X', 'auto'); ga('send', 'pageview'); ``` -### Hide pages from search engines +To customize further, see Google's [Advanced +Setup](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced), +[Pageview](https://developers.google.com/analytics/devguides/collection/analyticsjs/pages), +and [Event](https://developers.google.com/analytics/devguides/collection/analyticsjs/events) Docs. -According to Heather Champ, former community manager at Flickr, you should not -allow search engines to index your "Contact Us" or "Complaints" page if you -value your sanity. This is an HTML-centric way of achieving that. +### Anonymize IP addresses -```html - +In some countries, no personal data may be transferred outside jurisdictions +that do not have similarly strict laws (i.e. from Germany to outside the EU). +Thus a webmaster using the Google Universal Analytics may have to ensure that +no personal (trackable) data is transferred to the US. You can do that with +[the `ga('set', 'anonymizeIp', true);` +parameter](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#anonymizeip) +before sending any events/pageviews. In use it looks like this: + +```js +ga('create', 'UA-XXXXX-X', 'auto'); +ga('set', 'anonymizeIp', true); +ga('send', 'pageview'); ``` -**_WARNING:_** DO NOT INCLUDE ON PAGES THAT SHOULD APPEAR IN SEARCH ENGINES. +### Track jQuery AJAX requests in Google Analytics -### Firefox and IE Search Plugins +An article by @JangoSteve explains how to [track jQuery AJAX requests in Google +Analytics](http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/). -Sites with in-site search functionality should be strongly considered for a -browser search plugin. A "search plugin" is an XML file which defines how your -plugin behaves in the browser. [How to make a browser search -plugin](http://www.google.com/search?ie=UTF-8&q=how+to+make+browser+search+plugin). +Add this to `plugins.js`: -```html - +```js +/* + * Log all jQuery AJAX requests to Google Analytics + * See: http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/ + */ +if (typeof ga !== "undefined" && ga !== null) { + $(document).ajaxSend(function(event, xhr, settings){ + ga('send', 'pageview', settings.url); + }); +} ``` +### Track JavaScript errors in Google Analytics + +Add this function after `ga` is defined: + +```js +(function(window){ + var undefined, + link = function (href) { + var a = window.document.createElement('a'); + a.href = href; + return a; + }; + window.onerror = function (message, file, line, column) { + var host = link(file).hostname; + ga('send', { + 'hitType': 'event', + 'eventCategory': (host == window.location.hostname || host == undefined || host == '' ? '' : 'external ') + 'error', + 'eventAction': message, + 'eventLabel': (file + ' LINE: ' + line + (column ? ' COLUMN: ' + column : '')).trim(), + 'nonInteraction': 1 + }); + }; +}(window)); +``` + +### Track page scroll + +Add this function after `ga` is defined: + +```js +$(function(){ + var isDuplicateScrollEvent, + scrollTimeStart = new Date, + $window = $(window), + $document = $(document), + scrollPercent; + + $window.scroll(function() { + scrollPercent = Math.round(100 * ($window.height() + $window.scrollTop())/$document.height()); + if (scrollPercent > 90 && !isDuplicateScrollEvent) { //page scrolled to 90% + isDuplicateScrollEvent = 1; + ga('send', 'event', 'scroll', + 'Window: ' + $window.height() + 'px; Document: ' + $document.height() + 'px; Time: ' + Math.round((new Date - scrollTimeStart )/1000,1) + 's' + ); + } + }); +}); +``` ## Internet Explorer @@ -144,7 +241,7 @@ element, which will prompt them to switch to Desktop Mode. Here's what it looks like alongside H5BP's default X-UA-Compatible values: ```html - + ``` You can find more information in [Microsoft's IEBlog post about prompting for @@ -249,7 +346,7 @@ or one of a predefined list of glyphs. ### Disable link highlighting upon tap in IE10 Similar to [-webkit-tap-highlight-color](http://davidwalsh.name/mobile-highlight-color) -in iOS Safari. Unlike that CSS property, this is an HTML meta element, and it's +in iOS Safari. Unlike that CSS property, this is an HTML meta element, and its value is boolean rather than a color. It's all or nothing. ```html @@ -259,15 +356,108 @@ value is boolean rather than a color. It's all or nothing. You can read about this useful element and more techniques in [Microsoft's documentation on adapting WebKit-oriented apps for IE10](http://blogs.windows.com/windows_phone/b/wpdev/archive/2012/11/15/adapting-your-webkit-optimized-site-for-internet-explorer-10.aspx). -### Suppress IE6 image toolbar -Kill IE6's pop-up-on-mouseover toolbar for images that can interfere with -certain designs and be pretty distracting in general. +## Search + +### Direct search spiders to your sitemap + +[Learn how to make a sitemap](http://www.sitemaps.org/protocol.html) ```html - + ``` +### Hide pages from search engines + +According to Heather Champ, former community manager at Flickr, you should not +allow search engines to index your "Contact Us" or "Complaints" page if you +value your sanity. This is an HTML-centric way of achieving that. + +```html + +``` + +**_WARNING:_** DO NOT INCLUDE ON PAGES THAT SHOULD APPEAR IN SEARCH ENGINES. + +### Firefox and IE Search Plugins + +Sites with in-site search functionality should be strongly considered for a +browser search plugin. A "search plugin" is an XML file which defines how your +plugin behaves in the browser. [How to make a browser search +plugin](https://www.google.com/search?ie=UTF-8&q=how+to+make+browser+search+plugin). + +```html + +``` + + +## Miscellaneous + +* Use [polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills). + +* Use [Microformats](http://microformats.org/wiki/Main_Page) (via + [microdata](http://microformats.org/wiki/microdata)) for optimum search + results + [visibility](http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html). + +* If you're building a web app you may want [native style momentum scrolling in + iOS 5+](http://www.johanbrook.com/articles/native-style-momentum-scrolling-to-arrive-in-ios-5/) + using `-webkit-overflow-scrolling: touch`. + +* If you want to disable the translation prompt in Chrome or block Google + Translate from translating your web page, use [``](https://support.google.com/translate/?hl=en#2641276). + To disable translation for a particular section of the web page, add + [`class="notranslate"`](https://support.google.com/translate/?hl=en#2641276). + +* If you want to disable the automatic detection and formatting of possible + phone numbers in Safari on iOS, use [``](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html/#//apple_ref/doc/uid/TP40008193-SW5). + +* Avoid development/stage websites "leaking" into SERPs (search engine results + page) by [implementing X-Robots-tag + headers](https://github.com/h5bp/html5-boilerplate/issues/804). + +* Screen readers currently have less-than-stellar support for HTML5 but the JS + script [accessifyhtml5.js](https://github.com/yatil/accessifyhtml5.js) can + help increase accessibility by adding ARIA roles to HTML5 elements. + + +## News Feeds + +### RSS + +Have an RSS feed? Link to it here. Want to [learn how to write an RSS feed from +scratch](http://www.rssboard.org/rss-specification)? + +```html + +``` + +### Atom + +Atom is similar to RSS, and you might prefer to use it instead of or in +addition to it. [See what Atom's all +about](http://www.atomenabled.org/developers/syndication/). + +```html + +``` + +### Pingbacks + +Your server may be notified when another site links to yours. The href +attribute should contain the location of your pingback service. + +```html + +``` + +* High-level explanation: https://codex.wordpress.org/Introduction_to_Blogging#Pingbacks +* Step-by-step example case: http://www.hixie.ch/specs/pingback/pingback-1.0#TOC5 +* PHP pingback service: https://web.archive.org/web/20131211032834/http://blog.perplexedlabs.com/2009/07/15/xmlrpc-pingbacks-using-php/ + + ## Social Networks @@ -331,216 +521,94 @@ the Microformats wiki](http://microformats.org/wiki/rel-shortlink). ``` +### Separate mobile URLs -## News Feeds +If you use separate URLs for desktop and mobile users, you should consider +helping search engine algorithms better understand the configuration on your +web site. -### RSS +This can be done by adding the following annotations in your HTML pages: -Have an RSS feed? Link to it here. Want to [learn how to write an RSS feed from -scratch](http://www.rssboard.org/rss-specification)? +* on the desktop page, add the `link rel="alternate"` tag pointing to the + corresponding mobile URL, e.g.: -```html - -``` + `` -### Atom +* on the mobile page, add the `link rel="canonical"` tag pointing to the + corresponding desktop URL, e.g.: -Atom is similar to RSS, and you might prefer to use it instead of or in -addition to it. [See what Atom's all -about](http://www.atomenabled.org/developers/syndication/). + `` -```html - -``` +For more information please see: -### Pingbacks - -Your server may be notified when another site links to yours. The href -attribute should contain the location of your pingback service. - -```html - -``` - -* High-level explanation: http://codex.wordpress.org/Introduction_to_Blogging#Pingbacks -* Step-by-step example case: http://www.hixie.ch/specs/pingback/pingback-1.0#TOC5 -* PHP pingback service: http://blog.perplexedlabs.com/2009/07/15/xmlrpc-pingbacks-using-php/ +* https://developers.google.com/webmasters/smartphone-sites/details#separateurls +* https://developers.google.com/webmasters/smartphone-sites/feature-phones -## App Stores - -### Install a Chrome Web Store app - -Users can install a Chrome app directly from your website, as long as the app -and site have been associated via Google's Webmaster Tools. Read more on -[Chrome Web Store's Inline Installation -docs](https://developers.google.com/chrome/web-store/docs/inline_installation). - -```html - -``` - -### Smart App Banners in iOS 6 Safari - -Stop bothering everyone with gross modals advertising your entry in the App Store. -This bit of code will unintrusively allow the user the option to download your iOS -app, or open it with some data about the user's current state on the website. - -```html - -``` - -## Google Analytics augments - -### More tracking settings - -The [optimized Google Analytics -snippet](http://mathiasbynens.be/notes/async-analytics-snippet) included with -HTML5 Boilerplate includes something like this: - -```js -var _gaq = [['_setAccount', 'UA-XXXXX-X'], ['_trackPageview']]; -``` - -In case you need more settings, just extend the array literal instead of -[`.push()`ing to the -array](http://mathiasbynens.be/notes/async-analytics-snippet#dont-push-it) -afterwards: - -```js -var _gaq = [['_setAccount', 'UA-XXXXX-X'], ['_trackPageview'], ['_setAllowAnchor', true]]; -``` - -### Anonymize IP addresses - -In some countries, no personal data may be transferred outside jurisdictions -that do not have similarly strict laws (i.e. from Germany to outside the EU). -Thus a webmaster using the Google Analytics script may have to ensure that no -personal (trackable) data is transferred to the US. You can do that with [the -`_gat.anonymizeIp` -option](http://code.google.com/apis/analytics/docs/gaJS/gaJSApi_gat.html#_gat._anonymizeIp). -In use it looks like this: - -```js -var _gaq = [['_setAccount', 'UA-XXXXX-X'], ['_gat._anonymizeIp'], ['_trackPageview']]; -``` - -### Track jQuery AJAX requests in Google Analytics - -An article by @JangoSteve explains how to [track jQuery AJAX requests in Google -Analytics](http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/). - -Add this to `plugins.js`: - -```js -/* - * Log all jQuery AJAX requests to Google Analytics - * See: http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/ - */ -if (typeof _gaq !== "undefined" && _gaq !== null) { - $(document).ajaxSend(function(event, xhr, settings){ - _gaq.push(['_trackPageview', settings.url]); - }); -} -``` - -### Track JavaScript errors in Google Analytics - -Add this function after `_gaq` is defined: - -```js -(function(window){ - var undefined, - link = function (href) { - var a = window.document.createElement('a'); - a.href = href; - return a; - }; - window.onerror = function (message, file, line, column) { - var host = link(file).hostname; - _gaq.push([ - '_trackEvent', - (host == window.location.hostname || host == undefined || host == '' ? '' : 'external ') + 'error', - message, file + ' LINE: ' + line + (column ? ' COLUMN: ' + column : ''), undefined, undefined, true - ]); - }; -}(window)); -``` - -### Track page scroll - -Add this function after `_gaq` is defined: - -```js -$(function(){ - var isDuplicateScrollEvent, - scrollTimeStart = new Date, - $window = $(window), - $document = $(document), - scrollPercent; - - $window.scroll(function() { - scrollPercent = Math.round(100 * ($window.height() + $window.scrollTop())/$document.height()); - if (scrollPercent > 90 && !isDuplicateScrollEvent) { //page scrolled to 90% - isDuplicateScrollEvent = 1; - _gaq.push(['_trackEvent', 'scroll', - 'Window: ' + $window.height() + 'px; Document: ' + $document.height() + 'px; Time: ' + Math.round((new Date - scrollTimeStart )/1000,1) + 's', - undefined, undefined, true - ]); - } - }); -}); -``` - -## iOS Web Apps +## Web Apps There are a couple of meta tags that provide information about a web app when -added to the Home Screen on iOS. +added to the Home Screen on iOS: -Adding `apple-mobile-web-app-capable` will make your web app chrome-less and +* Adding `apple-mobile-web-app-capable` will make your web app chrome-less and provide the default iOS app view. You can control the color scheme of the default view by adding `apple-mobile-web-app-status-bar-style`. -```html + ```html ``` -You can use `apple-mobile-web-app-title` to add a specific sites name for the +* You can use `apple-mobile-web-app-title` to add a specific sites name for the Home Screen icon. This works since iOS 6. -```html + ```html ``` -For further information please read the [official documentation](http://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html) +For further information please read the [official +documentation](https://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html) on Apple's site. + ### Apple Touch Icons -Touch Icons can be seen as the favicons of mobile devices and tablets. +The Apple touch icons can be seen as the favicons of iOS devices. -If your site or icons are in a sub-directory, you will need to reference the -icons using `link` elements placed in the HTML `head` of your document. +The main sizes of the Apple touch icons are: + +* `57×57px` – iPhone with @1x display and iPod Touch +* `72×72px` – iPad and iPad mini with @1x display running iOS ≤ 6 +* `76×76px` – iPad and iPad mini with @1x display running iOS ≥ 7 +* `114×114px` – iPhone with @2x display running iOS ≤ 6 +* `120×120px` – iPhone with @2x and @3x display running iOS ≥ 7 +* `144×144px` – iPad and iPad mini with @2x display running iOS ≤ 6 +* `152×152px` – iPad and iPad mini with @2x display running iOS 7 +* `180×180px` – iPad and iPad mini with @2x display running iOS 8 + +Displays meaning: + +* @1x - non-Retina +* @2x - Retina +* @3x - Retina HD + +More information about the displays of iOS devices can be found +[here](https://en.wikipedia.org/wiki/List_of_iOS_devices#Display). + +In most cases, one `180×180px` touch icon named `apple-touch-icon.png` +and including: ```html - + ``` -The main sizes of the icons on iOS are: +in the `` of the page is enough. If you use art-direction and/or +want to have different content for each device, you can add more touch +icons as written above. -* iPad, high-resolution display, iOS 7: 152x152 -* iPad, high-resolution display, iOS ≤ 6: 144x144 -* iPhone, high-resolution display, iOS 7: 120x120 -* iPhone, high-resolution display, iOS ≤ 6: 114x114 -* iPad, non-Retina, iOS ≤ 6: 72x72 +For a more comprehensive overview, please refer to Mathias' [article on Touch +Icons](https://mathiasbynens.be/notes/touch-icons). -For non-Retina iPhone, iPod Touch, and Android 2.1+ devices you can use the -example from above or replace the `apple-touch-icon-precomposed.png` within this -project's root folder. - -Please refer to Mathias' [article on Touch -Icons](http://mathiasbynens.be/notes/touch-icons) for a comprehensive overview. ### Apple Touch Startup Image @@ -556,31 +624,22 @@ example for a retina iPhone: However, it is possible to detect which start-up image to use with JavaScript. The Mobile Boilerplate provides a useful function for this. Please see -[helpers.js](https://github.com/h5bp/mobile-boilerplate/blob/master/js/helper.js#L354) +[helpers.js](https://github.com/h5bp/mobile-boilerplate/blob/v4.1.0/js/helper.js#L336-L383) for the implementation. -## Miscellaneous -* Use [HTML5 - polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills). +### Chrome Mobile web apps -* Use [Microformats](http://microformats.org/wiki/Main_Page) (via - [microdata](http://microformats.org/wiki/microdata)) for optimum search - results - [visibility](http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html). +Chrome Mobile has a specific meta tag for making apps [installable to the +homescreen](https://developer.chrome.com/multidevice/android/installtohomescreen) +which tries to be a more generic replacement to Apple's proprietary meta tag: -* If you're building a web app you may want [native style momentum scrolling in - iOS5](http://johanbrook.com/browsers/native-momentum-scrolling-ios-5/) using - `-webkit-overflow-scrolling: touch`. +```html + +``` -* Avoid development/stage websites "leaking" into SERPs (search engine results - page) by [implementing X-Robots-tag - headers](https://github.com/h5bp/html5-boilerplate/issues/804). +Same applies to the touch icons: -* Screen readers currently have less-than-stellar support for HTML5 but the JS - script [accessifyhtml5.js](https://github.com/yatil/accessifyhtml5.js) can - help increase accessibility by adding ARIA roles to HTML5 elements. - - -*Many thanks to [Brian Blakely](https://github.com/brianblakely) for -contributing much of this information.* +```html + +``` diff --git a/public/app/bower_components/html5-boilerplate/dist/doc/faq.md b/public/app/bower_components/html5-boilerplate/dist/doc/faq.md new file mode 100644 index 00000000..e3e2a9c5 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/doc/faq.md @@ -0,0 +1,93 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Frequently asked questions + +* [Why is the URL for jQuery without + `http`?](#why-is-the-url-for-jquery-without-http) +* [Why don't you automatically load the latest version of jQuery from the Google + CDN?](#why-dont-you-automatically-load-the-latest-version-of-jquery-from-the-google-cdn) +* [Why is the Google Analytics code at the bottom? Google recommends it be + placed in the ``.](#why-is-the-google-analytics-code-at-the-bottom-google-recommends-it-be-placed-in-the-head) +* [How can I integrate Bootstrap with HTML5 + Boilerplate?](#how-can-i-integrate-bootstrap-with-html5-boilerplate) +* [Do I need to upgrade my site each time a new version of HTML5 Boilerplate is + released?](#do-i-need-to-upgrade-my-site-each-time-a-new-version-of-html5-boilerplate-is-released) +* [Where can I get help with support + questions?](#where-can-i-get-help-with-support-questions) + +-- + +### Why is the URL for jQuery without `http`? + +It is because of the use of [protocol-relative +URLs](http://paulirish.com/2010/the-protocol-relative-url/). + +**N.B.** If you try to view the local web page directly in the browser, the +browser will fail to load the assets specified using protocol-relative URLs +as it will attempt to fetch them from the local file system. We recommend you +use a local HTTP server to test your web pages, or a file hosting service that +allows you to preview your web pages online (e.g. +[Dropbox](https://www.dropbox.com/)). + +Setting up a local HTTP server can be done using there various +[one-liners](https://gist.github.com/willurd/5720255): + +* PHP 5.4.0+ by running + [`php -S localhost:8080`](https://php.net/manual/en/features.commandline.webserver.php) + from your local directory +* Python 2.x by running `python -m SimpleHTTPServer` from your local directory +* Python 3.x by running `python -m http.server` from your local directory +* Ruby 1.9.2+ by running `ruby -run -ehttpd . -p8080` from your local directory +* Node.js by installing and running either + [`static -p 8080`](https://www.npmjs.org/package/node-static) + or [`http-server -p 8080`](https://www.npmjs.org/package/http-server) + +A list of more complex HTTP servers can be found +[here](misc.md#servers-and-stacks). + + +### Why don't you automatically load the latest version of jQuery from the Google CDN? + +The [file](https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js) to which +the Google [CDN](https://en.wikipedia.org/wiki/Content_delivery_network) points +to is [no longer updated and will stay locked at version `1.11.1` in order to +prevent inadvertent web +breakage](http://blog.jquery.com/2014/07/03/dont-use-jquery-latest-js/). + +In general, version updating should be an intentional decision! You shouldn't +include a URL that will always point to the latest version, as that version: + + * may not be compatible with the existing plugins/code on the site + * will have a very short cache time compare to the specific version, + which means that users won't get the benefits of long-term caching + +### Why is the Google Analytics code at the bottom? Google recommends it be placed in the ``. + +The main advantage of placing it in the `` is that you will track the +user's `pageview` even if they leave the page before it has been fully loaded. +However, having the code at the bottom of the page [helps improve +performance](http://stevesouders.com/efws/inline-scripts-bottom.php). + + +### How can I integrate [Bootstrap](http://getbootstrap.com/) with HTML5 Boilerplate? + +One simple way is to use [Initializr](http://initializr.com) and create a +custom build that includes both HTML5 Boilerplate and +[Bootstrap](http://getbootstrap.com/). + +Read more about how [HTML5 Boilerplate and Bootstrap complement each +other](https://www.quora.com/Is-Bootstrap-a-complement-or-an-alternative-to-HTML5-Boilerplate-or-viceversa/answer/Nicolas-Gallagher). + + +### Do I need to upgrade my site each time a new version of HTML5 Boilerplate is released? + +No, same as you don't normally replace the foundation of a house once it +was built. However, there is nothing stopping you from trying to work in the +latest changes, but you'll have to assess the costs/benefits of doing so. + + +### Where can I get help with support questions? + +Please ask for help on +[StackOverflow](https://stackoverflow.com/questions/tagged/html5boilerplate). diff --git a/public/app/bower_components/html5-boilerplate/dist/doc/html.md b/public/app/bower_components/html5-boilerplate/dist/doc/html.md new file mode 100644 index 00000000..91d98f88 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/doc/html.md @@ -0,0 +1,223 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# The HTML + +By default, HTML5 Boilerplate provides two `html` pages: + +* [`index.html`](#indexhtml) - a default HTML skeleton that should form the + basis of all pages on your website +* [`404.html`](#404html) - a placeholder 404 error page + + +## `index.html` + + +### The `no-js` class + +The `no-js` class is provided in order to allow you to more easily and +explicitly add custom styles based on whether JavaScript is disabled +(`.no-js`) or enabled (`.js`). Using this technique also helps [avoid the +FOUC](http://paulirish.com/2009/avoiding-the-fouc-v3/). + + +## Language attribute + +Please consider specifying the language of your content by adding the `lang` +attribute to `` as in this example: + +```html + +``` + +### The order of the `` and `<meta>` tags + +The order in which the `<title>` and the `<meta>` tags are specified is +important because: + +1) the charset declaration (`<meta charset="utf-8">`): + + * must be included completely within the [first 1024 bytes of the + document](https://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#charset) + + * should be specified as early as possible (before any content that could + be controlled by an attacker, such as a `<title>` element) in order to + avoid a potential [encoding-related security + issue](https://code.google.com/p/doctype-mirror/wiki/ArticleUtf7) in + Internet Explorer + +2) the meta tag for compatibility mode + (`<meta http-equiv="X-UA-Compatible" content="IE=edge">`): + + * [needs to be included before all other tags except for the `<title>` and + the other `<meta>` + tags](http://msdn.microsoft.com/en-us/library/cc288325.aspx) + + +### `X-UA-Compatible` + +Internet Explorer 8/9/10 support [document compatibility +modes](http://msdn.microsoft.com/en-us/library/cc288325.aspx) that affect the +way webpages are interpreted and displayed. Because of this, even if your site's +visitor is using, let's say, Internet Explorer 9, it's possible that IE will not +use the latest rendering engine, and instead, decide to render your page using +the Internet Explorer 5.5 rendering engine. + +Specifying the `X-UA-Compatible` meta tag: + +```html +<meta http-equiv="X-UA-Compatible" content="IE=edge"> +``` + +or sending the page with the following HTTP response header + +``` +X-UA-Compatible: IE=edge +``` + +will force Internet Explorer 8/9/10 to render the webpage in the highest +available mode in [the various cases when it may +not](https://hsivonen.fi/doctype/#ie8), and therefore, ensure that anyone +browsing your site is treated to the best possible user experience that +browser can offer. + +If possible, we recommend that you remove the `meta` tag and send only the +HTTP response header as the `meta` tag will not always work if your site is +served on a non-standard port, as Internet Explorer's preference option +`Display intranet sites in Compatibility View` is checked by default. + +If you are using Apache as your webserver, including the +[`.htaccess`](https://github.com/h5bp/server-configs-apache) file takes care of +the HTTP header. If you are using a different server, check out our [other +server config](https://github.com/h5bp/server-configs). + +Starting with Internet Explorer 11, [document modes are +deprecated](http://msdn.microsoft.com/en-us/library/ie/bg182625.aspx#docmode). +If your business still relies on older web apps and services that were +designed for older versions of Internet Explorer, you might want to consider +enabling [Enterprise Mode](http://blogs.msdn.com/b/ie/archive/2014/04/02/stay-up-to-date-with-enterprise-mode-for-internet-explorer-11.aspx) throughout your company. + + +## Mobile viewport + +There are a few different options that you can use with the [`viewport` meta +tag](https://docs.google.com/present/view?id=dkx3qtm_22dxsrgcf4 "Viewport and +Media Queries - The Complete Idiot's Guide"). You can find out more in [the +Apple developer docs](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html). +HTML5 Boilerplate comes with a simple setup that strikes a good balance for general use cases. + +```html +<meta name="viewport" content="width=device-width, initial-scale=1"> +``` + +## Favicons and Touch Icon + +The shortcut icons should be put in the root directory of your site. HTML5 +Boilerplate comes with a default set of icons (include favicon and one Apple +Touch Icon) that you can use as a baseline to create your own. + +Please refer to the more detailed description in the [Extend section](extend.md) +of these docs. + +## Modernizr + +HTML5 Boilerplate uses a custom build of Modernizr. + +[Modernizr](http://modernizr.com) is a JavaScript library which adds classes to +the `html` element based on the results of feature test and which ensures that +all browsers can make use of HTML5 elements (as it includes the HTML5 Shiv). +This allows you to target parts of your CSS and JavaScript based on the +features supported by a browser. + +In general, in order to keep page load times to a minimum, it's best to call +any JavaScript at the end of the page because if a script is slow to load +from an external server it may cause the whole page to hang. That said, the +Modernizr script *needs* to run *before* the browser begins rendering the page, +so that browsers lacking support for some of the new HTML5 elements are able to +handle them properly. Therefore the Modernizr script is the only JavaScript +file synchronously loaded at the top of the document. + +## What about polyfills? + +If you need to include [polyfills](https://remysharp.com/2010/10/08/what-is-a-polyfill) +in your project, you must make sure those load before any other JavaScript. If you're +using some polyfill CDN service, like [cdn.polyfill.io](http://cdn.polyfill.io/), +just put it before the other scripts in the bottom of the page: + +```html + <script src="//cdn.polyfill.io/v1/polyfill.min.js"></script> + <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> + <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.11.2.min.js"><\/script>')</script> + <script src="js/plugins.js"></script> + <script src="js/main.js"></script> +</body> +``` + +If you like to just include the polyfills yourself, you could include them in +`js/plugins.js`. When you have a bunch of polyfills to load in, you could +also create a `polyfills.js` file in the `js/vendor` directory. Also using +this technique, make sure the polyfills are all loaded before any other +Javascript. + +There are some misconceptions about Modernizr and polyfills. It's important +to understand that Modernizr just handles feature checking, not polyfilling +itself. The only thing Modernizr does regarding polyfills is that the team +maintains [a huge list of cross Browser polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills). + +## The content area + +The central part of the boilerplate template is pretty much empty. This is +intentional, in order to make the boilerplate suitable for both web page and +web app development. + +### Browser Upgrade Prompt + +The main content area of the boilerplate includes a prompt to install an up to +date browser for users of IE 6/7. If you intended to support IE 6/7, then you +should remove the snippet of code. + +### Google CDN for jQuery + +The Google CDN version of the jQuery JavaScript library is referenced towards +the bottom of the page using a protocol-independent path (read more about this +in the [FAQ](faq.md)). A local fallback of jQuery is included for rare instances +when the CDN version might not be available, and to facilitate offline +development. + +The Google CDN version is chosen over other [potential candidates (like the +jQuery CDN](https://jquery.com/download/#using-jquery-with-a-cdn)) because +it's fast in absolute terms and it has the best overall +[penetration](http://httparchive.org/trends.php#perGlibs) which increases the +odds of having a copy of the library in your user's browser cache. + +While the Google CDN is a strong default solution your site or application may +require a different configuration. Testing your site with services like +[WebPageTest](http://www.webpagetest.org/) and browser tools like +[PageSpeed Insights](https://developers.google.com/speed/pagespeed/insights/) or +[YSlow](https://developer.yahoo.com/yslow/) will help you examine the real +world performance of your site and can show where you can optimize your specific +site or application. + + +### Google Universal Analytics Tracking Code + +Finally, an optimized version of the Google Universal Analytics tracking code is +included. Google recommends that this script be placed at the top of the page. +Factors to consider: if you place this script at the top of the page, you’ll +be able to count users who don’t fully load the page, and you’ll incur the max +number of simultaneous connections of the browser. + +Further information: + +* [Optimizing the Google Universal Analytics + Snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics) +* [Introduction to + Analytics.js](https://developers.google.com/analytics/devguides/collection/analyticsjs/) +* [Google Analytics Demos & Tools](https://ga-dev-tools.appspot.com/) + +**N.B.** The Google Universal Analytics snippet is included by default mainly +because Google Analytics is [currently one of the most popular tracking +solutions](https://trends.builtwith.com/analytics/Google-Analytics) out there. +However, its usage isn't set in stone, and you SHOULD consider exploring the +[alternatives](https://en.wikipedia.org/wiki/List_of_web_analytics_software) +and use whatever suits your needs best! diff --git a/public/app/bower_components/html5-boilerplate/doc/js.md b/public/app/bower_components/html5-boilerplate/dist/doc/js.md similarity index 78% rename from public/app/bower_components/html5-boilerplate/doc/js.md rename to public/app/bower_components/html5-boilerplate/dist/doc/js.md index 2781c984..2088d9fb 100644 --- a/public/app/bower_components/html5-boilerplate/doc/js.md +++ b/public/app/bower_components/html5-boilerplate/dist/doc/js.md @@ -22,6 +22,12 @@ One approach is to put jQuery plugins inside of a `(function($){ ... blanket. Read more about [jQuery plugin authoring](http://docs.jquery.com/Plugins/Authoring#Getting_Started) +By default the `plugins.js` file contains a small script to avoid `console` +errors in browsers that lack a `console`. The script will make sure that, if +a console method isn't available, that method will have the value of empty +function, thus, preventing the browser from throwing an error. + + ## vendor This directory can be used to contain all 3rd party library code. diff --git a/public/app/bower_components/html5-boilerplate/dist/doc/misc.md b/public/app/bower_components/html5-boilerplate/dist/doc/misc.md new file mode 100644 index 00000000..459688b5 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/doc/misc.md @@ -0,0 +1,198 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Miscellaneous + +* [.gitignore](#gitignore) +* [.editorconfig](#editorconfig) +* [Server Configuration](#server-configuration) +* [crossdomain.xml](#crossdomainxml) +* [robots.txt](#robotstxt) +* [browserconfig.xml](#browserconfigxml) + +-- + +## .gitignore + +HTML5 Boilerplate includes a basic project-level `.gitignore`. This should +primarily be used to avoid certain project-level files and directories from +being kept under source control. Different development-environments will +benefit from different collections of ignores. + +OS-specific and editor-specific files should be ignored using a "global +ignore" that applies to all repositories on your system. + +For example, add the following to your `~/.gitconfig`, where the `.gitignore` +in your HOME directory contains the files and directories you'd like to +globally ignore: + +```gitignore +[core] + excludesfile = ~/.gitignore +``` + +* More on global ignores: https://help.github.com/articles/ignoring-files +* Comprehensive set of ignores on GitHub: https://github.com/github/gitignore + + +## .editorconfig + +The `.editorconfig` file is provided in order to encourage and help you and +your team define and maintain consistent coding styles between different +editors and IDEs. + +By default, `.editorconfig` includes some basic +[properties](http://editorconfig.org/#supported-properties) that reflect the +coding styles from the files provided by default, but you can easily change +them to better suit your needs. + +In order for your editor/IDE to apply the +[properties](http://editorconfig.org/#supported-properties) from the +`.editorconfig` file, you will need to [install a +plugin]( http://editorconfig.org/#download). + +__N.B.__ If you aren't using the server configurations provided by HTML5 +Boilerplate, we highly encourage you to configure your server to block +access to `.editorconfig` files, as they can disclose sensitive information! + +For more details, please refer to the [EditorConfig +project](http://editorconfig.org/). + + +## Server Configuration + +H5BP includes a [`.htaccess`](#htaccess) file for the Apache HTTP server. If you are not using +Apache as your web server, then you are encouraged to download a +[server configuration](https://github.com/h5bp/server-configs) that corresponds +to your web server and environment. + + +### Servers and Stacks + +A comprehensive list of web servers and stacks are beyond the scope of this +documentation, but some common ones include: + +* [Apache HTTP Server](https://httpd.apache.org/docs/trunk/getting-started.html) + * [LAMP](https://en.wikipedia.org/wiki/LAMP_%28software_bundle%29) +(Linux, Apache, MySQL, and PHP). +Other variants include [MAMP](https://www.mamp.info/en/index.html), +[WAMP](http://www.wampserver.com/en/), +or [XAMPP](https://www.apachefriends.org/index.html). + * LAPP uses PostgreSQL instead of MySQL +* [Nginx](http://wiki.nginx.org/GettingStarted) + * [LEMP](http://www.chrisjohnston.org/ubuntu-tutorials/setting-up-a-lemp-stack-ubuntu-904) +is similar to the LAMP stack but uses Nginx +* [IIS](https://en.wikipedia.org/wiki/Internet_Information_Services) + * [ASP.NET](http://www.asp.net/get-started) +* [MEAN](http://mean.io/) (MongoDB, Express, AngularJS, Node.js) + + +### .htaccess + +A `.htaccess` (hypertext access) file is a +[Apache HTTP server configuration file](https://github.com/h5bp/server-configs-apache). +The `.htaccess` file is mostly used for: + +* Rewriting URLs +* Controlling cache +* Authentication +* Server-side includes +* Redirects +* Gzipping + +If you have access to the main server configuration file (usually called +`httpd.conf`), you should add the logic from the `.htaccess` file in, for +example, a <Directory> section in the main configuration file. This is usually +the recommended way, as using .htaccess files slows down Apache! + +To enable Apache modules locally, please see: +https://github.com/h5bp/server-configs-apache/wiki/How-to-enable-Apache-modules. + +In the repo the `.htaccess` is used for: + +* Allowing cross-origin access to web fonts +* CORS header for images when browsers request it +* Enable `404.html` as 404 error document +* Making the website experience better for IE users better +* Media UTF-8 as character encoding for `text/html` and `text/plain` +* Enabling the rewrite URLs engine +* Forcing or removing the `www.` at the begin of a URL +* It blocks access to directories without a default document +* It blocks access to files that can expose sensitive information. +* It reduces MIME type security risks +* It forces compressing (gzipping) +* It tells the browser whether they should request a specific file from the + server or whether they should grab it from the browser's cache + +When using `.htaccess` we recommend reading all inline comments (the rules after +a `#`) in the file once. There is a bunch of optional stuff in it. + +If you want to know more about the `.htaccess` file check out +https://httpd.apache.org/docs/current/howto/htaccess.html. + +Notice that the original repo for the `.htaccess` file is [this +one](https://github.com/h5bp/server-configs-apache). + + +## crossdomain.xml + +The _cross-domain policy file_ is an XML document that gives a web client — +such as Adobe Flash Player, Adobe Reader, etc. — permission to handle data +across multiple domains, by: + + * granting read access to data + * permitting the client to include custom headers in cross-domain requests + * granting permissions for socket-based connections + +__e.g.__ If a client hosts content from a particular source domain and that +content makes requests directed towards a domain other than its own, the remote +domain would need to host a cross-domain policy file in order to grant access +to the source domain and allow the client to continue with the transaction. + +For more in-depth information, please see Adobe's [cross-domain policy file +specification](https://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html). + + +## robots.txt + +The `robots.txt` file is used to give instructions to web robots on what can +be crawled from the website. + +By default, the file provided by this project includes the next two lines: + + * `User-agent: *` - the following rules apply to all web robots + * `Disallow:` - everything on the website is allowed to be crawled + +If you want to disallow certain pages you will need to specify the path in a +`Disallow` directive (e.g.: `Disallow: /path`) or, if you want to disallow +crawling of all content, use `Disallow: /`. + +The `/robots.txt` file is not intended for access control, so don't try to +use it as such. Think of it as a "No Entry" sign, rather than a locked door. +URLs disallowed by the `robots.txt` file might still be indexed without being +crawled, and the content from within the `robots.txt` file can be viewed by +anyone, potentially disclosing the location of your private content! So, if +you want to block access to private content, use proper authentication instead. + +For more information about `robots.txt`, please see: + + * [robotstxt.org](http://www.robotstxt.org/) + * [How Google handles the `robots.txt` file](https://developers.google.com/webmasters/control-crawl-index/docs/robots_txt) + + +## browserconfig.xml + +The `browserconfig.xml` file is used to customize the tile displayed when users +pin your site to the Windows 8.1 start screen. In there you can define custom +tile colors, custom images or even [live tiles](http://msdn.microsoft.com/en-us/library/ie/dn455106.aspx#CreatingLiveTiles). + +By default, the file points to 2 placeholder tile images: + +* `tile.png` (558x558px): used for `Small`, `Medium` and `Large` tiles. + This image resizes automatically when necessary. +* `tile-wide.png` (558x270px): user for `Wide` tiles. + +Notice that IE11 uses the same images when adding a site to the `favorites`. + +For more in-depth information about the `browserconfig.xml` file, please +see [MSDN](http://msdn.microsoft.com/en-us/library/ie/dn320426%28v=vs.85%29.aspx). diff --git a/public/app/bower_components/html5-boilerplate/doc/usage.md b/public/app/bower_components/html5-boilerplate/dist/doc/usage.md similarity index 73% rename from public/app/bower_components/html5-boilerplate/doc/usage.md rename to public/app/bower_components/html5-boilerplate/dist/doc/usage.md index df54996b..4c61b1bf 100644 --- a/public/app/bower_components/html5-boilerplate/doc/usage.md +++ b/public/app/bower_components/html5-boilerplate/dist/doc/usage.md @@ -10,8 +10,7 @@ usually involves the following: 2. Add some content, style, and functionality. 3. Run your site locally to see how it looks. 4. (Optionally run a build script to automate the optimization of your site - - e.g. [ant build script](https://github.com/h5bp/ant-build-script) or [node - build script](https://github.com/h5bp/node-build-script)). + e.g. [ant build script](https://github.com/h5bp/ant-build-script)) 5. Deploy your site. @@ -32,14 +31,18 @@ A basic HTML5 Boilerplate site initially looks something like this: │ └── vendor │ ├── jquery.min.js │ └── modernizr.min.js +├── .editorconfig ├── .htaccess ├── 404.html -├── apple-touch-icon-precomposed.png +├── apple-touch-icon.png +├── browserconfig.xml ├── index.html ├── humans.txt ├── robots.txt ├── crossdomain.xml -└── favicon.ico +├── favicon.ico +├── tile-wide.png +└── tile.png ``` What follows is a general overview of each major part and how to use them. @@ -65,7 +68,7 @@ get you started. [About the JavaScript](js.md). The default web server configs are for Apache. For more information, please refer to the [Apache Server Configs -documentation](https://github.com/h5bp/server-configs-apache/tree/master/doc). +repository](https://github.com/h5bp/server-configs-apache). Host your site on a server other than Apache? You're likely to find the corresponding server configs project listed in our [Server Configs @@ -75,6 +78,19 @@ corresponding server configs project listed in our [Server Configs A helpful custom 404 to get you started. +### browserconfig.xml + +This file contains all settings regarding custom tiles for IE11. + +For more info on this topic, please refer to +[MSDN](http://msdn.microsoft.com/en-us/library/ie/dn455106.aspx). + +### .editorconfig + +The `.editorconfig` file is provided in order to encourage and help you and +your team to maintain consistent coding styles between different +editors and IDEs. [Read more about the `.editorconfig` file](misc.md#editorconfig). + ### index.html This is the default HTML skeleton that should form the basis of all pages on @@ -84,8 +100,8 @@ need to integrate this starting HTML with your setup. Make sure that you update the URLs for the referenced CSS and JavaScript if you modify the directory structure at all. -If you are using Google Analytics, make sure that you edit the corresponding -snippet at the bottom to include your analytics ID. +If you are using Google Universal Analytics, make sure that you edit the +corresponding snippet at the bottom to include your analytics ID. ### humans.txt @@ -99,15 +115,16 @@ Edit this file to include any pages you need hidden from search engines. ### crossdomain.xml A template for working with cross-domain requests. [About -crossdomain.xml](crossdomain.md). +crossdomain.xml](misc.md#crossdomainxml). ### Icons -Replace the default `favicon.ico` and Apple Touch Icon with your own. +Replace the default `favicon.ico`, `tile.png`, `tile-wide.png` and Apple +Touch Icon with your own. If you want to use different Apple Touch Icons for different resolutions please refer to the [according documentation](extend.md#apple-touch-icons). You might want to check out Hans' handy [HTML5 Boilerplate Favicon and Apple Touch Icon -PSD-Template](http://drublic.de/blog/html5-boilerplate-favicons-psd-template/). +PSD-Template](https://drublic.de/blog/html5-boilerplate-favicons-psd-template/). diff --git a/public/app/bower_components/html5-boilerplate/favicon.ico b/public/app/bower_components/html5-boilerplate/dist/favicon.ico similarity index 100% rename from public/app/bower_components/html5-boilerplate/favicon.ico rename to public/app/bower_components/html5-boilerplate/dist/favicon.ico diff --git a/public/app/bower_components/html5-boilerplate/humans.txt b/public/app/bower_components/html5-boilerplate/dist/humans.txt similarity index 66% rename from public/app/bower_components/html5-boilerplate/humans.txt rename to public/app/bower_components/html5-boilerplate/dist/humans.txt index d9e1bb98..8d2330fd 100644 --- a/public/app/bower_components/html5-boilerplate/humans.txt +++ b/public/app/bower_components/html5-boilerplate/dist/humans.txt @@ -11,5 +11,5 @@ # TECHNOLOGY COLOPHON - HTML5, CSS3 - Normalize.css, jQuery, Modernizr + CSS3, HTML5 + Apache Server Configs, jQuery, Modernizr, Normalize.css diff --git a/public/app/bower_components/html5-boilerplate/img/.gitignore b/public/app/bower_components/html5-boilerplate/dist/img/.gitignore similarity index 100% rename from public/app/bower_components/html5-boilerplate/img/.gitignore rename to public/app/bower_components/html5-boilerplate/dist/img/.gitignore diff --git a/public/app/bower_components/html5-boilerplate/index.html b/public/app/bower_components/html5-boilerplate/dist/index.html similarity index 59% rename from public/app/bower_components/html5-boilerplate/index.html rename to public/app/bower_components/html5-boilerplate/dist/index.html index dbc6abcc..6cbd28fb 100644 --- a/public/app/bower_components/html5-boilerplate/index.html +++ b/public/app/bower_components/html5-boilerplate/dist/index.html @@ -1,8 +1,5 @@ -<!DOCTYPE html> -<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]--> -<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]--> -<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]--> -<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]--> +<!doctype html> +<html class="no-js" lang=""> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> @@ -10,22 +7,23 @@ <meta name="description" content=""> <meta name="viewport" content="width=device-width, initial-scale=1"> - <!-- Place favicon.ico and apple-touch-icon.png in the root directory --> + <link rel="apple-touch-icon" href="apple-touch-icon.png"> + <!-- Place favicon.ico in the root directory --> <link rel="stylesheet" href="css/normalize.css"> <link rel="stylesheet" href="css/main.css"> - <script src="js/vendor/modernizr-2.6.2.min.js"></script> + <script src="js/vendor/modernizr-2.8.3.min.js"></script> </head> <body> - <!--[if lt IE 7]> - <p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p> + <!--[if lt IE 8]> + <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p> <![endif]--> <!-- Add your site or application content here --> <p>Hello world! This is HTML5 Boilerplate.</p> - <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> - <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.10.2.min.js"><\/script>')</script> + <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> + <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.11.2.min.js"><\/script>')</script> <script src="js/plugins.js"></script> <script src="js/main.js"></script> @@ -36,7 +34,7 @@ e=o.createElement(i);r=o.getElementsByTagName(i)[0]; e.src='//www.google-analytics.com/analytics.js'; r.parentNode.insertBefore(e,r)}(window,document,'script','ga')); - ga('create','UA-XXXXX-X');ga('send','pageview'); + ga('create','UA-XXXXX-X','auto');ga('send','pageview'); </script> </body> </html> diff --git a/public/app/bower_components/html5-boilerplate/dist/js/main.js b/public/app/bower_components/html5-boilerplate/dist/js/main.js new file mode 100644 index 00000000..e69de29b diff --git a/public/app/bower_components/html5-boilerplate/js/plugins.js b/public/app/bower_components/html5-boilerplate/dist/js/plugins.js similarity index 91% rename from public/app/bower_components/html5-boilerplate/js/plugins.js rename to public/app/bower_components/html5-boilerplate/dist/js/plugins.js index 728680b0..f8874802 100644 --- a/public/app/bower_components/html5-boilerplate/js/plugins.js +++ b/public/app/bower_components/html5-boilerplate/dist/js/plugins.js @@ -6,7 +6,7 @@ 'assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'error', 'exception', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log', 'markTimeline', 'profile', 'profileEnd', 'table', 'time', 'timeEnd', - 'timeStamp', 'trace', 'warn' + 'timeline', 'timelineEnd', 'timeStamp', 'trace', 'warn' ]; var length = methods.length; var console = (window.console = window.console || {}); diff --git a/public/app/bower_components/html5-boilerplate/dist/js/vendor/jquery-1.11.2.min.js b/public/app/bower_components/html5-boilerplate/dist/js/vendor/jquery-1.11.2.min.js new file mode 100644 index 00000000..826372a2 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/js/vendor/jquery-1.11.2.min.js @@ -0,0 +1,5 @@ +/*! jQuery v1.11.2 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */ +!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l="1.11.2",m=function(a,b){return new m.fn.init(a,b)},n=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,o=/^-ms-/,p=/-([\da-z])/gi,q=function(a,b){return b.toUpperCase()};m.fn=m.prototype={jquery:l,constructor:m,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=m.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return m.each(this,a,b)},map:function(a){return this.pushStack(m.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},m.extend=m.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||m.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(e=arguments[h]))for(d in e)a=g[d],c=e[d],g!==c&&(j&&c&&(m.isPlainObject(c)||(b=m.isArray(c)))?(b?(b=!1,f=a&&m.isArray(a)?a:[]):f=a&&m.isPlainObject(a)?a:{},g[d]=m.extend(j,f,c)):void 0!==c&&(g[d]=c));return g},m.extend({expando:"jQuery"+(l+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===m.type(a)},isArray:Array.isArray||function(a){return"array"===m.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){return!m.isArray(a)&&a-parseFloat(a)+1>=0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},isPlainObject:function(a){var b;if(!a||"object"!==m.type(a)||a.nodeType||m.isWindow(a))return!1;try{if(a.constructor&&!j.call(a,"constructor")&&!j.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}if(k.ownLast)for(b in a)return j.call(a,b);for(b in a);return void 0===b||j.call(a,b)},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(b){b&&m.trim(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(o,"ms-").replace(p,q)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=r(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(n,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(r(Object(a))?m.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){var d;if(b){if(g)return g.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;d>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,b){var c=+b.length,d=0,e=a.length;while(c>d)a[e++]=b[d++];if(c!==c)while(void 0!==b[d])a[e++]=b[d++];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=r(a),i=[];if(h)for(;g>f;f++)d=b(a[f],f,c),null!=d&&i.push(d);else for(f in a)d=b(a[f],f,c),null!=d&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(f=a[b],b=a,a=f),m.isFunction(a)?(c=d.call(arguments,2),e=function(){return a.apply(b||this,c.concat(d.call(arguments)))},e.guid=a.guid=a.guid||m.guid++,e):void 0},now:function(){return+new Date},support:k}),m.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});function r(a){var b=a.length,c=m.type(a);return"function"===c||m.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var s=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=hb(),z=hb(),A=hb(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N=M.replace("w","w#"),O="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+N+"))|)"+L+"*\\]",P=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+O+")*)|.*)\\)|)",Q=new RegExp(L+"+","g"),R=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),S=new RegExp("^"+L+"*,"+L+"*"),T=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),U=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),V=new RegExp(P),W=new RegExp("^"+N+"$"),X={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+O),PSEUDO:new RegExp("^"+P),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ab=/[+~]/,bb=/'|\\/g,cb=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),db=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},eb=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(fb){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function gb(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],k=b.nodeType,"string"!=typeof a||!a||1!==k&&9!==k&&11!==k)return d;if(!e&&p){if(11!==k&&(f=_.exec(a)))if(j=f[1]){if(9===k){if(h=b.getElementById(j),!h||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return H.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName)return H.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=1!==k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){o=g(a),(r=b.getAttribute("id"))?s=r.replace(bb,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;while(l--)o[l]=s+rb(o[l]);w=ab.test(a)&&pb(b.parentNode)||b,x=o.join(",")}if(x)try{return H.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function hb(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ib(a){return a[u]=!0,a}function jb(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function kb(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function lb(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function mb(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function nb(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function ob(a){return ib(function(b){return b=+b,ib(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function pb(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=gb.support={},f=gb.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=gb.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=g.documentElement,e=g.defaultView,e&&e!==e.top&&(e.addEventListener?e.addEventListener("unload",eb,!1):e.attachEvent&&e.attachEvent("onunload",eb)),p=!f(g),c.attributes=jb(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=jb(function(a){return a.appendChild(g.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(g.getElementsByClassName),c.getById=jb(function(a){return o.appendChild(a).id=u,!g.getElementsByName||!g.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(g.querySelectorAll))&&(jb(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\f]' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),jb(function(a){var b=g.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&jb(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",P)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===g||a.ownerDocument===v&&t(v,a)?-1:b===g||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,h=[a],i=[b];if(!e||!f)return a===g?-1:b===g?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return lb(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)i.unshift(c);while(h[d]===i[d])d++;return d?lb(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},g):n},gb.matches=function(a,b){return gb(a,null,null,b)},gb.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return gb(b,n,null,[a]).length>0},gb.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},gb.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},gb.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},gb.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=gb.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=gb.selectors={cacheLength:50,createPseudo:ib,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(cb,db),a[3]=(a[3]||a[4]||a[5]||"").replace(cb,db),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||gb.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&gb.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(cb,db).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=gb.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(Q," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(s&&((l[u]||(l[u]={}))[a]=[w,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||gb.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ib(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ib(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?ib(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ib(function(a){return function(b){return gb(a,b).length>0}}),contains:ib(function(a){return a=a.replace(cb,db),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ib(function(a){return W.test(a||"")||gb.error("unsupported lang: "+a),a=a.replace(cb,db).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)},input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:ob(function(){return[0]}),last:ob(function(a,b){return[b-1]}),eq:ob(function(a,b,c){return[0>c?c+b:c]}),even:ob(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:ob(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:ob(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:ob(function(a,b,c){for(var d=0>c?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=mb(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=nb(b);function qb(){}qb.prototype=d.filters=d.pseudos,d.setFilters=new qb,g=gb.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){(!c||(e=S.exec(h)))&&(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=T.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(R," ")}),h=h.slice(c.length));for(g in d.filter)!(e=X[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?gb.error(a):z(a,i).slice(0)};function rb(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function sb(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function tb(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ub(a,b,c){for(var d=0,e=b.length;e>d;d++)gb(a,b[d],c);return c}function vb(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function wb(a,b,c,d,e,f){return d&&!d[u]&&(d=wb(d)),e&&!e[u]&&(e=wb(e,f)),ib(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ub(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:vb(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=vb(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=vb(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function xb(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=sb(function(a){return a===b},h,!0),l=sb(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[sb(tb(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return wb(i>1&&tb(m),i>1&&rb(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&xb(a.slice(i,e)),f>e&&xb(a=a.slice(e)),f>e&&rb(a))}m.push(c)}return tb(m)}function yb(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){m=0;while(o=a[m++])if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){m=0;while(o=b[m++])o(r,s,g,h);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=F.call(i));s=vb(s)}H.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&gb.uniqueSort(i)}return k&&(w=v,j=t),r};return c?ib(f):f}return h=gb.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=xb(b[c]),f[u]?d.push(f):e.push(f);f=A(a,yb(e,d)),f.selector=a}return f},i=gb.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(cb,db),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=X.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(cb,db),ab.test(j[0].type)&&pb(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&rb(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,ab.test(a)&&pb(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=jb(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),jb(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||kb("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&jb(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||kb("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),jb(function(a){return null==a.getAttribute("disabled")})||kb(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),gb}(a);m.find=s,m.expr=s.selectors,m.expr[":"]=m.expr.pseudos,m.unique=s.uniqueSort,m.text=s.getText,m.isXMLDoc=s.isXML,m.contains=s.contains;var t=m.expr.match.needsContext,u=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,v=/^.[^:#\[\.,]*$/;function w(a,b,c){if(m.isFunction(b))return m.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return m.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(v.test(b))return m.filter(b,a,c);b=m.filter(b,a)}return m.grep(a,function(a){return m.inArray(a,b)>=0!==c})}m.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?m.find.matchesSelector(d,a)?[d]:[]:m.find.matches(a,m.grep(b,function(a){return 1===a.nodeType}))},m.fn.extend({find:function(a){var b,c=[],d=this,e=d.length;if("string"!=typeof a)return this.pushStack(m(a).filter(function(){for(b=0;e>b;b++)if(m.contains(d[b],this))return!0}));for(b=0;e>b;b++)m.find(a,d[b],c);return c=this.pushStack(e>1?m.unique(c):c),c.selector=this.selector?this.selector+" "+a:a,c},filter:function(a){return this.pushStack(w(this,a||[],!1))},not:function(a){return this.pushStack(w(this,a||[],!0))},is:function(a){return!!w(this,"string"==typeof a&&t.test(a)?m(a):a||[],!1).length}});var x,y=a.document,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,A=m.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&a.length>=3?[null,a,null]:z.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||x).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof m?b[0]:b,m.merge(this,m.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:y,!0)),u.test(c[1])&&m.isPlainObject(b))for(c in b)m.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}if(d=y.getElementById(c[2]),d&&d.parentNode){if(d.id!==c[2])return x.find(a);this.length=1,this[0]=d}return this.context=y,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):m.isFunction(a)?"undefined"!=typeof x.ready?x.ready(a):a(m):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),m.makeArray(a,this))};A.prototype=m.fn,x=m(y);var B=/^(?:parents|prev(?:Until|All))/,C={children:!0,contents:!0,next:!0,prev:!0};m.extend({dir:function(a,b,c){var d=[],e=a[b];while(e&&9!==e.nodeType&&(void 0===c||1!==e.nodeType||!m(e).is(c)))1===e.nodeType&&d.push(e),e=e[b];return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),m.fn.extend({has:function(a){var b,c=m(a,this),d=c.length;return this.filter(function(){for(b=0;d>b;b++)if(m.contains(this,c[b]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=t.test(a)||"string"!=typeof a?m(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&m.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?m.unique(f):f)},index:function(a){return a?"string"==typeof a?m.inArray(this[0],m(a)):m.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(m.unique(m.merge(this.get(),m(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function D(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}m.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return m.dir(a,"parentNode")},parentsUntil:function(a,b,c){return m.dir(a,"parentNode",c)},next:function(a){return D(a,"nextSibling")},prev:function(a){return D(a,"previousSibling")},nextAll:function(a){return m.dir(a,"nextSibling")},prevAll:function(a){return m.dir(a,"previousSibling")},nextUntil:function(a,b,c){return m.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return m.dir(a,"previousSibling",c)},siblings:function(a){return m.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return m.sibling(a.firstChild)},contents:function(a){return m.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:m.merge([],a.childNodes)}},function(a,b){m.fn[a]=function(c,d){var e=m.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=m.filter(d,e)),this.length>1&&(C[a]||(e=m.unique(e)),B.test(a)&&(e=e.reverse())),this.pushStack(e)}});var E=/\S+/g,F={};function G(a){var b=F[a]={};return m.each(a.match(E)||[],function(a,c){b[c]=!0}),b}m.Callbacks=function(a){a="string"==typeof a?F[a]||G(a):m.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(c=a.memory&&l,d=!0,f=g||0,g=0,e=h.length,b=!0;h&&e>f;f++)if(h[f].apply(l[0],l[1])===!1&&a.stopOnFalse){c=!1;break}b=!1,h&&(i?i.length&&j(i.shift()):c?h=[]:k.disable())},k={add:function(){if(h){var d=h.length;!function f(b){m.each(b,function(b,c){var d=m.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&f(c)})}(arguments),b?e=h.length:c&&(g=d,j(c))}return this},remove:function(){return h&&m.each(arguments,function(a,c){var d;while((d=m.inArray(c,h,d))>-1)h.splice(d,1),b&&(e>=d&&e--,f>=d&&f--)}),this},has:function(a){return a?m.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],e=0,this},disable:function(){return h=i=c=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,c||k.disable(),this},locked:function(){return!i},fireWith:function(a,c){return!h||d&&!i||(c=c||[],c=[a,c.slice?c.slice():c],b?i.push(c):j(c)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!d}};return k},m.extend({Deferred:function(a){var b=[["resolve","done",m.Callbacks("once memory"),"resolved"],["reject","fail",m.Callbacks("once memory"),"rejected"],["notify","progress",m.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return m.Deferred(function(c){m.each(b,function(b,f){var g=m.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&m.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?m.extend(a,d):d}},e={};return d.pipe=d.then,m.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&m.isFunction(a.promise)?e:0,g=1===f?a:m.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&m.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var H;m.fn.ready=function(a){return m.ready.promise().done(a),this},m.extend({isReady:!1,readyWait:1,holdReady:function(a){a?m.readyWait++:m.ready(!0)},ready:function(a){if(a===!0?!--m.readyWait:!m.isReady){if(!y.body)return setTimeout(m.ready);m.isReady=!0,a!==!0&&--m.readyWait>0||(H.resolveWith(y,[m]),m.fn.triggerHandler&&(m(y).triggerHandler("ready"),m(y).off("ready")))}}});function I(){y.addEventListener?(y.removeEventListener("DOMContentLoaded",J,!1),a.removeEventListener("load",J,!1)):(y.detachEvent("onreadystatechange",J),a.detachEvent("onload",J))}function J(){(y.addEventListener||"load"===event.type||"complete"===y.readyState)&&(I(),m.ready())}m.ready.promise=function(b){if(!H)if(H=m.Deferred(),"complete"===y.readyState)setTimeout(m.ready);else if(y.addEventListener)y.addEventListener("DOMContentLoaded",J,!1),a.addEventListener("load",J,!1);else{y.attachEvent("onreadystatechange",J),a.attachEvent("onload",J);var c=!1;try{c=null==a.frameElement&&y.documentElement}catch(d){}c&&c.doScroll&&!function e(){if(!m.isReady){try{c.doScroll("left")}catch(a){return setTimeout(e,50)}I(),m.ready()}}()}return H.promise(b)};var K="undefined",L;for(L in m(k))break;k.ownLast="0"!==L,k.inlineBlockNeedsLayout=!1,m(function(){var a,b,c,d;c=y.getElementsByTagName("body")[0],c&&c.style&&(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),typeof b.style.zoom!==K&&(b.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1",k.inlineBlockNeedsLayout=a=3===b.offsetWidth,a&&(c.style.zoom=1)),c.removeChild(d))}),function(){var a=y.createElement("div");if(null==k.deleteExpando){k.deleteExpando=!0;try{delete a.test}catch(b){k.deleteExpando=!1}}a=null}(),m.acceptData=function(a){var b=m.noData[(a.nodeName+" ").toLowerCase()],c=+a.nodeType||1;return 1!==c&&9!==c?!1:!b||b!==!0&&a.getAttribute("classid")===b};var M=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,N=/([A-Z])/g;function O(a,b,c){if(void 0===c&&1===a.nodeType){var d="data-"+b.replace(N,"-$1").toLowerCase();if(c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:M.test(c)?m.parseJSON(c):c}catch(e){}m.data(a,b,c)}else c=void 0}return c}function P(a){var b;for(b in a)if(("data"!==b||!m.isEmptyObject(a[b]))&&"toJSON"!==b)return!1; +return!0}function Q(a,b,d,e){if(m.acceptData(a)){var f,g,h=m.expando,i=a.nodeType,j=i?m.cache:a,k=i?a[h]:a[h]&&h;if(k&&j[k]&&(e||j[k].data)||void 0!==d||"string"!=typeof b)return k||(k=i?a[h]=c.pop()||m.guid++:h),j[k]||(j[k]=i?{}:{toJSON:m.noop}),("object"==typeof b||"function"==typeof b)&&(e?j[k]=m.extend(j[k],b):j[k].data=m.extend(j[k].data,b)),g=j[k],e||(g.data||(g.data={}),g=g.data),void 0!==d&&(g[m.camelCase(b)]=d),"string"==typeof b?(f=g[b],null==f&&(f=g[m.camelCase(b)])):f=g,f}}function R(a,b,c){if(m.acceptData(a)){var d,e,f=a.nodeType,g=f?m.cache:a,h=f?a[m.expando]:m.expando;if(g[h]){if(b&&(d=c?g[h]:g[h].data)){m.isArray(b)?b=b.concat(m.map(b,m.camelCase)):b in d?b=[b]:(b=m.camelCase(b),b=b in d?[b]:b.split(" ")),e=b.length;while(e--)delete d[b[e]];if(c?!P(d):!m.isEmptyObject(d))return}(c||(delete g[h].data,P(g[h])))&&(f?m.cleanData([a],!0):k.deleteExpando||g!=g.window?delete g[h]:g[h]=null)}}}m.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(a){return a=a.nodeType?m.cache[a[m.expando]]:a[m.expando],!!a&&!P(a)},data:function(a,b,c){return Q(a,b,c)},removeData:function(a,b){return R(a,b)},_data:function(a,b,c){return Q(a,b,c,!0)},_removeData:function(a,b){return R(a,b,!0)}}),m.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=m.data(f),1===f.nodeType&&!m._data(f,"parsedAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=m.camelCase(d.slice(5)),O(f,d,e[d])));m._data(f,"parsedAttrs",!0)}return e}return"object"==typeof a?this.each(function(){m.data(this,a)}):arguments.length>1?this.each(function(){m.data(this,a,b)}):f?O(f,a,m.data(f,a)):void 0},removeData:function(a){return this.each(function(){m.removeData(this,a)})}}),m.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=m._data(a,b),c&&(!d||m.isArray(c)?d=m._data(a,b,m.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=m.queue(a,b),d=c.length,e=c.shift(),f=m._queueHooks(a,b),g=function(){m.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return m._data(a,c)||m._data(a,c,{empty:m.Callbacks("once memory").add(function(){m._removeData(a,b+"queue"),m._removeData(a,c)})})}}),m.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?m.queue(this[0],a):void 0===b?this:this.each(function(){var c=m.queue(this,a,b);m._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&m.dequeue(this,a)})},dequeue:function(a){return this.each(function(){m.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=m.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};"string"!=typeof a&&(b=a,a=void 0),a=a||"fx";while(g--)c=m._data(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var S=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=["Top","Right","Bottom","Left"],U=function(a,b){return a=b||a,"none"===m.css(a,"display")||!m.contains(a.ownerDocument,a)},V=m.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===m.type(c)){e=!0;for(h in c)m.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,m.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(m(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},W=/^(?:checkbox|radio)$/i;!function(){var a=y.createElement("input"),b=y.createElement("div"),c=y.createDocumentFragment();if(b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",k.leadingWhitespace=3===b.firstChild.nodeType,k.tbody=!b.getElementsByTagName("tbody").length,k.htmlSerialize=!!b.getElementsByTagName("link").length,k.html5Clone="<:nav></:nav>"!==y.createElement("nav").cloneNode(!0).outerHTML,a.type="checkbox",a.checked=!0,c.appendChild(a),k.appendChecked=a.checked,b.innerHTML="<textarea>x</textarea>",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue,c.appendChild(b),b.innerHTML="<input type='radio' checked='checked' name='t'/>",k.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,k.noCloneEvent=!0,b.attachEvent&&(b.attachEvent("onclick",function(){k.noCloneEvent=!1}),b.cloneNode(!0).click()),null==k.deleteExpando){k.deleteExpando=!0;try{delete b.test}catch(d){k.deleteExpando=!1}}}(),function(){var b,c,d=y.createElement("div");for(b in{submit:!0,change:!0,focusin:!0})c="on"+b,(k[b+"Bubbles"]=c in a)||(d.setAttribute(c,"t"),k[b+"Bubbles"]=d.attributes[c].expando===!1);d=null}();var X=/^(?:input|select|textarea)$/i,Y=/^key/,Z=/^(?:mouse|pointer|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=/^([^.]*)(?:\.(.+)|)$/;function ab(){return!0}function bb(){return!1}function cb(){try{return y.activeElement}catch(a){}}m.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m._data(a);if(r){c.handler&&(i=c,c=i.handler,e=i.selector),c.guid||(c.guid=m.guid++),(g=r.events)||(g=r.events={}),(k=r.handle)||(k=r.handle=function(a){return typeof m===K||a&&m.event.triggered===a.type?void 0:m.event.dispatch.apply(k.elem,arguments)},k.elem=a),b=(b||"").match(E)||[""],h=b.length;while(h--)f=_.exec(b[h])||[],o=q=f[1],p=(f[2]||"").split(".").sort(),o&&(j=m.event.special[o]||{},o=(e?j.delegateType:j.bindType)||o,j=m.event.special[o]||{},l=m.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&m.expr.match.needsContext.test(e),namespace:p.join(".")},i),(n=g[o])||(n=g[o]=[],n.delegateCount=0,j.setup&&j.setup.call(a,d,p,k)!==!1||(a.addEventListener?a.addEventListener(o,k,!1):a.attachEvent&&a.attachEvent("on"+o,k))),j.add&&(j.add.call(a,l),l.handler.guid||(l.handler.guid=c.guid)),e?n.splice(n.delegateCount++,0,l):n.push(l),m.event.global[o]=!0);a=null}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m.hasData(a)&&m._data(a);if(r&&(k=r.events)){b=(b||"").match(E)||[""],j=b.length;while(j--)if(h=_.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=m.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,n=k[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),i=f=n.length;while(f--)g=n[f],!e&&q!==g.origType||c&&c.guid!==g.guid||h&&!h.test(g.namespace)||d&&d!==g.selector&&("**"!==d||!g.selector)||(n.splice(f,1),g.selector&&n.delegateCount--,l.remove&&l.remove.call(a,g));i&&!n.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||m.removeEvent(a,o,r.handle),delete k[o])}else for(o in k)m.event.remove(a,o+b[j],c,d,!0);m.isEmptyObject(k)&&(delete r.handle,m._removeData(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,l,n,o=[d||y],p=j.call(b,"type")?b.type:b,q=j.call(b,"namespace")?b.namespace.split("."):[];if(h=l=d=d||y,3!==d.nodeType&&8!==d.nodeType&&!$.test(p+m.event.triggered)&&(p.indexOf(".")>=0&&(q=p.split("."),p=q.shift(),q.sort()),g=p.indexOf(":")<0&&"on"+p,b=b[m.expando]?b:new m.Event(p,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=q.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:m.makeArray(c,[b]),k=m.event.special[p]||{},e||!k.trigger||k.trigger.apply(d,c)!==!1)){if(!e&&!k.noBubble&&!m.isWindow(d)){for(i=k.delegateType||p,$.test(i+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),l=h;l===(d.ownerDocument||y)&&o.push(l.defaultView||l.parentWindow||a)}n=0;while((h=o[n++])&&!b.isPropagationStopped())b.type=n>1?i:k.bindType||p,f=(m._data(h,"events")||{})[b.type]&&m._data(h,"handle"),f&&f.apply(h,c),f=g&&h[g],f&&f.apply&&m.acceptData(h)&&(b.result=f.apply(h,c),b.result===!1&&b.preventDefault());if(b.type=p,!e&&!b.isDefaultPrevented()&&(!k._default||k._default.apply(o.pop(),c)===!1)&&m.acceptData(d)&&g&&d[p]&&!m.isWindow(d)){l=d[g],l&&(d[g]=null),m.event.triggered=p;try{d[p]()}catch(r){}m.event.triggered=void 0,l&&(d[g]=l)}return b.result}},dispatch:function(a){a=m.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(m._data(this,"events")||{})[a.type]||[],k=m.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=m.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,g=0;while((e=f.handlers[g++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(e.namespace))&&(a.handleObj=e,a.data=e.data,c=((m.event.special[e.origType]||{}).handle||e.handler).apply(f.elem,i),void 0!==c&&(a.result=c)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!=this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(e=[],f=0;h>f;f++)d=b[f],c=d.selector+" ",void 0===e[c]&&(e[c]=d.needsContext?m(c,this).index(i)>=0:m.find(c,this,null,[i]).length),e[c]&&e.push(d);e.length&&g.push({elem:i,handlers:e})}return h<b.length&&g.push({elem:this,handlers:b.slice(h)}),g},fix:function(a){if(a[m.expando])return a;var b,c,d,e=a.type,f=a,g=this.fixHooks[e];g||(this.fixHooks[e]=g=Z.test(e)?this.mouseHooks:Y.test(e)?this.keyHooks:{}),d=g.props?this.props.concat(g.props):this.props,a=new m.Event(f),b=d.length;while(b--)c=d[b],a[c]=f[c];return a.target||(a.target=f.srcElement||y),3===a.target.nodeType&&(a.target=a.target.parentNode),a.metaKey=!!a.metaKey,g.filter?g.filter(a,f):a},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,d,e,f=b.button,g=b.fromElement;return null==a.pageX&&null!=b.clientX&&(d=a.target.ownerDocument||y,e=d.documentElement,c=d.body,a.pageX=b.clientX+(e&&e.scrollLeft||c&&c.scrollLeft||0)-(e&&e.clientLeft||c&&c.clientLeft||0),a.pageY=b.clientY+(e&&e.scrollTop||c&&c.scrollTop||0)-(e&&e.clientTop||c&&c.clientTop||0)),!a.relatedTarget&&g&&(a.relatedTarget=g===a.target?b.toElement:g),a.which||void 0===f||(a.which=1&f?1:2&f?3:4&f?2:0),a}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==cb()&&this.focus)try{return this.focus(),!1}catch(a){}},delegateType:"focusin"},blur:{trigger:function(){return this===cb()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return m.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):void 0},_default:function(a){return m.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}},simulate:function(a,b,c,d){var e=m.extend(new m.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?m.event.trigger(e,null,b):m.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},m.removeEvent=y.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){var d="on"+b;a.detachEvent&&(typeof a[d]===K&&(a[d]=null),a.detachEvent(d,c))},m.Event=function(a,b){return this instanceof m.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?ab:bb):this.type=a,b&&m.extend(this,b),this.timeStamp=a&&a.timeStamp||m.now(),void(this[m.expando]=!0)):new m.Event(a,b)},m.Event.prototype={isDefaultPrevented:bb,isPropagationStopped:bb,isImmediatePropagationStopped:bb,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=ab,a&&(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=ab,a&&(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=ab,a&&a.stopImmediatePropagation&&a.stopImmediatePropagation(),this.stopPropagation()}},m.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){m.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return(!e||e!==d&&!m.contains(d,e))&&(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),k.submitBubbles||(m.event.special.submit={setup:function(){return m.nodeName(this,"form")?!1:void m.event.add(this,"click._submit keypress._submit",function(a){var b=a.target,c=m.nodeName(b,"input")||m.nodeName(b,"button")?b.form:void 0;c&&!m._data(c,"submitBubbles")&&(m.event.add(c,"submit._submit",function(a){a._submit_bubble=!0}),m._data(c,"submitBubbles",!0))})},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&m.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){return m.nodeName(this,"form")?!1:void m.event.remove(this,"._submit")}}),k.changeBubbles||(m.event.special.change={setup:function(){return X.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(m.event.add(this,"propertychange._change",function(a){"checked"===a.originalEvent.propertyName&&(this._just_changed=!0)}),m.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1),m.event.simulate("change",this,a,!0)})),!1):void m.event.add(this,"beforeactivate._change",function(a){var b=a.target;X.test(b.nodeName)&&!m._data(b,"changeBubbles")&&(m.event.add(b,"change._change",function(a){!this.parentNode||a.isSimulated||a.isTrigger||m.event.simulate("change",this.parentNode,a,!0)}),m._data(b,"changeBubbles",!0))})},handle:function(a){var b=a.target;return this!==b||a.isSimulated||a.isTrigger||"radio"!==b.type&&"checkbox"!==b.type?a.handleObj.handler.apply(this,arguments):void 0},teardown:function(){return m.event.remove(this,"._change"),!X.test(this.nodeName)}}),k.focusinBubbles||m.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){m.event.simulate(b,a.target,m.event.fix(a),!0)};m.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=m._data(d,b);e||d.addEventListener(a,c,!0),m._data(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=m._data(d,b)-1;e?m._data(d,b,e):(d.removeEventListener(a,c,!0),m._removeData(d,b))}}}),m.fn.extend({on:function(a,b,c,d,e){var f,g;if("object"==typeof a){"string"!=typeof b&&(c=c||b,b=void 0);for(f in a)this.on(f,b,c,a[f],e);return this}if(null==c&&null==d?(d=b,c=b=void 0):null==d&&("string"==typeof b?(d=c,c=void 0):(d=c,c=b,b=void 0)),d===!1)d=bb;else if(!d)return this;return 1===e&&(g=d,d=function(a){return m().off(a),g.apply(this,arguments)},d.guid=g.guid||(g.guid=m.guid++)),this.each(function(){m.event.add(this,a,d,c,b)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,m(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return(b===!1||"function"==typeof b)&&(c=b,b=void 0),c===!1&&(c=bb),this.each(function(){m.event.remove(this,a,c,b)})},trigger:function(a,b){return this.each(function(){m.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];return c?m.event.trigger(a,b,c,!0):void 0}});function db(a){var b=eb.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}var eb="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",fb=/ jQuery\d+="(?:null|\d+)"/g,gb=new RegExp("<(?:"+eb+")[\\s/>]","i"),hb=/^\s+/,ib=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,jb=/<([\w:]+)/,kb=/<tbody/i,lb=/<|&#?\w+;/,mb=/<(?:script|style|link)/i,nb=/checked\s*(?:[^=]|=\s*.checked.)/i,ob=/^$|\/(?:java|ecma)script/i,pb=/^true\/(.*)/,qb=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,rb={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:k.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},sb=db(y),tb=sb.appendChild(y.createElement("div"));rb.optgroup=rb.option,rb.tbody=rb.tfoot=rb.colgroup=rb.caption=rb.thead,rb.th=rb.td;function ub(a,b){var c,d,e=0,f=typeof a.getElementsByTagName!==K?a.getElementsByTagName(b||"*"):typeof a.querySelectorAll!==K?a.querySelectorAll(b||"*"):void 0;if(!f)for(f=[],c=a.childNodes||a;null!=(d=c[e]);e++)!b||m.nodeName(d,b)?f.push(d):m.merge(f,ub(d,b));return void 0===b||b&&m.nodeName(a,b)?m.merge([a],f):f}function vb(a){W.test(a.type)&&(a.defaultChecked=a.checked)}function wb(a,b){return m.nodeName(a,"table")&&m.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function xb(a){return a.type=(null!==m.find.attr(a,"type"))+"/"+a.type,a}function yb(a){var b=pb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function zb(a,b){for(var c,d=0;null!=(c=a[d]);d++)m._data(c,"globalEval",!b||m._data(b[d],"globalEval"))}function Ab(a,b){if(1===b.nodeType&&m.hasData(a)){var c,d,e,f=m._data(a),g=m._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)m.event.add(b,c,h[c][d])}g.data&&(g.data=m.extend({},g.data))}}function Bb(a,b){var c,d,e;if(1===b.nodeType){if(c=b.nodeName.toLowerCase(),!k.noCloneEvent&&b[m.expando]){e=m._data(b);for(d in e.events)m.removeEvent(b,d,e.handle);b.removeAttribute(m.expando)}"script"===c&&b.text!==a.text?(xb(b).text=a.text,yb(b)):"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),k.html5Clone&&a.innerHTML&&!m.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&W.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.defaultSelected=b.selected=a.defaultSelected:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}}m.extend({clone:function(a,b,c){var d,e,f,g,h,i=m.contains(a.ownerDocument,a);if(k.html5Clone||m.isXMLDoc(a)||!gb.test("<"+a.nodeName+">")?f=a.cloneNode(!0):(tb.innerHTML=a.outerHTML,tb.removeChild(f=tb.firstChild)),!(k.noCloneEvent&&k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||m.isXMLDoc(a)))for(d=ub(f),h=ub(a),g=0;null!=(e=h[g]);++g)d[g]&&Bb(e,d[g]);if(b)if(c)for(h=h||ub(a),d=d||ub(f),g=0;null!=(e=h[g]);g++)Ab(e,d[g]);else Ab(a,f);return d=ub(f,"script"),d.length>0&&zb(d,!i&&ub(a,"script")),d=h=e=null,f},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,l,n=a.length,o=db(b),p=[],q=0;n>q;q++)if(f=a[q],f||0===f)if("object"===m.type(f))m.merge(p,f.nodeType?[f]:f);else if(lb.test(f)){h=h||o.appendChild(b.createElement("div")),i=(jb.exec(f)||["",""])[1].toLowerCase(),l=rb[i]||rb._default,h.innerHTML=l[1]+f.replace(ib,"<$1></$2>")+l[2],e=l[0];while(e--)h=h.lastChild;if(!k.leadingWhitespace&&hb.test(f)&&p.push(b.createTextNode(hb.exec(f)[0])),!k.tbody){f="table"!==i||kb.test(f)?"<table>"!==l[1]||kb.test(f)?0:h:h.firstChild,e=f&&f.childNodes.length;while(e--)m.nodeName(j=f.childNodes[e],"tbody")&&!j.childNodes.length&&f.removeChild(j)}m.merge(p,h.childNodes),h.textContent="";while(h.firstChild)h.removeChild(h.firstChild);h=o.lastChild}else p.push(b.createTextNode(f));h&&o.removeChild(h),k.appendChecked||m.grep(ub(p,"input"),vb),q=0;while(f=p[q++])if((!d||-1===m.inArray(f,d))&&(g=m.contains(f.ownerDocument,f),h=ub(o.appendChild(f),"script"),g&&zb(h),c)){e=0;while(f=h[e++])ob.test(f.type||"")&&c.push(f)}return h=null,o},cleanData:function(a,b){for(var d,e,f,g,h=0,i=m.expando,j=m.cache,l=k.deleteExpando,n=m.event.special;null!=(d=a[h]);h++)if((b||m.acceptData(d))&&(f=d[i],g=f&&j[f])){if(g.events)for(e in g.events)n[e]?m.event.remove(d,e):m.removeEvent(d,e,g.handle);j[f]&&(delete j[f],l?delete d[i]:typeof d.removeAttribute!==K?d.removeAttribute(i):d[i]=null,c.push(f))}}}),m.fn.extend({text:function(a){return V(this,function(a){return void 0===a?m.text(this):this.empty().append((this[0]&&this[0].ownerDocument||y).createTextNode(a))},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=wb(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=wb(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?m.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||m.cleanData(ub(c)),c.parentNode&&(b&&m.contains(c.ownerDocument,c)&&zb(ub(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++){1===a.nodeType&&m.cleanData(ub(a,!1));while(a.firstChild)a.removeChild(a.firstChild);a.options&&m.nodeName(a,"select")&&(a.options.length=0)}return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return m.clone(this,a,b)})},html:function(a){return V(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a)return 1===b.nodeType?b.innerHTML.replace(fb,""):void 0;if(!("string"!=typeof a||mb.test(a)||!k.htmlSerialize&&gb.test(a)||!k.leadingWhitespace&&hb.test(a)||rb[(jb.exec(a)||["",""])[1].toLowerCase()])){a=a.replace(ib,"<$1></$2>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(m.cleanData(ub(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,m.cleanData(ub(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,n=this,o=l-1,p=a[0],q=m.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&nb.test(p))return this.each(function(c){var d=n.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(i=m.buildFragment(a,this[0].ownerDocument,!1,this),c=i.firstChild,1===i.childNodes.length&&(i=c),c)){for(g=m.map(ub(i,"script"),xb),f=g.length;l>j;j++)d=i,j!==o&&(d=m.clone(d,!0,!0),f&&m.merge(g,ub(d,"script"))),b.call(this[j],d,j);if(f)for(h=g[g.length-1].ownerDocument,m.map(g,yb),j=0;f>j;j++)d=g[j],ob.test(d.type||"")&&!m._data(d,"globalEval")&&m.contains(h,d)&&(d.src?m._evalUrl&&m._evalUrl(d.src):m.globalEval((d.text||d.textContent||d.innerHTML||"").replace(qb,"")));i=c=null}return this}}),m.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){m.fn[a]=function(a){for(var c,d=0,e=[],g=m(a),h=g.length-1;h>=d;d++)c=d===h?this:this.clone(!0),m(g[d])[b](c),f.apply(e,c.get());return this.pushStack(e)}});var Cb,Db={};function Eb(b,c){var d,e=m(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:m.css(e[0],"display");return e.detach(),f}function Fb(a){var b=y,c=Db[a];return c||(c=Eb(a,b),"none"!==c&&c||(Cb=(Cb||m("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement),b=(Cb[0].contentWindow||Cb[0].contentDocument).document,b.write(),b.close(),c=Eb(a,b),Cb.detach()),Db[a]=c),c}!function(){var a;k.shrinkWrapBlocks=function(){if(null!=a)return a;a=!1;var b,c,d;return c=y.getElementsByTagName("body")[0],c&&c.style?(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),typeof b.style.zoom!==K&&(b.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:1px;width:1px;zoom:1",b.appendChild(y.createElement("div")).style.width="5px",a=3!==b.offsetWidth),c.removeChild(d),a):void 0}}();var Gb=/^margin/,Hb=new RegExp("^("+S+")(?!px)[a-z%]+$","i"),Ib,Jb,Kb=/^(top|right|bottom|left)$/;a.getComputedStyle?(Ib=function(b){return b.ownerDocument.defaultView.opener?b.ownerDocument.defaultView.getComputedStyle(b,null):a.getComputedStyle(b,null)},Jb=function(a,b,c){var d,e,f,g,h=a.style;return c=c||Ib(a),g=c?c.getPropertyValue(b)||c[b]:void 0,c&&(""!==g||m.contains(a.ownerDocument,a)||(g=m.style(a,b)),Hb.test(g)&&Gb.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0===g?g:g+""}):y.documentElement.currentStyle&&(Ib=function(a){return a.currentStyle},Jb=function(a,b,c){var d,e,f,g,h=a.style;return c=c||Ib(a),g=c?c[b]:void 0,null==g&&h&&h[b]&&(g=h[b]),Hb.test(g)&&!Kb.test(b)&&(d=h.left,e=a.runtimeStyle,f=e&&e.left,f&&(e.left=a.currentStyle.left),h.left="fontSize"===b?"1em":g,g=h.pixelLeft+"px",h.left=d,f&&(e.left=f)),void 0===g?g:g+""||"auto"});function Lb(a,b){return{get:function(){var c=a();if(null!=c)return c?void delete this.get:(this.get=b).apply(this,arguments)}}}!function(){var b,c,d,e,f,g,h;if(b=y.createElement("div"),b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",d=b.getElementsByTagName("a")[0],c=d&&d.style){c.cssText="float:left;opacity:.5",k.opacity="0.5"===c.opacity,k.cssFloat=!!c.cssFloat,b.style.backgroundClip="content-box",b.cloneNode(!0).style.backgroundClip="",k.clearCloneStyle="content-box"===b.style.backgroundClip,k.boxSizing=""===c.boxSizing||""===c.MozBoxSizing||""===c.WebkitBoxSizing,m.extend(k,{reliableHiddenOffsets:function(){return null==g&&i(),g},boxSizingReliable:function(){return null==f&&i(),f},pixelPosition:function(){return null==e&&i(),e},reliableMarginRight:function(){return null==h&&i(),h}});function i(){var b,c,d,i;c=y.getElementsByTagName("body")[0],c&&c.style&&(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),b.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",e=f=!1,h=!0,a.getComputedStyle&&(e="1%"!==(a.getComputedStyle(b,null)||{}).top,f="4px"===(a.getComputedStyle(b,null)||{width:"4px"}).width,i=b.appendChild(y.createElement("div")),i.style.cssText=b.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",i.style.marginRight=i.style.width="0",b.style.width="1px",h=!parseFloat((a.getComputedStyle(i,null)||{}).marginRight),b.removeChild(i)),b.innerHTML="<table><tr><td></td><td>t</td></tr></table>",i=b.getElementsByTagName("td"),i[0].style.cssText="margin:0;border:0;padding:0;display:none",g=0===i[0].offsetHeight,g&&(i[0].style.display="",i[1].style.display="none",g=0===i[0].offsetHeight),c.removeChild(d))}}}(),m.swap=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};var Mb=/alpha\([^)]*\)/i,Nb=/opacity\s*=\s*([^)]*)/,Ob=/^(none|table(?!-c[ea]).+)/,Pb=new RegExp("^("+S+")(.*)$","i"),Qb=new RegExp("^([+-])=("+S+")","i"),Rb={position:"absolute",visibility:"hidden",display:"block"},Sb={letterSpacing:"0",fontWeight:"400"},Tb=["Webkit","O","Moz","ms"];function Ub(a,b){if(b in a)return b;var c=b.charAt(0).toUpperCase()+b.slice(1),d=b,e=Tb.length;while(e--)if(b=Tb[e]+c,b in a)return b;return d}function Vb(a,b){for(var c,d,e,f=[],g=0,h=a.length;h>g;g++)d=a[g],d.style&&(f[g]=m._data(d,"olddisplay"),c=d.style.display,b?(f[g]||"none"!==c||(d.style.display=""),""===d.style.display&&U(d)&&(f[g]=m._data(d,"olddisplay",Fb(d.nodeName)))):(e=U(d),(c&&"none"!==c||!e)&&m._data(d,"olddisplay",e?c:m.css(d,"display"))));for(g=0;h>g;g++)d=a[g],d.style&&(b&&"none"!==d.style.display&&""!==d.style.display||(d.style.display=b?f[g]||"":"none"));return a}function Wb(a,b,c){var d=Pb.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function Xb(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;4>f;f+=2)"margin"===c&&(g+=m.css(a,c+T[f],!0,e)),d?("content"===c&&(g-=m.css(a,"padding"+T[f],!0,e)),"margin"!==c&&(g-=m.css(a,"border"+T[f]+"Width",!0,e))):(g+=m.css(a,"padding"+T[f],!0,e),"padding"!==c&&(g+=m.css(a,"border"+T[f]+"Width",!0,e)));return g}function Yb(a,b,c){var d=!0,e="width"===b?a.offsetWidth:a.offsetHeight,f=Ib(a),g=k.boxSizing&&"border-box"===m.css(a,"boxSizing",!1,f);if(0>=e||null==e){if(e=Jb(a,b,f),(0>e||null==e)&&(e=a.style[b]),Hb.test(e))return e;d=g&&(k.boxSizingReliable()||e===a.style[b]),e=parseFloat(e)||0}return e+Xb(a,b,c||(g?"border":"content"),d,f)+"px"}m.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=Jb(a,"opacity");return""===c?"1":c}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":k.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=m.camelCase(b),i=a.style;if(b=m.cssProps[h]||(m.cssProps[h]=Ub(i,h)),g=m.cssHooks[b]||m.cssHooks[h],void 0===c)return g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b];if(f=typeof c,"string"===f&&(e=Qb.exec(c))&&(c=(e[1]+1)*e[2]+parseFloat(m.css(a,b)),f="number"),null!=c&&c===c&&("number"!==f||m.cssNumber[h]||(c+="px"),k.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),!(g&&"set"in g&&void 0===(c=g.set(a,c,d)))))try{i[b]=c}catch(j){}}},css:function(a,b,c,d){var e,f,g,h=m.camelCase(b);return b=m.cssProps[h]||(m.cssProps[h]=Ub(a.style,h)),g=m.cssHooks[b]||m.cssHooks[h],g&&"get"in g&&(f=g.get(a,!0,c)),void 0===f&&(f=Jb(a,b,d)),"normal"===f&&b in Sb&&(f=Sb[b]),""===c||c?(e=parseFloat(f),c===!0||m.isNumeric(e)?e||0:f):f}}),m.each(["height","width"],function(a,b){m.cssHooks[b]={get:function(a,c,d){return c?Ob.test(m.css(a,"display"))&&0===a.offsetWidth?m.swap(a,Rb,function(){return Yb(a,b,d)}):Yb(a,b,d):void 0},set:function(a,c,d){var e=d&&Ib(a);return Wb(a,c,d?Xb(a,b,d,k.boxSizing&&"border-box"===m.css(a,"boxSizing",!1,e),e):0)}}}),k.opacity||(m.cssHooks.opacity={get:function(a,b){return Nb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=m.isNumeric(b)?"alpha(opacity="+100*b+")":"",f=d&&d.filter||c.filter||"";c.zoom=1,(b>=1||""===b)&&""===m.trim(f.replace(Mb,""))&&c.removeAttribute&&(c.removeAttribute("filter"),""===b||d&&!d.filter)||(c.filter=Mb.test(f)?f.replace(Mb,e):f+" "+e)}}),m.cssHooks.marginRight=Lb(k.reliableMarginRight,function(a,b){return b?m.swap(a,{display:"inline-block"},Jb,[a,"marginRight"]):void 0}),m.each({margin:"",padding:"",border:"Width"},function(a,b){m.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];4>d;d++)e[a+T[d]+b]=f[d]||f[d-2]||f[0];return e}},Gb.test(a)||(m.cssHooks[a+b].set=Wb)}),m.fn.extend({css:function(a,b){return V(this,function(a,b,c){var d,e,f={},g=0;if(m.isArray(b)){for(d=Ib(a),e=b.length;e>g;g++)f[b[g]]=m.css(a,b[g],!1,d);return f}return void 0!==c?m.style(a,b,c):m.css(a,b)},a,b,arguments.length>1)},show:function(){return Vb(this,!0)},hide:function(){return Vb(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){U(this)?m(this).show():m(this).hide()})}});function Zb(a,b,c,d,e){return new Zb.prototype.init(a,b,c,d,e) +}m.Tween=Zb,Zb.prototype={constructor:Zb,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(m.cssNumber[c]?"":"px")},cur:function(){var a=Zb.propHooks[this.prop];return a&&a.get?a.get(this):Zb.propHooks._default.get(this)},run:function(a){var b,c=Zb.propHooks[this.prop];return this.pos=b=this.options.duration?m.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):Zb.propHooks._default.set(this),this}},Zb.prototype.init.prototype=Zb.prototype,Zb.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=m.css(a.elem,a.prop,""),b&&"auto"!==b?b:0):a.elem[a.prop]},set:function(a){m.fx.step[a.prop]?m.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[m.cssProps[a.prop]]||m.cssHooks[a.prop])?m.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},Zb.propHooks.scrollTop=Zb.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},m.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},m.fx=Zb.prototype.init,m.fx.step={};var $b,_b,ac=/^(?:toggle|show|hide)$/,bc=new RegExp("^(?:([+-])=|)("+S+")([a-z%]*)$","i"),cc=/queueHooks$/,dc=[ic],ec={"*":[function(a,b){var c=this.createTween(a,b),d=c.cur(),e=bc.exec(b),f=e&&e[3]||(m.cssNumber[a]?"":"px"),g=(m.cssNumber[a]||"px"!==f&&+d)&&bc.exec(m.css(c.elem,a)),h=1,i=20;if(g&&g[3]!==f){f=f||g[3],e=e||[],g=+d||1;do h=h||".5",g/=h,m.style(c.elem,a,g+f);while(h!==(h=c.cur()/d)&&1!==h&&--i)}return e&&(g=c.start=+g||+d||0,c.unit=f,c.end=e[1]?g+(e[1]+1)*e[2]:+e[2]),c}]};function fc(){return setTimeout(function(){$b=void 0}),$b=m.now()}function gc(a,b){var c,d={height:a},e=0;for(b=b?1:0;4>e;e+=2-b)c=T[e],d["margin"+c]=d["padding"+c]=a;return b&&(d.opacity=d.width=a),d}function hc(a,b,c){for(var d,e=(ec[b]||[]).concat(ec["*"]),f=0,g=e.length;g>f;f++)if(d=e[f].call(c,b,a))return d}function ic(a,b,c){var d,e,f,g,h,i,j,l,n=this,o={},p=a.style,q=a.nodeType&&U(a),r=m._data(a,"fxshow");c.queue||(h=m._queueHooks(a,"fx"),null==h.unqueued&&(h.unqueued=0,i=h.empty.fire,h.empty.fire=function(){h.unqueued||i()}),h.unqueued++,n.always(function(){n.always(function(){h.unqueued--,m.queue(a,"fx").length||h.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[p.overflow,p.overflowX,p.overflowY],j=m.css(a,"display"),l="none"===j?m._data(a,"olddisplay")||Fb(a.nodeName):j,"inline"===l&&"none"===m.css(a,"float")&&(k.inlineBlockNeedsLayout&&"inline"!==Fb(a.nodeName)?p.zoom=1:p.display="inline-block")),c.overflow&&(p.overflow="hidden",k.shrinkWrapBlocks()||n.always(function(){p.overflow=c.overflow[0],p.overflowX=c.overflow[1],p.overflowY=c.overflow[2]}));for(d in b)if(e=b[d],ac.exec(e)){if(delete b[d],f=f||"toggle"===e,e===(q?"hide":"show")){if("show"!==e||!r||void 0===r[d])continue;q=!0}o[d]=r&&r[d]||m.style(a,d)}else j=void 0;if(m.isEmptyObject(o))"inline"===("none"===j?Fb(a.nodeName):j)&&(p.display=j);else{r?"hidden"in r&&(q=r.hidden):r=m._data(a,"fxshow",{}),f&&(r.hidden=!q),q?m(a).show():n.done(function(){m(a).hide()}),n.done(function(){var b;m._removeData(a,"fxshow");for(b in o)m.style(a,b,o[b])});for(d in o)g=hc(q?r[d]:0,d,n),d in r||(r[d]=g.start,q&&(g.end=g.start,g.start="width"===d||"height"===d?1:0))}}function jc(a,b){var c,d,e,f,g;for(c in a)if(d=m.camelCase(c),e=b[d],f=a[c],m.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=m.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function kc(a,b,c){var d,e,f=0,g=dc.length,h=m.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=$b||fc(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;i>g;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),1>f&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:m.extend({},b),opts:m.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:$b||fc(),duration:c.duration,tweens:[],createTween:function(b,c){var d=m.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;d>c;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;for(jc(k,j.opts.specialEasing);g>f;f++)if(d=dc[f].call(j,a,k,j.opts))return d;return m.map(k,hc,j),m.isFunction(j.opts.start)&&j.opts.start.call(a,j),m.fx.timer(m.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}m.Animation=m.extend(kc,{tweener:function(a,b){m.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var c,d=0,e=a.length;e>d;d++)c=a[d],ec[c]=ec[c]||[],ec[c].unshift(b)},prefilter:function(a,b){b?dc.unshift(a):dc.push(a)}}),m.speed=function(a,b,c){var d=a&&"object"==typeof a?m.extend({},a):{complete:c||!c&&b||m.isFunction(a)&&a,duration:a,easing:c&&b||b&&!m.isFunction(b)&&b};return d.duration=m.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in m.fx.speeds?m.fx.speeds[d.duration]:m.fx.speeds._default,(null==d.queue||d.queue===!0)&&(d.queue="fx"),d.old=d.complete,d.complete=function(){m.isFunction(d.old)&&d.old.call(this),d.queue&&m.dequeue(this,d.queue)},d},m.fn.extend({fadeTo:function(a,b,c,d){return this.filter(U).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=m.isEmptyObject(a),f=m.speed(b,c,d),g=function(){var b=kc(this,m.extend({},a),f);(e||m._data(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=m.timers,g=m._data(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&cc.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));(b||!c)&&m.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=m._data(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=m.timers,g=d?d.length:0;for(c.finish=!0,m.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),m.each(["toggle","show","hide"],function(a,b){var c=m.fn[b];m.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(gc(b,!0),a,d,e)}}),m.each({slideDown:gc("show"),slideUp:gc("hide"),slideToggle:gc("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){m.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),m.timers=[],m.fx.tick=function(){var a,b=m.timers,c=0;for($b=m.now();c<b.length;c++)a=b[c],a()||b[c]!==a||b.splice(c--,1);b.length||m.fx.stop(),$b=void 0},m.fx.timer=function(a){m.timers.push(a),a()?m.fx.start():m.timers.pop()},m.fx.interval=13,m.fx.start=function(){_b||(_b=setInterval(m.fx.tick,m.fx.interval))},m.fx.stop=function(){clearInterval(_b),_b=null},m.fx.speeds={slow:600,fast:200,_default:400},m.fn.delay=function(a,b){return a=m.fx?m.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},function(){var a,b,c,d,e;b=y.createElement("div"),b.setAttribute("className","t"),b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",d=b.getElementsByTagName("a")[0],c=y.createElement("select"),e=c.appendChild(y.createElement("option")),a=b.getElementsByTagName("input")[0],d.style.cssText="top:1px",k.getSetAttribute="t"!==b.className,k.style=/top/.test(d.getAttribute("style")),k.hrefNormalized="/a"===d.getAttribute("href"),k.checkOn=!!a.value,k.optSelected=e.selected,k.enctype=!!y.createElement("form").enctype,c.disabled=!0,k.optDisabled=!e.disabled,a=y.createElement("input"),a.setAttribute("value",""),k.input=""===a.getAttribute("value"),a.value="t",a.setAttribute("type","radio"),k.radioValue="t"===a.value}();var lc=/\r/g;m.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=m.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,m(this).val()):a,null==e?e="":"number"==typeof e?e+="":m.isArray(e)&&(e=m.map(e,function(a){return null==a?"":a+""})),b=m.valHooks[this.type]||m.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=m.valHooks[e.type]||m.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(lc,""):null==c?"":c)}}}),m.extend({valHooks:{option:{get:function(a){var b=m.find.attr(a,"value");return null!=b?b:m.trim(m.text(a))}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(c=d[i],!(!c.selected&&i!==e||(k.optDisabled?c.disabled:null!==c.getAttribute("disabled"))||c.parentNode.disabled&&m.nodeName(c.parentNode,"optgroup"))){if(b=m(c).val(),f)return b;g.push(b)}return g},set:function(a,b){var c,d,e=a.options,f=m.makeArray(b),g=e.length;while(g--)if(d=e[g],m.inArray(m.valHooks.option.get(d),f)>=0)try{d.selected=c=!0}catch(h){d.scrollHeight}else d.selected=!1;return c||(a.selectedIndex=-1),e}}}}),m.each(["radio","checkbox"],function(){m.valHooks[this]={set:function(a,b){return m.isArray(b)?a.checked=m.inArray(m(a).val(),b)>=0:void 0}},k.checkOn||(m.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var mc,nc,oc=m.expr.attrHandle,pc=/^(?:checked|selected)$/i,qc=k.getSetAttribute,rc=k.input;m.fn.extend({attr:function(a,b){return V(this,m.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){m.removeAttr(this,a)})}}),m.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(a&&3!==f&&8!==f&&2!==f)return typeof a.getAttribute===K?m.prop(a,b,c):(1===f&&m.isXMLDoc(a)||(b=b.toLowerCase(),d=m.attrHooks[b]||(m.expr.match.bool.test(b)?nc:mc)),void 0===c?d&&"get"in d&&null!==(e=d.get(a,b))?e:(e=m.find.attr(a,b),null==e?void 0:e):null!==c?d&&"set"in d&&void 0!==(e=d.set(a,c,b))?e:(a.setAttribute(b,c+""),c):void m.removeAttr(a,b))},removeAttr:function(a,b){var c,d,e=0,f=b&&b.match(E);if(f&&1===a.nodeType)while(c=f[e++])d=m.propFix[c]||c,m.expr.match.bool.test(c)?rc&&qc||!pc.test(c)?a[d]=!1:a[m.camelCase("default-"+c)]=a[d]=!1:m.attr(a,c,""),a.removeAttribute(qc?c:d)},attrHooks:{type:{set:function(a,b){if(!k.radioValue&&"radio"===b&&m.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}}}),nc={set:function(a,b,c){return b===!1?m.removeAttr(a,c):rc&&qc||!pc.test(c)?a.setAttribute(!qc&&m.propFix[c]||c,c):a[m.camelCase("default-"+c)]=a[c]=!0,c}},m.each(m.expr.match.bool.source.match(/\w+/g),function(a,b){var c=oc[b]||m.find.attr;oc[b]=rc&&qc||!pc.test(b)?function(a,b,d){var e,f;return d||(f=oc[b],oc[b]=e,e=null!=c(a,b,d)?b.toLowerCase():null,oc[b]=f),e}:function(a,b,c){return c?void 0:a[m.camelCase("default-"+b)]?b.toLowerCase():null}}),rc&&qc||(m.attrHooks.value={set:function(a,b,c){return m.nodeName(a,"input")?void(a.defaultValue=b):mc&&mc.set(a,b,c)}}),qc||(mc={set:function(a,b,c){var d=a.getAttributeNode(c);return d||a.setAttributeNode(d=a.ownerDocument.createAttribute(c)),d.value=b+="","value"===c||b===a.getAttribute(c)?b:void 0}},oc.id=oc.name=oc.coords=function(a,b,c){var d;return c?void 0:(d=a.getAttributeNode(b))&&""!==d.value?d.value:null},m.valHooks.button={get:function(a,b){var c=a.getAttributeNode(b);return c&&c.specified?c.value:void 0},set:mc.set},m.attrHooks.contenteditable={set:function(a,b,c){mc.set(a,""===b?!1:b,c)}},m.each(["width","height"],function(a,b){m.attrHooks[b]={set:function(a,c){return""===c?(a.setAttribute(b,"auto"),c):void 0}}})),k.style||(m.attrHooks.style={get:function(a){return a.style.cssText||void 0},set:function(a,b){return a.style.cssText=b+""}});var sc=/^(?:input|select|textarea|button|object)$/i,tc=/^(?:a|area)$/i;m.fn.extend({prop:function(a,b){return V(this,m.prop,a,b,arguments.length>1)},removeProp:function(a){return a=m.propFix[a]||a,this.each(function(){try{this[a]=void 0,delete this[a]}catch(b){}})}}),m.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(a,b,c){var d,e,f,g=a.nodeType;if(a&&3!==g&&8!==g&&2!==g)return f=1!==g||!m.isXMLDoc(a),f&&(b=m.propFix[b]||b,e=m.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=m.find.attr(a,"tabindex");return b?parseInt(b,10):sc.test(a.nodeName)||tc.test(a.nodeName)&&a.href?0:-1}}}}),k.hrefNormalized||m.each(["href","src"],function(a,b){m.propHooks[b]={get:function(a){return a.getAttribute(b,4)}}}),k.optSelected||(m.propHooks.selected={get:function(a){var b=a.parentNode;return b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex),null}}),m.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){m.propFix[this.toLowerCase()]=this}),k.enctype||(m.propFix.enctype="encoding");var uc=/[\t\r\n\f]/g;m.fn.extend({addClass:function(a){var b,c,d,e,f,g,h=0,i=this.length,j="string"==typeof a&&a;if(m.isFunction(a))return this.each(function(b){m(this).addClass(a.call(this,b,this.className))});if(j)for(b=(a||"").match(E)||[];i>h;h++)if(c=this[h],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(uc," "):" ")){f=0;while(e=b[f++])d.indexOf(" "+e+" ")<0&&(d+=e+" ");g=m.trim(d),c.className!==g&&(c.className=g)}return this},removeClass:function(a){var b,c,d,e,f,g,h=0,i=this.length,j=0===arguments.length||"string"==typeof a&&a;if(m.isFunction(a))return this.each(function(b){m(this).removeClass(a.call(this,b,this.className))});if(j)for(b=(a||"").match(E)||[];i>h;h++)if(c=this[h],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(uc," "):"")){f=0;while(e=b[f++])while(d.indexOf(" "+e+" ")>=0)d=d.replace(" "+e+" "," ");g=a?m.trim(d):"",c.className!==g&&(c.className=g)}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):this.each(m.isFunction(a)?function(c){m(this).toggleClass(a.call(this,c,this.className,b),b)}:function(){if("string"===c){var b,d=0,e=m(this),f=a.match(E)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else(c===K||"boolean"===c)&&(this.className&&m._data(this,"__className__",this.className),this.className=this.className||a===!1?"":m._data(this,"__className__")||"")})},hasClass:function(a){for(var b=" "+a+" ",c=0,d=this.length;d>c;c++)if(1===this[c].nodeType&&(" "+this[c].className+" ").replace(uc," ").indexOf(b)>=0)return!0;return!1}}),m.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){m.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),m.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}});var vc=m.now(),wc=/\?/,xc=/(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;m.parseJSON=function(b){if(a.JSON&&a.JSON.parse)return a.JSON.parse(b+"");var c,d=null,e=m.trim(b+"");return e&&!m.trim(e.replace(xc,function(a,b,e,f){return c&&b&&(d=0),0===d?a:(c=e||b,d+=!f-!e,"")}))?Function("return "+e)():m.error("Invalid JSON: "+b)},m.parseXML=function(b){var c,d;if(!b||"string"!=typeof b)return null;try{a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b))}catch(e){c=void 0}return c&&c.documentElement&&!c.getElementsByTagName("parsererror").length||m.error("Invalid XML: "+b),c};var yc,zc,Ac=/#.*$/,Bc=/([?&])_=[^&]*/,Cc=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Dc=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Ec=/^(?:GET|HEAD)$/,Fc=/^\/\//,Gc=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,Hc={},Ic={},Jc="*/".concat("*");try{zc=location.href}catch(Kc){zc=y.createElement("a"),zc.href="",zc=zc.href}yc=Gc.exec(zc.toLowerCase())||[];function Lc(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(E)||[];if(m.isFunction(c))while(d=f[e++])"+"===d.charAt(0)?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function Mc(a,b,c,d){var e={},f=a===Ic;function g(h){var i;return e[h]=!0,m.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function Nc(a,b){var c,d,e=m.ajaxSettings.flatOptions||{};for(d in b)void 0!==b[d]&&((e[d]?a:c||(c={}))[d]=b[d]);return c&&m.extend(!0,a,c),a}function Oc(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===e&&(e=a.mimeType||b.getResponseHeader("Content-Type"));if(e)for(g in h)if(h[g]&&h[g].test(e)){i.unshift(g);break}if(i[0]in c)f=i[0];else{for(g in c){if(!i[0]||a.converters[g+" "+i[0]]){f=g;break}d||(d=g)}f=f||d}return f?(f!==i[0]&&i.unshift(f),c[f]):void 0}function Pc(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}m.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:zc,type:"GET",isLocal:Dc.test(yc[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Jc,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":m.parseJSON,"text xml":m.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?Nc(Nc(a,m.ajaxSettings),b):Nc(m.ajaxSettings,a)},ajaxPrefilter:Lc(Hc),ajaxTransport:Lc(Ic),ajax:function(a,b){"object"==typeof a&&(b=a,a=void 0),b=b||{};var c,d,e,f,g,h,i,j,k=m.ajaxSetup({},b),l=k.context||k,n=k.context&&(l.nodeType||l.jquery)?m(l):m.event,o=m.Deferred(),p=m.Callbacks("once memory"),q=k.statusCode||{},r={},s={},t=0,u="canceled",v={readyState:0,getResponseHeader:function(a){var b;if(2===t){if(!j){j={};while(b=Cc.exec(f))j[b[1].toLowerCase()]=b[2]}b=j[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===t?f:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return t||(a=s[c]=s[c]||a,r[a]=b),this},overrideMimeType:function(a){return t||(k.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>t)for(b in a)q[b]=[q[b],a[b]];else v.always(a[v.status]);return this},abort:function(a){var b=a||u;return i&&i.abort(b),x(0,b),this}};if(o.promise(v).complete=p.add,v.success=v.done,v.error=v.fail,k.url=((a||k.url||zc)+"").replace(Ac,"").replace(Fc,yc[1]+"//"),k.type=b.method||b.type||k.method||k.type,k.dataTypes=m.trim(k.dataType||"*").toLowerCase().match(E)||[""],null==k.crossDomain&&(c=Gc.exec(k.url.toLowerCase()),k.crossDomain=!(!c||c[1]===yc[1]&&c[2]===yc[2]&&(c[3]||("http:"===c[1]?"80":"443"))===(yc[3]||("http:"===yc[1]?"80":"443")))),k.data&&k.processData&&"string"!=typeof k.data&&(k.data=m.param(k.data,k.traditional)),Mc(Hc,k,b,v),2===t)return v;h=m.event&&k.global,h&&0===m.active++&&m.event.trigger("ajaxStart"),k.type=k.type.toUpperCase(),k.hasContent=!Ec.test(k.type),e=k.url,k.hasContent||(k.data&&(e=k.url+=(wc.test(e)?"&":"?")+k.data,delete k.data),k.cache===!1&&(k.url=Bc.test(e)?e.replace(Bc,"$1_="+vc++):e+(wc.test(e)?"&":"?")+"_="+vc++)),k.ifModified&&(m.lastModified[e]&&v.setRequestHeader("If-Modified-Since",m.lastModified[e]),m.etag[e]&&v.setRequestHeader("If-None-Match",m.etag[e])),(k.data&&k.hasContent&&k.contentType!==!1||b.contentType)&&v.setRequestHeader("Content-Type",k.contentType),v.setRequestHeader("Accept",k.dataTypes[0]&&k.accepts[k.dataTypes[0]]?k.accepts[k.dataTypes[0]]+("*"!==k.dataTypes[0]?", "+Jc+"; q=0.01":""):k.accepts["*"]);for(d in k.headers)v.setRequestHeader(d,k.headers[d]);if(k.beforeSend&&(k.beforeSend.call(l,v,k)===!1||2===t))return v.abort();u="abort";for(d in{success:1,error:1,complete:1})v[d](k[d]);if(i=Mc(Ic,k,b,v)){v.readyState=1,h&&n.trigger("ajaxSend",[v,k]),k.async&&k.timeout>0&&(g=setTimeout(function(){v.abort("timeout")},k.timeout));try{t=1,i.send(r,x)}catch(w){if(!(2>t))throw w;x(-1,w)}}else x(-1,"No Transport");function x(a,b,c,d){var j,r,s,u,w,x=b;2!==t&&(t=2,g&&clearTimeout(g),i=void 0,f=d||"",v.readyState=a>0?4:0,j=a>=200&&300>a||304===a,c&&(u=Oc(k,v,c)),u=Pc(k,u,v,j),j?(k.ifModified&&(w=v.getResponseHeader("Last-Modified"),w&&(m.lastModified[e]=w),w=v.getResponseHeader("etag"),w&&(m.etag[e]=w)),204===a||"HEAD"===k.type?x="nocontent":304===a?x="notmodified":(x=u.state,r=u.data,s=u.error,j=!s)):(s=x,(a||!x)&&(x="error",0>a&&(a=0))),v.status=a,v.statusText=(b||x)+"",j?o.resolveWith(l,[r,x,v]):o.rejectWith(l,[v,x,s]),v.statusCode(q),q=void 0,h&&n.trigger(j?"ajaxSuccess":"ajaxError",[v,k,j?r:s]),p.fireWith(l,[v,x]),h&&(n.trigger("ajaxComplete",[v,k]),--m.active||m.event.trigger("ajaxStop")))}return v},getJSON:function(a,b,c){return m.get(a,b,c,"json")},getScript:function(a,b){return m.get(a,void 0,b,"script")}}),m.each(["get","post"],function(a,b){m[b]=function(a,c,d,e){return m.isFunction(c)&&(e=e||d,d=c,c=void 0),m.ajax({url:a,type:b,dataType:e,data:c,success:d})}}),m._evalUrl=function(a){return m.ajax({url:a,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},m.fn.extend({wrapAll:function(a){if(m.isFunction(a))return this.each(function(b){m(this).wrapAll(a.call(this,b))});if(this[0]){var b=m(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&1===a.firstChild.nodeType)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return this.each(m.isFunction(a)?function(b){m(this).wrapInner(a.call(this,b))}:function(){var b=m(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=m.isFunction(a);return this.each(function(c){m(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){m.nodeName(this,"body")||m(this).replaceWith(this.childNodes)}).end()}}),m.expr.filters.hidden=function(a){return a.offsetWidth<=0&&a.offsetHeight<=0||!k.reliableHiddenOffsets()&&"none"===(a.style&&a.style.display||m.css(a,"display"))},m.expr.filters.visible=function(a){return!m.expr.filters.hidden(a)};var Qc=/%20/g,Rc=/\[\]$/,Sc=/\r?\n/g,Tc=/^(?:submit|button|image|reset|file)$/i,Uc=/^(?:input|select|textarea|keygen)/i;function Vc(a,b,c,d){var e;if(m.isArray(b))m.each(b,function(b,e){c||Rc.test(a)?d(a,e):Vc(a+"["+("object"==typeof e?b:"")+"]",e,c,d)});else if(c||"object"!==m.type(b))d(a,b);else for(e in b)Vc(a+"["+e+"]",b[e],c,d)}m.param=function(a,b){var c,d=[],e=function(a,b){b=m.isFunction(b)?b():null==b?"":b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};if(void 0===b&&(b=m.ajaxSettings&&m.ajaxSettings.traditional),m.isArray(a)||a.jquery&&!m.isPlainObject(a))m.each(a,function(){e(this.name,this.value)});else for(c in a)Vc(c,a[c],b,e);return d.join("&").replace(Qc,"+")},m.fn.extend({serialize:function(){return m.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=m.prop(this,"elements");return a?m.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!m(this).is(":disabled")&&Uc.test(this.nodeName)&&!Tc.test(a)&&(this.checked||!W.test(a))}).map(function(a,b){var c=m(this).val();return null==c?null:m.isArray(c)?m.map(c,function(a){return{name:b.name,value:a.replace(Sc,"\r\n")}}):{name:b.name,value:c.replace(Sc,"\r\n")}}).get()}}),m.ajaxSettings.xhr=void 0!==a.ActiveXObject?function(){return!this.isLocal&&/^(get|post|head|put|delete|options)$/i.test(this.type)&&Zc()||$c()}:Zc;var Wc=0,Xc={},Yc=m.ajaxSettings.xhr();a.attachEvent&&a.attachEvent("onunload",function(){for(var a in Xc)Xc[a](void 0,!0)}),k.cors=!!Yc&&"withCredentials"in Yc,Yc=k.ajax=!!Yc,Yc&&m.ajaxTransport(function(a){if(!a.crossDomain||k.cors){var b;return{send:function(c,d){var e,f=a.xhr(),g=++Wc;if(f.open(a.type,a.url,a.async,a.username,a.password),a.xhrFields)for(e in a.xhrFields)f[e]=a.xhrFields[e];a.mimeType&&f.overrideMimeType&&f.overrideMimeType(a.mimeType),a.crossDomain||c["X-Requested-With"]||(c["X-Requested-With"]="XMLHttpRequest");for(e in c)void 0!==c[e]&&f.setRequestHeader(e,c[e]+"");f.send(a.hasContent&&a.data||null),b=function(c,e){var h,i,j;if(b&&(e||4===f.readyState))if(delete Xc[g],b=void 0,f.onreadystatechange=m.noop,e)4!==f.readyState&&f.abort();else{j={},h=f.status,"string"==typeof f.responseText&&(j.text=f.responseText);try{i=f.statusText}catch(k){i=""}h||!a.isLocal||a.crossDomain?1223===h&&(h=204):h=j.text?200:404}j&&d(h,i,j,f.getAllResponseHeaders())},a.async?4===f.readyState?setTimeout(b):f.onreadystatechange=Xc[g]=b:b()},abort:function(){b&&b(void 0,!0)}}}});function Zc(){try{return new a.XMLHttpRequest}catch(b){}}function $c(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}m.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(a){return m.globalEval(a),a}}}),m.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),m.ajaxTransport("script",function(a){if(a.crossDomain){var b,c=y.head||m("head")[0]||y.documentElement;return{send:function(d,e){b=y.createElement("script"),b.async=!0,a.scriptCharset&&(b.charset=a.scriptCharset),b.src=a.url,b.onload=b.onreadystatechange=function(a,c){(c||!b.readyState||/loaded|complete/.test(b.readyState))&&(b.onload=b.onreadystatechange=null,b.parentNode&&b.parentNode.removeChild(b),b=null,c||e(200,"success"))},c.insertBefore(b,c.firstChild)},abort:function(){b&&b.onload(void 0,!0)}}}});var _c=[],ad=/(=)\?(?=&|$)|\?\?/;m.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=_c.pop()||m.expando+"_"+vc++;return this[a]=!0,a}}),m.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=b.jsonp!==!1&&(ad.test(b.url)?"url":"string"==typeof b.data&&!(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&ad.test(b.data)&&"data");return h||"jsonp"===b.dataTypes[0]?(e=b.jsonpCallback=m.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(ad,"$1"+e):b.jsonp!==!1&&(b.url+=(wc.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||m.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,_c.push(e)),g&&m.isFunction(f)&&f(g[0]),g=f=void 0}),"script"):void 0}),m.parseHTML=function(a,b,c){if(!a||"string"!=typeof a)return null;"boolean"==typeof b&&(c=b,b=!1),b=b||y;var d=u.exec(a),e=!c&&[];return d?[b.createElement(d[1])]:(d=m.buildFragment([a],b,e),e&&e.length&&m(e).remove(),m.merge([],d.childNodes))};var bd=m.fn.load;m.fn.load=function(a,b,c){if("string"!=typeof a&&bd)return bd.apply(this,arguments);var d,e,f,g=this,h=a.indexOf(" ");return h>=0&&(d=m.trim(a.slice(h,a.length)),a=a.slice(0,h)),m.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(f="POST"),g.length>0&&m.ajax({url:a,type:f,dataType:"html",data:b}).done(function(a){e=arguments,g.html(d?m("<div>").append(m.parseHTML(a)).find(d):a)}).complete(c&&function(a,b){g.each(c,e||[a.responseText,b,a])}),this},m.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){m.fn[b]=function(a){return this.on(b,a)}}),m.expr.filters.animated=function(a){return m.grep(m.timers,function(b){return a===b.elem}).length};var cd=a.document.documentElement;function dd(a){return m.isWindow(a)?a:9===a.nodeType?a.defaultView||a.parentWindow:!1}m.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=m.css(a,"position"),l=m(a),n={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=m.css(a,"top"),i=m.css(a,"left"),j=("absolute"===k||"fixed"===k)&&m.inArray("auto",[f,i])>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),m.isFunction(b)&&(b=b.call(a,c,h)),null!=b.top&&(n.top=b.top-h.top+g),null!=b.left&&(n.left=b.left-h.left+e),"using"in b?b.using.call(a,n):l.css(n)}},m.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){m.offset.setOffset(this,a,b)});var b,c,d={top:0,left:0},e=this[0],f=e&&e.ownerDocument;if(f)return b=f.documentElement,m.contains(b,e)?(typeof e.getBoundingClientRect!==K&&(d=e.getBoundingClientRect()),c=dd(f),{top:d.top+(c.pageYOffset||b.scrollTop)-(b.clientTop||0),left:d.left+(c.pageXOffset||b.scrollLeft)-(b.clientLeft||0)}):d},position:function(){if(this[0]){var a,b,c={top:0,left:0},d=this[0];return"fixed"===m.css(d,"position")?b=d.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),m.nodeName(a[0],"html")||(c=a.offset()),c.top+=m.css(a[0],"borderTopWidth",!0),c.left+=m.css(a[0],"borderLeftWidth",!0)),{top:b.top-c.top-m.css(d,"marginTop",!0),left:b.left-c.left-m.css(d,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||cd;while(a&&!m.nodeName(a,"html")&&"static"===m.css(a,"position"))a=a.offsetParent;return a||cd})}}),m.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c=/Y/.test(b);m.fn[a]=function(d){return V(this,function(a,d,e){var f=dd(a);return void 0===e?f?b in f?f[b]:f.document.documentElement[d]:a[d]:void(f?f.scrollTo(c?m(f).scrollLeft():e,c?e:m(f).scrollTop()):a[d]=e)},a,d,arguments.length,null)}}),m.each(["top","left"],function(a,b){m.cssHooks[b]=Lb(k.pixelPosition,function(a,c){return c?(c=Jb(a,b),Hb.test(c)?m(a).position()[b]+"px":c):void 0})}),m.each({Height:"height",Width:"width"},function(a,b){m.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){m.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return V(this,function(b,c,d){var e;return m.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?m.css(b,c,g):m.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),m.fn.size=function(){return this.length},m.fn.andSelf=m.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return m});var ed=a.jQuery,fd=a.$;return m.noConflict=function(b){return a.$===m&&(a.$=fd),b&&a.jQuery===m&&(a.jQuery=ed),m},typeof b===K&&(a.jQuery=a.$=m),m}); +//# sourceMappingURL=jquery.min.map \ No newline at end of file diff --git a/public/app/bower_components/html5-boilerplate/dist/js/vendor/modernizr-2.8.3.min.js b/public/app/bower_components/html5-boilerplate/dist/js/vendor/modernizr-2.8.3.min.js new file mode 100644 index 00000000..81aafb7f --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/js/vendor/modernizr-2.8.3.min.js @@ -0,0 +1,4 @@ +/* Modernizr 2.8.3 (Custom Build) | MIT & BSD + * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load + */ +;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d<e;d++)u[c[d]]=c[d]in k;return u.list&&(u.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),u}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)k.setAttribute("type",f=a[d]),e=k.type!=="text",e&&(k.value=l,k.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&k.style.WebkitAppearance!==c?(g.appendChild(k),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(k,null).WebkitAppearance!=="textfield"&&k.offsetHeight!==0,g.removeChild(k)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=k.checkValidity&&k.checkValidity()===!1:e=k.value!=l)),t[a[d]]=!!e;return t}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d="2.8.3",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k=b.createElement("input"),l=":)",m={}.toString,n=" -webkit- -moz- -o- -ms- ".split(" "),o="Webkit Moz O ms",p=o.split(" "),q=o.toLowerCase().split(" "),r={svg:"http://www.w3.org/2000/svg"},s={},t={},u={},v=[],w=v.slice,x,y=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["­",'<style id="s',h,'">',a,"</style>"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b)&&c(b).matches||!1;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function l(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function m(){var a=s.elements;return typeof a=="string"?a.split(" "):a}function n(a){var b=j[a[h]];return b||(b={},i++,a[h]=i,j[i]=b),b}function o(a,c,d){c||(c=b);if(k)return c.createElement(a);d||(d=n(c));var g;return d.cache[a]?g=d.cache[a].cloneNode():f.test(a)?g=(d.cache[a]=d.createElem(a)).cloneNode():g=d.createElem(a),g.canHaveChildren&&!e.test(a)&&!g.tagUrn?d.frag.appendChild(g):g}function p(a,c){a||(a=b);if(k)return a.createDocumentFragment();c=c||n(a);var d=c.frag.cloneNode(),e=0,f=m(),g=f.length;for(;e<g;e++)d.createElement(f[e]);return d}function q(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return s.shivMethods?o(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/[\w\-]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(s,b.frag)}function r(a){a||(a=b);var c=n(a);return s.shivCSS&&!g&&!c.hasCSS&&(c.hasCSS=!!l(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),k||q(a,c),a}var c="3.7.0",d=a.html5||{},e=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,f=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,g,h="_html5shiv",i=0,j={},k;(function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",g="hidden"in a,k=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){g=!0,k=!0}})();var s={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:c,shivCSS:d.shivCSS!==!1,supportsUnknownElements:k,shivMethods:d.shivMethods!==!1,type:"default",shivDocument:r,createElement:o,createDocumentFragment:p};a.html5=s,r(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f<d;f++)g=a[f].split("="),(e=z[g.shift()])&&(c=e(c,g));for(f=0;f<b;f++)c=x[f](c);return c}function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop().split("?").shift(),i.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]),i.instead?i.instead(a,e,f,g,h):(y[i.url]?i.noexec=!0:y[i.url]=1,f.load(i.url,i.forceCSS||!i.forceJS&&"css"==i.url.split(".").pop().split("?").shift()?"c":c,i.noexec,i.attrs,i.timeout),(d(e)||d(j))&&f.load(function(){k(),e&&e(i.origUrl,h,g),j&&j(i.origUrl,h,g),y[i.url]=2})))}function h(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}),g(a,j,b,0,h);else if(Object(a)===a)for(n in m=function(){var b=0,c;for(c in a)a.hasOwnProperty(c)&&b++;return b}(),a)a.hasOwnProperty(n)&&(!c&&!--m&&(d(j)?j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}:j[n]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),l()}}(k[n])),g(a[n],j,b,n,h))}else!c&&l()}var h=!!a.test,i=a.load||a.both,j=a.callback||f,k=j,l=a.complete||f,m,n;c(h?a.yep:a.nope,!!i),i&&c(i)}var i,j,l=this.yepnope.loader;if(e(a))g(a,0,l,0);else if(w(a))for(i=0;i<a.length;i++)j=a[i],e(j)?g(j,0,l,0):w(j)?B(j):Object(j)===j&&h(j,l);else Object(a)===a&&h(a,l)},B.addPrefix=function(a,b){z[a]=b},B.addFilter=function(a){x.push(a)},B.errorTimeout=1e4,null==b.readyState&&b.addEventListener&&(b.readyState="loading",b.addEventListener("DOMContentLoaded",A=function(){b.removeEventListener("DOMContentLoaded",A,0),b.readyState="complete"},0)),a.yepnope=k(),a.yepnope.executeStack=h,a.yepnope.injectJs=function(a,c,d,e,i,j){var k=b.createElement("script"),l,o,e=e||B.errorTimeout;k.src=a;for(o in d)k.setAttribute(o,d[o]);c=j?h:c||f,k.onreadystatechange=k.onload=function(){!l&&g(k.readyState)&&(l=1,c(),k.onload=k.onreadystatechange=null)},m(function(){l||(l=1,c(1))},e),i?k.onload():n.parentNode.insertBefore(k,n)},a.yepnope.injectCss=function(a,c,d,e,g,i){var e=b.createElement("link"),j,c=i?h:c||f;e.href=a,e.rel="stylesheet",e.type="text/css";for(j in d)e.setAttribute(j,d[j]);g||(n.parentNode.insertBefore(e,n),m(c,0))}}(this,document),Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))}; diff --git a/public/app/bower_components/html5-boilerplate/dist/robots.txt b/public/app/bower_components/html5-boilerplate/dist/robots.txt new file mode 100644 index 00000000..d0e5f1be --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/dist/robots.txt @@ -0,0 +1,5 @@ +# www.robotstxt.org/ + +# Allow crawling of all content +User-agent: * +Disallow: diff --git a/public/app/bower_components/html5-boilerplate/dist/tile-wide.png b/public/app/bower_components/html5-boilerplate/dist/tile-wide.png new file mode 100644 index 0000000000000000000000000000000000000000..ccd739c7da5f47f6f36c9de6163cab77b534da6a GIT binary patch literal 1854 zcmZ`)X;{+P9!4}nOoMyJ1;#}FD2-joEyO(_Br$T!oJSlK#qEMinxiFZ%2lJ(a$HhV z(~P>gj^<LMS&kKHE(w*|7?sO)Nz~k~OAcIo?&mol&Uw%Kd*9#t{LYti#nb(y78D5u zfk0X`SBf_X1U?D^sc1t~l}zbyBvpCXdD4Ac008)$X)I2`m>wgz*#KsaL{dN)HT+y> z945;bC}d*rW`Hmh<KV+M=LQ6j0FxvCFsINg+`K++Fa|*&^==x4<Z~flQR;W&3l*k5 zQBPazmFsZ{xj2GGMP~N{&B^iZl!*_XiaydRK^gkjtI4<zOo7+b8Y9x~>G>^mF!U@z zU0jzNJN<oI-Jpgwz-k16(yxj=dR4d+d?4;1tm3@%E_G(VdTTF}6OzgTEz6H(XY5qg z8be{yViKkH52dZbVZp_HL&xcPnr_AES)^%QWZL@_?hsxQqIzHnxLV(KV;ULpOQ!+2 z(5o>`H|kCHgI@e__1b!V>cz2rNe|~K!jU7}>hz&fJTy-ISoHarB)dMH;p#;gYZTJz ziUP;y60>d2h}OZ35EM9VBr5KpN|nnD8YGA=;6XsRNf_&2iLY1&U}APjK;&F`@F69V z&1WKm5(pbJdoB<2Di;RZUAdRtzo*B^_+2WNHo$GE=OIl&ac*)nsI^zFjg5d`PD^eT zoJiBkJ+q~KFH<)b(scW0=w*;5E;y+fZGYm}J-uPz8_ZL~mU;%GinAJ^o9oS$_n^DU z*|ut977ixgU>48_@zM!U1pK(DN(^YL*c=#Qd6<9JA565s(}%jRTSm0@ihi}allXp1 z8;dQ@MX`xfs~Z5<S2<!yz_9&)w)f1JL6prrcM88967kE-K7%`JgWiVgi$zOMZZBl< zkegLAE{b!7s%V==mh-FT;opL_x|03)2I?(|p*N=^?J7o$PLcvc@^1bRKEEES1?Goj zML03*b8OW5AYQgnTiq~WIV?&7yd?U23PLpDD1Ck*3c&TDhYy-$xoWOzsnxteOZWyV zE0+w7e<ceop238VVTTmyzx%`qN`h>?>tLabX_#8g9ISceZ^B*J%1bzD^?bCz78NUu zPI91_b$(ETz)y0>lspJLEbu3RuBj>sphRRt;A~Bj1RWeXf&H2+(D#RUzp-wgp7cM1 zLj$hcd%SBGfg*ckP_qata%^YW9--vm)ULp~3`rb>zpeM*t4AlXM1c|jt%{%b8c2u& zh-Bf!^D%N>vN7c`+p+i)`T1DSxR~yQo;3RU`SoCKhJeSG$M{{_a1~rg_gY$L@@9@= z*qR<4?SAs4?S<ZJ+=;hiDWh}s!I8IJ5O~Hy_Ll~7##{g{fD`Wp2dK;ii08YqFHz(S zQ5OSq$^M<f2M%DRpR%N$|3`sY(jCT&u^!>K{-!#g!zu+!gUGv#IyHL7W)>3%DT&WT zM)|7XIvix)7_4+R=tqBLiSRl{2Olg+X{6psqiu%eg7+?S1NTk#?AB9TzIgt)0bVu& z#xkb{dYk%%oiSrh8YS^XuMHDQ<DJ4qKhZl<Z(Iv1rfsGNZk0NQQ@<~0tc?5gNTk$` zuk++3oZ}Cu^p1vPzx>pxn@+M@A4A4ou#X$+9u1rtB|W$-UFBxjeM2Pjp3?Ko7h9f1 z=S!-1pNr5Fvz;~7vje?C-X?;;e5xZv*;)s%B~dY5f!Jw<A3kMhFW`A4x&!K6a51dj zc|xfjuTd~k)oJ!wOe}LFhj*&CoD~MwhzV5AOLCg3HDY4*hjQp01yFH?Q5ynpuM>!o zT@c~<>rcX|19q33zxQoET;i+Mxo-qgkpg(<7<DZ-X;vz7xcg0at~**=&F}nkv|q3@ zu@Xd}nGVa70O<9nvynTGke2i99*<|uY@WW2z-<o*J|>IW_WdS7JX>;jC!js#?PQj< zDDtc^%BMj=y(~Uj?v6Y=ibEziO>q|Ymm^B!|6SbGPuLkRs>^PG+pket6*^b{Jl8^H zH{<!2CJ_WDxxt}Rh6(V>BvIQ7>TA1GHR04&59g^rvNjP3Vp)nvE1$c{8N;<u=PECW z+BOEuDwIvf58sN7sz4@aHo|eMVu*N2!B{^{)atxjju0=uk1dc56JAszESI;CK6xn& zyiC^@bAb0mz3s>K(1V>{uRBkvUnC#DAM~)w8dJ>;*v{dWy>0RzDuqWKHdltkfKQj= zdsGx{KS&dEM<kpKjGQYD3!E&4zjU19{Arhd_6nYCZ$xox4yT%#hL`fXEOhN;!L<Kc zB@XNlE9_ZGr>!n)uy5mmJ&Ks0|6Pu;$@XaGm(v_dKHmU+HZyfT)3^q9Xg6KM8=L># zG_mH$>VP2hZ2yOJTCI?n%*r<~KkG6A=?7ksXbcm*JnBW%U;jAD%C1V-O&(spc;(if NjOOA_X(Y4w{{!#vJbVBE literal 0 HcmV?d00001 diff --git a/public/app/bower_components/html5-boilerplate/dist/tile.png b/public/app/bower_components/html5-boilerplate/dist/tile.png new file mode 100644 index 0000000000000000000000000000000000000000..f820f61a0b95dd42dca6cbd06ca08ed4e1ef098a GIT binary patch literal 3482 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 literal 0 HcmV?d00001 diff --git a/public/app/bower_components/html5-boilerplate/doc/TOC.md b/public/app/bower_components/html5-boilerplate/doc/TOC.md deleted file mode 100644 index d0f7d0d5..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/TOC.md +++ /dev/null @@ -1,37 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) - -# HTML5 Boilerplate documentation: - -## Getting started - -* [Usage](usage.md) — Overview of the project contents. -* [FAQ](faq.md) — Frequently asked questions, along with their answers. - -## The core of HTML5 Boilerplate - -* [HTML](html.md) — A guide to the default HTML. -* [CSS](css.md) — A guide to the default CSS. -* [JavaScript](js.md) — A guide to the default JavaScript. -* [.htaccess](https://github.com/h5bp/server-configs-apache/tree/master/doc) - — All about the Apache web server configs (also see our [alternative server - configs](https://github.com/h5bp/server-configs/blob/master/README.md)). -* [crossdomain.xml](crossdomain.md) — An introduction to making use of - crossdomain requests. -* [Everything else](misc.md). - -## Development - -* [Extending and customizing HTML5 Boilerplate](extend.md) — Going further with - the boilerplate. - -## Related projects - -HTML5 Boilerplate has several related projects to help improve the performance -of your site/app in various production environments. - -* [Server configs](https://github.com/h5bp/server-configs) — Configs for - different servers. -* [Node build script](https://github.com/h5bp/node-build-script) — A - feature-rich [grunt](https://github.com/gruntjs/grunt) plugin. -* [Ant build script](https://github.com/h5bp/ant-build-script) — The original - HTML5 Boilerplate build script. diff --git a/public/app/bower_components/html5-boilerplate/doc/crossdomain.md b/public/app/bower_components/html5-boilerplate/doc/crossdomain.md deleted file mode 100644 index 860629e2..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/crossdomain.md +++ /dev/null @@ -1,17 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation -table of contents](TOC.md) - -# crossdomain.xml - -A cross-domain policy file is an XML document that grants a web client—such as -Adobe Flash Player, Adobe Reader, etc., permission to handle data across -multiple domains. When a client hosts content from a particular source domain -and that content makes requests directed towards a domain other than its own, -the remote domain would need to host a cross-domain policy file that grants -access to the source domain, allowing the client to continue with the -transaction. Policy files grant read access to data, permit a client to include -custom headers in cross-domain requests, and are also used with sockets to -grant permissions for socket-based connections. - -For full details, check out Adobe's article about the [cross-domain policy file -specification](http://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html). diff --git a/public/app/bower_components/html5-boilerplate/doc/css.md b/public/app/bower_components/html5-boilerplate/doc/css.md deleted file mode 100644 index a9b99eae..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/css.md +++ /dev/null @@ -1,136 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation -table of contents](TOC.md) - -# The CSS - -The HTML5 Boilerplate starting CSS includes: - -* [Normalize.css](https://github.com/necolas/normalize.css). -* Useful HTML5 Boilerplate defaults. -* Common helpers. -* Placeholder media queries. -* Print styles. - -This starting CSS does not rely on the presence of conditional classnames, -conditional style sheets, or Modernizr. It is ready to use whatever your -development preferences happen to be. - - -## Normalize.css - -Normalize.css is a modern, HTML5-ready alternative to CSS resets. It contains -extensive inline documentation. Please refer to the [Normalize.css -project](http://necolas.github.com/normalize.css/) for more information. - - -## HTML5 Boilerplate defaults - -This project includes a handful of base styles that build upon Normalize.css. -These include: - -* Basic typography settings to provide improved text readability by default. -* Protection against unwanted `text-shadow` during text highlighting. -* Tweaks to default image alignment, fieldsets, and textareas. -* A pretty Chrome Frame prompt. - -You are free to modify or add to these base styles as your project requires. - - -## Common helpers - -#### `.ir` - -Add the `.ir` class to any element you are applying image-replacement to. When -replacing an element's content with an image, make sure to also set a specific -`background-image: url(pathtoimage.png);`, `width`, and `height` so that your -replacement image appears. - -#### `.hidden` - -Add the `.hidden` class to any elements that you want to hide from all -presentations, including screen readers. It could be an element that will be -populated later with JavaScript or an element you will hide with JavaScript. Do -not use this for SEO keyword stuffing. That is just not cool. - -#### `.visuallyhidden` - -Add the `.visuallyhidden` class to hide text from browsers but make it -available for screen readers. You can use this to hide text that is specific to -screen readers but that other users should not see. [About invisible -content](http://www.webaim.org/techniques/css/invisiblecontent/), [Hiding -content for -accessibility](http://snook.ca/archives/html_and_css/hiding-content-for-accessibility), -[HTML5 Boilerplate -issue/research](https://github.com/h5bp/html5-boilerplate/issues/194/). - -#### `.invisible` - -Add the `.invisible` class to any element you want to hide without affecting -layout. When you use `display: none` an element is effectively removed from the -layout. But in some cases you want the element to simply be invisible while -remaining in the flow and not affecting the positioning of surrounding -content. - -#### `.clearfix` - -Adding `.clearfix` to an element will ensure that it always fully contains its -floated children. There have been many variants of the clearfix hack over the -years, and there are other hacks that can also help you to contain floated -children, but the HTML5 Boilerplate currently uses the [micro -clearfix](http://nicolasgallagher.com/micro-clearfix-hack/). - - -## Media Queries - -The boilerplate makes it easy to get started with a "Mobile First" and -[Responsive Web -Design](http://www.alistapart.com/articles/responsive-web-design/) approach to -development. But it's worth remembering that there are [no silver -bullets](http://www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/). - -We include a placeholder Media Queries to build up your mobile styles for wider -viewports and high-resolution displays. It's recommended that you adapt these -Media Queries based on the content of your site rather than mirroring the fixed -dimensions of specific devices. - -If you do not want to take a "Mobile First" approach, you can simply edit or -remove these placeholder Media Queries. One possibility would be to work from -wide viewports down and use `max-width` MQs instead, e.g., `@media only screen -and (max-width: 480px)`. - -Take a look into the [Mobile -Boilerplate](https://github.com/h5bp/mobile-boilerplate) for features that are -useful when developing mobile wep apps. - - -## Print styles - -* Print styles are inlined to [reduce the number of page - requests](http://www.phpied.com/delay-loading-your-print-css/). -* We strip all background colors, change the font color to black and remove - text-shadow. This is meant to [help save printer ink and make the printing - process much faster](http://www.sanbeiji.com/archives/953). -* Anchors do not need colors to indicate they are linked. They are underlined - to indicate so. -* Anchors and Abbreviations are expanded to indicate where users reading the - printed page can refer to. -* But we do not want to show link text for image replaced elements (given that - they are primarily images). - -### Paged media styles - -* Paged media is supported only in a [few - browsers](http://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28Cascading_Style_Sheets%29#Grammar_and_rules). -* Paged media support means browsers would know how to interpret instructions - on breaking content into pages and on orphans/widows. -* We use `page-break-inside: avoid;` to prevent an image and table row from - being split into two different pages, so use the same `page-break-inside: - avoid;` for that as well. -* Headings should always appear with the text they are titles for. So, we - ensure headings never appear in a different page than the text they describe - by using `page-break-after: avoid;`. -* We also apply a default margin for the page specified in `cm`. -* We do not want [orphans and - widows](http://en.wikipedia.org/wiki/Widows_and_orphans) to appear on pages - you print. So, by defining `orphans: 3` and `widows: 3` you define the minimal - number of words that every line should contain. diff --git a/public/app/bower_components/html5-boilerplate/doc/faq.md b/public/app/bower_components/html5-boilerplate/doc/faq.md deleted file mode 100644 index d37019ae..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/faq.md +++ /dev/null @@ -1,76 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation -table of contents](TOC.md) - -# Frequently asked questions - -### Why is the URL for jQuery without "http"? - -This is an intentional use of [protocol-relative -URLs](http://paulirish.com/2010/the-protocol-relative-url/) - -**N.B.** Using a protocol-relative URL for files that exist on a CDN is -problematic when you try to view your local files directly in the browser. The -browser will attempt to fetch the file from your local file system. We -recommend that you use a local server to test your pages (or Dropbox). This can -be done using Python 2.x by running `python -m SimpleHTTPServer` or Python 3.x -with `python -m http.server` from your local directory, using Ruby by installing -and running [asdf](https://rubygems.org/gems/asdf), and by installing any one of -XAMPP, MAMP, or WAMP. - -### Why don't you automatically load the latest version of jQuery from the Google CDN? - -1. The latest version of jQuery may not be compatible with the existing - plugins/code on the site. Version updating should be an intentional - decision. -2. The latest version has a very short `max-age=3600` compares to the specific - version of `max-age=31536000`, which means you won't get the benefits of - long-term caching. - - -### Why is the Google Analytics code at the bottom? Google recommends it be placed the `head`. - -The advantage to placing it in the `head` is that you will track a user's -pageview even if they leave the page before it has been fully loaded. However, -putting the code at the bottom keeps all the scripts together and reinforces -that scripts at the bottom are the right move. - - -### How can I integrate [Twitter Bootstrap](http://twitter.github.com/bootstrap/) with HTML5 Boilerplate? - -You can use [Initializr](http://initializr.com) to create a custom build that -includes HTML5 Boilerplate with Twitter Bootstrap. - -Read more about how [HTML5 Boilerplate and Twitter Bootstrap complement each -other](http://www.quora.com/Is-Bootstrap-a-complement-OR-an-alternative-to-HTML5-Boilerplate-or-viceversa/answer/Nicolas-Gallagher). - - -### How do I prevent phone numbers looking twice as large and having a Skype highlight? - -If this is occurring, it is because a user has the Skype browser extension -installed. - -Use the following CSS to prevent Skype from formatting the numbers on your -page: - -```css -span.skype_pnh_container { - display: none !important; -} - -span.skype_pnh_print_container { - display: inline !important; -} -``` - - -### Do I need to upgrade my sites each time a new version of HTML5 Boilerplate is released? - -No. You don't normally replace the foundations of a house once it has been -built. There is nothing stopping you from trying to work in the latest changes -but you'll have to assess the costs/benefits of doing so. - - -### Where can I get help for support questions? - -Please ask for help on -[StackOverflow](http://stackoverflow.com/questions/tagged/html5boilerplate). diff --git a/public/app/bower_components/html5-boilerplate/doc/html.md b/public/app/bower_components/html5-boilerplate/doc/html.md deleted file mode 100644 index b7fbbd60..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/html.md +++ /dev/null @@ -1,161 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation -table of contents](TOC.md) - -# The HTML - -## Conditional `html` classes - -A series of IE conditional comments apply the relevant IE-specific classes to -the `html` tag. This provides one method of specifying CSS fixes for specific -legacy versions of IE. While you may or may not choose to use this technique in -your project code, HTML5 Boilerplate's default CSS does not rely on it. - -When using the conditional classes technique, applying classes to the `html` -element has several benefits: - -* It avoids a [file blocking - issue](http://webforscher.wordpress.com/2010/05/20/ie-6-slowing-down-ie-8/) - discovered by Stoyan Stefanov and Markus Leptien. -* It avoids the need for an empty comment that also fixes the above issue. -* CMSes like WordPress and Drupal use the body class more heavily. This makes - integrating there a touch simpler. -* It still validates as HTML5. -* It uses the same element as Modernizr (and Dojo). That feels nice. -* It can improve the clarity of code in multi-developer teams. - - -## The `no-js` class - -Allows you to more easily explicitly add custom styles when JavaScript is -disabled (`no-js`) or enabled (`js`). More here: [Avoiding the -FOUC](http://paulirish.com/2009/avoiding-the-fouc-v3/). - - -## The order of meta tags, and `<title>` - -As recommended by [the HTML5 -spec](http://www.whatwg.org/specs/web-apps/current-work/complete/semantics.html#charset) -(4.2.5.5 Specifying the document's character encoding), add your charset -declaration early (before any ASCII art ;) to avoid a potential -[encoding-related security -issue](http://code.google.com/p/doctype-mirror/wiki/ArticleUtf7) in IE. It -should come in the first [1024 -bytes](http://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#charset). - -The charset should also come before the `<title>` tag, due to [potential XSS -vectors](http://code.google.com/p/doctype-mirror/wiki/ArticleUtf7). - -The meta tag for compatibility mode [needs to be before all elements except -title and meta](http://h5bp.com/f "Defining Document Compatibility - MSDN"). -And that same meta tag can only be invoked for Google Chrome Frame if it is -within the [first 1024 -bytes](http://code.google.com/p/chromium/issues/detail?id=23003). - - -## X-UA-Compatible - -This makes sure the latest version of IE is used in versions of IE that contain -multiple rendering engines. Even if a site visitor is using IE8 or IE9, it's -possible that they're not using the latest rendering engine their browser -contains. To fix this, use: - -```html -<meta http-equiv="X-UA-Compatible" content="IE=edge"> -``` - -The `meta` tag tells the IE rendering engine it should use the latest, or edge, -version of the IE rendering environment. - -This `meta` tag ensures that anyone browsing your site in IE is treated to the -best possible user experience that their browser can offer. - -This line breaks validation. To avoid this edge case issue it is recommended -that you **remove this line and use the `.htaccess`** (or other server config) -to send these headers instead. You also might want to read [Validating: -X-UA-Compatible](http://groups.google.com/group/html5boilerplate/browse_thread/thread/6d1b6b152aca8ed2). - -If you are serving your site on a non-standard port, you will need to set this -header on the server-side. This is because the IE preference option 'Display -intranet sites in Compatibility View' is checked by default. - - -## Mobile viewport - -There are a few different options that you can use with the [`viewport` meta -tag](https://docs.google.com/present/view?id=dkx3qtm_22dxsrgcf4 "Viewport and -Media Queries - The Complete Idiot's Guide"). You can find out more in [the -Apple developer docs](http://j.mp/mobileviewport). HTML5 Boilerplate comes with -a simple setup that strikes a good balance for general use cases. - -```html -<meta name="viewport" content="width=device-width, initial-scale=1"> -``` - -## Favicons and Touch Icon - -The shortcut icons should be put in the root directory of your site. HTML5 -Boilerplate comes with a default set of icons (include favicon and one Apple -Touch Icon) that you can use as a baseline to create your own. - -Please refer to the more detailed description in the [Extend section](extend.md) -of these docs. - -## Modernizr - -HTML5 Boilerplate uses a custom build of Modernizr. - -[Modernizr](http://modernizr.com) is a JavaScript library which adds classes to -the `html` element based on the results of feature test and which ensures that -all browsers can make use of HTML5 elements (as it includes the HTML5 Shiv). -This allows you to target parts of your CSS and JavaScript based on the -features supported by a browser. - -In general, in order to keep page load times to a minimum, it's best to call -any JavaScript at the end of the page because if a script is slow to load -from an external server it may cause the whole page to hang. That said, the -Modernizr script *needs* to run *before* the browser begins rendering the page, -so that browsers lacking support for some of the new HTML5 elements are able to -handle them properly. Therefore the Modernizr script is the only JavaScript -file synchronously loaded at the top of the document. - - -## The content area - -The central part of the boilerplate template is pretty much empty. This is -intentional, in order to make the boilerplate suitable for both web page and -web app development. - -### Google Chrome Frame - -The main content area of the boilerplate includes a prompt to install Chrome -Frame (which no longer requires administrative rights) for users of IE 6. If -you intended to support IE 6, then you should remove the snippet of code. - -### Google CDN for jQuery - -The Google CDN version of the jQuery JavaScript library is referenced towards -the bottom of the page using a protocol-independent path (read more about this -in the [FAQ](faq.md)). A local fallback of jQuery is included for rare instances -when the CDN version might not be available, and to facilitate offline -development. - -Regardless of which JavaScript library you choose to use, it is well worth the -time and effort to look up and reference the Google CDN (Content Delivery -Network) version. Your users may already have this version cached in their -browsers, and Google's CDN is likely to deliver the asset faster than your -server. - -### Google Analytics Tracking Code - -Finally, an optimized version of the latest Google Analytics tracking code is -included. Google recommends that this script be placed at the top of the page. -Factors to consider: if you place this script at the top of the page, you’ll be -able to count users who don’t fully load the page, and you’ll incur the max -number of simultaneous connections of the browser. - -Further information: - -* [Optimizing the asynchronous Google Analytics - snippet](http://mathiasbynens.be/notes/async-analytics-snippet). -* [Tracking Site Activity - Google - Analytics](http://code.google.com/apis/analytics/docs/tracking/asyncTracking.html). diff --git a/public/app/bower_components/html5-boilerplate/doc/misc.md b/public/app/bower_components/html5-boilerplate/doc/misc.md deleted file mode 100644 index 865e3f05..00000000 --- a/public/app/bower_components/html5-boilerplate/doc/misc.md +++ /dev/null @@ -1,26 +0,0 @@ -[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation -table of contents](TOC.md) - -# Miscellaneous - -## .gitignore - -HTML5 Boilerplate includes a basic project-level `.gitignore`. This should -primarily be used to avoid certain project-level files and directories from -being kept under source control. Different development-environments will -benefit from different collections of ignores. - -OS-specific and editor-specific files should be ignored using a "global -ignore" that applies to all repositories on your system. - -For example, add the following to your `~/.gitconfig`, where the `.gitignore` -in your HOME directory contains the files and directories you'd like to -globally ignore: - -```gitignore -[core] - excludesfile = ~/.gitignore -``` - -* More on global ignores: http://help.github.com/ignore-files/ -* Comprehensive set of ignores on GitHub: https://github.com/github/gitignore diff --git a/public/app/bower_components/html5-boilerplate/gulpfile.js b/public/app/bower_components/html5-boilerplate/gulpfile.js new file mode 100644 index 00000000..941eeaa6 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/gulpfile.js @@ -0,0 +1,159 @@ +var fs = require('fs'); +var path = require('path'); + +var gulp = require('gulp'); +var plugins = require('gulp-load-plugins')(); // Load all gulp plugins + // automatically and attach + // them to the `plugins` object + +var runSequence = require('run-sequence'); // Temporary solution until gulp 4 + // https://github.com/gulpjs/gulp/issues/355 + +var pkg = require('./package.json'); +var dirs = pkg['h5bp-configs'].directories; + +// --------------------------------------------------------------------- +// | Helper tasks | +// --------------------------------------------------------------------- + +gulp.task('archive:create_archive_dir', function () { + fs.mkdirSync(path.resolve(dirs.archive), '0755'); +}); + +gulp.task('archive:zip', function (done) { + + var archiveName = path.resolve(dirs.archive, pkg.name + '_v' + pkg.version + '.zip'); + var archiver = require('archiver')('zip'); + var files = require('glob').sync('**/*.*', { + 'cwd': dirs.dist, + 'dot': true // include hidden files + }); + var output = fs.createWriteStream(archiveName); + + archiver.on('error', function (error) { + done(); + throw error; + }); + + output.on('close', done); + + files.forEach(function (file) { + + var filePath = path.resolve(dirs.dist, file); + + // `archiver.bulk` does not maintain the file + // permissions, so we need to add files individually + archiver.append(fs.createReadStream(filePath), { + 'name': file, + 'mode': fs.statSync(filePath) + }); + + }); + + archiver.pipe(output); + archiver.finalize(); + +}); + +gulp.task('clean', function (done) { + require('del')([ + dirs.archive, + dirs.dist + ], done); +}); + +gulp.task('copy', [ + 'copy:.htaccess', + 'copy:index.html', + 'copy:jquery', + 'copy:main.css', + 'copy:misc', + 'copy:normalize' +]); + +gulp.task('copy:.htaccess', function () { + return gulp.src('node_modules/apache-server-configs/dist/.htaccess') + .pipe(plugins.replace(/# ErrorDocument/g, 'ErrorDocument')) + .pipe(gulp.dest(dirs.dist)); +}); + +gulp.task('copy:index.html', function () { + return gulp.src(dirs.src + '/index.html') + .pipe(plugins.replace(/{{JQUERY_VERSION}}/g, pkg.devDependencies.jquery)) + .pipe(gulp.dest(dirs.dist)); +}); + +gulp.task('copy:jquery', function () { + return gulp.src(['node_modules/jquery/dist/jquery.min.js']) + .pipe(plugins.rename('jquery-' + pkg.devDependencies.jquery + '.min.js')) + .pipe(gulp.dest(dirs.dist + '/js/vendor')); +}); + +gulp.task('copy:main.css', function () { + + var banner = '/*! HTML5 Boilerplate v' + pkg.version + + ' | ' + pkg.license.type + ' License' + + ' | ' + pkg.homepage + ' */\n\n'; + + return gulp.src(dirs.src + '/css/main.css') + .pipe(plugins.header(banner)) + .pipe(gulp.dest(dirs.dist + '/css')); + +}); + +gulp.task('copy:misc', function () { + return gulp.src([ + + // Copy all files + dirs.src + '/**/*', + + // Exclude the following files + // (other tasks will handle the copying of these files) + '!' + dirs.src + '/css/main.css', + '!' + dirs.src + '/index.html' + + ], { + + // Include hidden files by default + dot: true + + }).pipe(gulp.dest(dirs.dist)); +}); + +gulp.task('copy:normalize', function () { + return gulp.src('node_modules/normalize.css/normalize.css') + .pipe(gulp.dest(dirs.dist + '/css')); +}); + +gulp.task('lint:js', function () { + return gulp.src([ + 'gulpfile.js', + dirs.src + '/js/*.js', + dirs.test + '/*.js' + ]).pipe(plugins.jscs()) + .pipe(plugins.jshint()) + .pipe(plugins.jshint.reporter('jshint-stylish')) + .pipe(plugins.jshint.reporter('fail')); +}); + + +// --------------------------------------------------------------------- +// | Main tasks | +// --------------------------------------------------------------------- + +gulp.task('archive', function (done) { + runSequence( + 'build', + 'archive:create_archive_dir', + 'archive:zip', + done); +}); + +gulp.task('build', function (done) { + runSequence( + ['clean', 'lint:js'], + 'copy', + done); +}); + +gulp.task('default', ['build']); diff --git a/public/app/bower_components/html5-boilerplate/js/main.js b/public/app/bower_components/html5-boilerplate/js/main.js deleted file mode 100644 index 8b137891..00000000 --- a/public/app/bower_components/html5-boilerplate/js/main.js +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/app/bower_components/html5-boilerplate/js/vendor/jquery-1.10.2.min.js b/public/app/bower_components/html5-boilerplate/js/vendor/jquery-1.10.2.min.js deleted file mode 100644 index da417064..00000000 --- a/public/app/bower_components/html5-boilerplate/js/vendor/jquery-1.10.2.min.js +++ /dev/null @@ -1,6 +0,0 @@ -/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license -//@ sourceMappingURL=jquery-1.10.2.min.map -*/ -(function(e,t){var n,r,i=typeof t,o=e.location,a=e.document,s=a.documentElement,l=e.jQuery,u=e.$,c={},p=[],f="1.10.2",d=p.concat,h=p.push,g=p.slice,m=p.indexOf,y=c.toString,v=c.hasOwnProperty,b=f.trim,x=function(e,t){return new x.fn.init(e,t,r)},w=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=/\S+/g,C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,N=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,k=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,E=/^[\],:{}\s]*$/,S=/(?:^|:|,)(?:\s*\[)+/g,A=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,j=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,D=/^-ms-/,L=/-([\da-z])/gi,H=function(e,t){return t.toUpperCase()},q=function(e){(a.addEventListener||"load"===e.type||"complete"===a.readyState)&&(_(),x.ready())},_=function(){a.addEventListener?(a.removeEventListener("DOMContentLoaded",q,!1),e.removeEventListener("load",q,!1)):(a.detachEvent("onreadystatechange",q),e.detachEvent("onload",q))};x.fn=x.prototype={jquery:f,constructor:x,init:function(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:N.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof x?n[0]:n,x.merge(this,x.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:a,!0)),k.test(i[1])&&x.isPlainObject(n))for(i in n)x.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(o=a.getElementById(i[2]),o&&o.parentNode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context=a,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):x.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),x.makeArray(e,this))},selector:"",length:0,toArray:function(){return g.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=x.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return x.each(this,e,t)},ready:function(e){return x.ready.promise().done(e),this},slice:function(){return this.pushStack(g.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(x.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:h,sort:[].sort,splice:[].splice},x.fn.init.prototype=x.fn,x.extend=x.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},l=1,u=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},l=2),"object"==typeof s||x.isFunction(s)||(s={}),u===l&&(s=this,--l);u>l;l++)if(null!=(o=arguments[l]))for(i in o)e=s[i],r=o[i],s!==r&&(c&&r&&(x.isPlainObject(r)||(n=x.isArray(r)))?(n?(n=!1,a=e&&x.isArray(e)?e:[]):a=e&&x.isPlainObject(e)?e:{},s[i]=x.extend(c,a,r)):r!==t&&(s[i]=r));return s},x.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===x&&(e.$=u),t&&e.jQuery===x&&(e.jQuery=l),x},isReady:!1,readyWait:1,holdReady:function(e){e?x.readyWait++:x.ready(!0)},ready:function(e){if(e===!0?!--x.readyWait:!x.isReady){if(!a.body)return setTimeout(x.ready);x.isReady=!0,e!==!0&&--x.readyWait>0||(n.resolveWith(a,[x]),x.fn.trigger&&x(a).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===x.type(e)},isArray:Array.isArray||function(e){return"array"===x.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?c[y.call(e)]||"object":typeof e},isPlainObject:function(e){var n;if(!e||"object"!==x.type(e)||e.nodeType||x.isWindow(e))return!1;try{if(e.constructor&&!v.call(e,"constructor")&&!v.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(r){return!1}if(x.support.ownLast)for(n in e)return v.call(e,n);for(n in e);return n===t||v.call(e,n)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||a;var r=k.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=x.buildFragment([e],t,i),i&&x(i).remove(),x.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=x.trim(n),n&&E.test(n.replace(A,"@").replace(j,"]").replace(S,"")))?Function("return "+n)():(x.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||x.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&x.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(D,"ms-").replace(L,H)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,i=0,o=e.length,a=M(e);if(n){if(a){for(;o>i;i++)if(r=t.apply(e[i],n),r===!1)break}else for(i in e)if(r=t.apply(e[i],n),r===!1)break}else if(a){for(;o>i;i++)if(r=t.call(e[i],i,e[i]),r===!1)break}else for(i in e)if(r=t.call(e[i],i,e[i]),r===!1)break;return e},trim:b&&!b.call("\ufeff\u00a0")?function(e){return null==e?"":b.call(e)}:function(e){return null==e?"":(e+"").replace(C,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(M(Object(e))?x.merge(n,"string"==typeof e?[e]:e):h.call(n,e)),n},inArray:function(e,t,n){var r;if(t){if(m)return m.call(t,e,n);for(r=t.length,n=n?0>n?Math.max(0,r+n):n:0;r>n;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,n){var r=n.length,i=e.length,o=0;if("number"==typeof r)for(;r>o;o++)e[i++]=n[o];else while(n[o]!==t)e[i++]=n[o++];return e.length=i,e},grep:function(e,t,n){var r,i=[],o=0,a=e.length;for(n=!!n;a>o;o++)r=!!t(e[o],o),n!==r&&i.push(e[o]);return i},map:function(e,t,n){var r,i=0,o=e.length,a=M(e),s=[];if(a)for(;o>i;i++)r=t(e[i],i,n),null!=r&&(s[s.length]=r);else for(i in e)r=t(e[i],i,n),null!=r&&(s[s.length]=r);return d.apply([],s)},guid:1,proxy:function(e,n){var r,i,o;return"string"==typeof n&&(o=e[n],n=e,e=o),x.isFunction(e)?(r=g.call(arguments,2),i=function(){return e.apply(n||this,r.concat(g.call(arguments)))},i.guid=e.guid=e.guid||x.guid++,i):t},access:function(e,n,r,i,o,a,s){var l=0,u=e.length,c=null==r;if("object"===x.type(r)){o=!0;for(l in r)x.access(e,n,l,r[l],!0,a,s)}else if(i!==t&&(o=!0,x.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=function(e,t,n){return c.call(x(e),n)})),n))for(;u>l;l++)n(e[l],r,s?i:i.call(e[l],l,n(e[l],r)));return o?e:c?n.call(e):u?n(e[0],r):a},now:function(){return(new Date).getTime()},swap:function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i}}),x.ready.promise=function(t){if(!n)if(n=x.Deferred(),"complete"===a.readyState)setTimeout(x.ready);else if(a.addEventListener)a.addEventListener("DOMContentLoaded",q,!1),e.addEventListener("load",q,!1);else{a.attachEvent("onreadystatechange",q),e.attachEvent("onload",q);var r=!1;try{r=null==e.frameElement&&a.documentElement}catch(i){}r&&r.doScroll&&function o(){if(!x.isReady){try{r.doScroll("left")}catch(e){return setTimeout(o,50)}_(),x.ready()}}()}return n.promise(t)},x.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){c["[object "+t+"]"]=t.toLowerCase()});function M(e){var t=e.length,n=x.type(e);return x.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"number"==typeof t&&t>0&&t-1 in e)}r=x(a),function(e,t){var n,r,i,o,a,s,l,u,c,p,f,d,h,g,m,y,v,b="sizzle"+-new Date,w=e.document,T=0,C=0,N=st(),k=st(),E=st(),S=!1,A=function(e,t){return e===t?(S=!0,0):0},j=typeof t,D=1<<31,L={}.hasOwnProperty,H=[],q=H.pop,_=H.push,M=H.push,O=H.slice,F=H.indexOf||function(e){var t=0,n=this.length;for(;n>t;t++)if(this[t]===e)return t;return-1},B="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",P="[\\x20\\t\\r\\n\\f]",R="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",W=R.replace("w","w#"),$="\\["+P+"*("+R+")"+P+"*(?:([*^$|!~]?=)"+P+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+W+")|)|)"+P+"*\\]",I=":("+R+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+$.replace(3,8)+")*)|.*)\\)|)",z=RegExp("^"+P+"+|((?:^|[^\\\\])(?:\\\\.)*)"+P+"+$","g"),X=RegExp("^"+P+"*,"+P+"*"),U=RegExp("^"+P+"*([>+~]|"+P+")"+P+"*"),V=RegExp(P+"*[+~]"),Y=RegExp("="+P+"*([^\\]'\"]*)"+P+"*\\]","g"),J=RegExp(I),G=RegExp("^"+W+"$"),Q={ID:RegExp("^#("+R+")"),CLASS:RegExp("^\\.("+R+")"),TAG:RegExp("^("+R.replace("w","w*")+")"),ATTR:RegExp("^"+$),PSEUDO:RegExp("^"+I),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+P+"*(even|odd|(([+-]|)(\\d*)n|)"+P+"*(?:([+-]|)"+P+"*(\\d+)|))"+P+"*\\)|)","i"),bool:RegExp("^(?:"+B+")$","i"),needsContext:RegExp("^"+P+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+P+"*((?:-\\d)?\\d*)"+P+"*\\)|)(?=[^-]|$)","i")},K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,et=/^(?:input|select|textarea|button)$/i,tt=/^h\d$/i,nt=/'|\\/g,rt=RegExp("\\\\([\\da-f]{1,6}"+P+"?|("+P+")|.)","ig"),it=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(55296|r>>10,56320|1023&r)};try{M.apply(H=O.call(w.childNodes),w.childNodes),H[w.childNodes.length].nodeType}catch(ot){M={apply:H.length?function(e,t){_.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function at(e,t,n,i){var o,a,s,l,u,c,d,m,y,x;if((t?t.ownerDocument||t:w)!==f&&p(t),t=t||f,n=n||[],!e||"string"!=typeof e)return n;if(1!==(l=t.nodeType)&&9!==l)return[];if(h&&!i){if(o=Z.exec(e))if(s=o[1]){if(9===l){if(a=t.getElementById(s),!a||!a.parentNode)return n;if(a.id===s)return n.push(a),n}else if(t.ownerDocument&&(a=t.ownerDocument.getElementById(s))&&v(t,a)&&a.id===s)return n.push(a),n}else{if(o[2])return M.apply(n,t.getElementsByTagName(e)),n;if((s=o[3])&&r.getElementsByClassName&&t.getElementsByClassName)return M.apply(n,t.getElementsByClassName(s)),n}if(r.qsa&&(!g||!g.test(e))){if(m=d=b,y=t,x=9===l&&e,1===l&&"object"!==t.nodeName.toLowerCase()){c=mt(e),(d=t.getAttribute("id"))?m=d.replace(nt,"\\$&"):t.setAttribute("id",m),m="[id='"+m+"'] ",u=c.length;while(u--)c[u]=m+yt(c[u]);y=V.test(e)&&t.parentNode||t,x=c.join(",")}if(x)try{return M.apply(n,y.querySelectorAll(x)),n}catch(T){}finally{d||t.removeAttribute("id")}}}return kt(e.replace(z,"$1"),t,n,i)}function st(){var e=[];function t(n,r){return e.push(n+=" ")>o.cacheLength&&delete t[e.shift()],t[n]=r}return t}function lt(e){return e[b]=!0,e}function ut(e){var t=f.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ct(e,t){var n=e.split("|"),r=e.length;while(r--)o.attrHandle[n[r]]=t}function pt(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||D)-(~e.sourceIndex||D);if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function ft(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function dt(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function ht(e){return lt(function(t){return t=+t,lt(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}s=at.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},r=at.support={},p=at.setDocument=function(e){var n=e?e.ownerDocument||e:w,i=n.defaultView;return n!==f&&9===n.nodeType&&n.documentElement?(f=n,d=n.documentElement,h=!s(n),i&&i.attachEvent&&i!==i.top&&i.attachEvent("onbeforeunload",function(){p()}),r.attributes=ut(function(e){return e.className="i",!e.getAttribute("className")}),r.getElementsByTagName=ut(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),r.getElementsByClassName=ut(function(e){return e.innerHTML="<div class='a'></div><div class='a i'></div>",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),r.getById=ut(function(e){return d.appendChild(e).id=b,!n.getElementsByName||!n.getElementsByName(b).length}),r.getById?(o.find.ID=function(e,t){if(typeof t.getElementById!==j&&h){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){return e.getAttribute("id")===t}}):(delete o.find.ID,o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){var n=typeof e.getAttributeNode!==j&&e.getAttributeNode("id");return n&&n.value===t}}),o.find.TAG=r.getElementsByTagName?function(e,n){return typeof n.getElementsByTagName!==j?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},o.find.CLASS=r.getElementsByClassName&&function(e,n){return typeof n.getElementsByClassName!==j&&h?n.getElementsByClassName(e):t},m=[],g=[],(r.qsa=K.test(n.querySelectorAll))&&(ut(function(e){e.innerHTML="<select><option selected=''></option></select>",e.querySelectorAll("[selected]").length||g.push("\\["+P+"*(?:value|"+B+")"),e.querySelectorAll(":checked").length||g.push(":checked")}),ut(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t",""),e.querySelectorAll("[t^='']").length&&g.push("[*^$]="+P+"*(?:''|\"\")"),e.querySelectorAll(":enabled").length||g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(r.matchesSelector=K.test(y=d.webkitMatchesSelector||d.mozMatchesSelector||d.oMatchesSelector||d.msMatchesSelector))&&ut(function(e){r.disconnectedMatch=y.call(e,"div"),y.call(e,"[s!='']:x"),m.push("!=",I)}),g=g.length&&RegExp(g.join("|")),m=m.length&&RegExp(m.join("|")),v=K.test(d.contains)||d.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},A=d.compareDocumentPosition?function(e,t){if(e===t)return S=!0,0;var i=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t);return i?1&i||!r.sortDetached&&t.compareDocumentPosition(e)===i?e===n||v(w,e)?-1:t===n||v(w,t)?1:c?F.call(c,e)-F.call(c,t):0:4&i?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,o=e.parentNode,a=t.parentNode,s=[e],l=[t];if(e===t)return S=!0,0;if(!o||!a)return e===n?-1:t===n?1:o?-1:a?1:c?F.call(c,e)-F.call(c,t):0;if(o===a)return pt(e,t);r=e;while(r=r.parentNode)s.unshift(r);r=t;while(r=r.parentNode)l.unshift(r);while(s[i]===l[i])i++;return i?pt(s[i],l[i]):s[i]===w?-1:l[i]===w?1:0},n):f},at.matches=function(e,t){return at(e,null,null,t)},at.matchesSelector=function(e,t){if((e.ownerDocument||e)!==f&&p(e),t=t.replace(Y,"='$1']"),!(!r.matchesSelector||!h||m&&m.test(t)||g&&g.test(t)))try{var n=y.call(e,t);if(n||r.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(i){}return at(t,f,null,[e]).length>0},at.contains=function(e,t){return(e.ownerDocument||e)!==f&&p(e),v(e,t)},at.attr=function(e,n){(e.ownerDocument||e)!==f&&p(e);var i=o.attrHandle[n.toLowerCase()],a=i&&L.call(o.attrHandle,n.toLowerCase())?i(e,n,!h):t;return a===t?r.attributes||!h?e.getAttribute(n):(a=e.getAttributeNode(n))&&a.specified?a.value:null:a},at.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},at.uniqueSort=function(e){var t,n=[],i=0,o=0;if(S=!r.detectDuplicates,c=!r.sortStable&&e.slice(0),e.sort(A),S){while(t=e[o++])t===e[o]&&(i=n.push(o));while(i--)e.splice(n[i],1)}return e},a=at.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=a(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=a(t);return n},o=at.selectors={cacheLength:50,createPseudo:lt,match:Q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(rt,it),e[3]=(e[4]||e[5]||"").replace(rt,it),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||at.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&at.error(e[0]),e},PSEUDO:function(e){var n,r=!e[5]&&e[2];return Q.CHILD.test(e[0])?null:(e[3]&&e[4]!==t?e[2]=e[4]:r&&J.test(r)&&(n=mt(r,!0))&&(n=r.indexOf(")",r.length-n)-r.length)&&(e[0]=e[0].slice(0,n),e[2]=r.slice(0,n)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(rt,it).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=N[e+" "];return t||(t=RegExp("(^|"+P+")"+e+"("+P+"|$)"))&&N(e,function(e){return t.test("string"==typeof e.className&&e.className||typeof e.getAttribute!==j&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=at.attr(r,e);return null==i?"!="===t:t?(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i+" ").indexOf(n)>-1:"|="===t?i===n||i.slice(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var u,c,p,f,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!l&&!s;if(m){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){c=m[b]||(m[b]={}),u=c[e]||[],d=u[0]===T&&u[1],f=u[0]===T&&u[2],p=d&&m.childNodes[d];while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if(1===p.nodeType&&++f&&p===t){c[e]=[T,d,f];break}}else if(v&&(u=(t[b]||(t[b]={}))[e])&&u[0]===T)f=u[1];else while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if((s?p.nodeName.toLowerCase()===y:1===p.nodeType)&&++f&&(v&&((p[b]||(p[b]={}))[e]=[T,f]),p===t))break;return f-=i,f===r||0===f%r&&f/r>=0}}},PSEUDO:function(e,t){var n,r=o.pseudos[e]||o.setFilters[e.toLowerCase()]||at.error("unsupported pseudo: "+e);return r[b]?r(t):r.length>1?(n=[e,e,"",t],o.setFilters.hasOwnProperty(e.toLowerCase())?lt(function(e,n){var i,o=r(e,t),a=o.length;while(a--)i=F.call(e,o[a]),e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:lt(function(e){var t=[],n=[],r=l(e.replace(z,"$1"));return r[b]?lt(function(e,t,n,i){var o,a=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:lt(function(e){return function(t){return at(e,t).length>0}}),contains:lt(function(e){return function(t){return(t.textContent||t.innerText||a(t)).indexOf(e)>-1}}),lang:lt(function(e){return G.test(e||"")||at.error("unsupported lang: "+e),e=e.replace(rt,it).toLowerCase(),function(t){var n;do if(n=h?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===d},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)return!1;return!0},parent:function(e){return!o.pseudos.empty(e)},header:function(e){return tt.test(e.nodeName)},input:function(e){return et.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type)},first:ht(function(){return[0]}),last:ht(function(e,t){return[t-1]}),eq:ht(function(e,t,n){return[0>n?n+t:n]}),even:ht(function(e,t){var n=0;for(;t>n;n+=2)e.push(n);return e}),odd:ht(function(e,t){var n=1;for(;t>n;n+=2)e.push(n);return e}),lt:ht(function(e,t,n){var r=0>n?n+t:n;for(;--r>=0;)e.push(r);return e}),gt:ht(function(e,t,n){var r=0>n?n+t:n;for(;t>++r;)e.push(r);return e})}},o.pseudos.nth=o.pseudos.eq;for(n in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})o.pseudos[n]=ft(n);for(n in{submit:!0,reset:!0})o.pseudos[n]=dt(n);function gt(){}gt.prototype=o.filters=o.pseudos,o.setFilters=new gt;function mt(e,t){var n,r,i,a,s,l,u,c=k[e+" "];if(c)return t?0:c.slice(0);s=e,l=[],u=o.preFilter;while(s){(!n||(r=X.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),l.push(i=[])),n=!1,(r=U.exec(s))&&(n=r.shift(),i.push({value:n,type:r[0].replace(z," ")}),s=s.slice(n.length));for(a in o.filter)!(r=Q[a].exec(s))||u[a]&&!(r=u[a](r))||(n=r.shift(),i.push({value:n,type:a,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?at.error(e):k(e,l).slice(0)}function yt(e){var t=0,n=e.length,r="";for(;n>t;t++)r+=e[t].value;return r}function vt(e,t,n){var r=t.dir,o=n&&"parentNode"===r,a=C++;return t.first?function(t,n,i){while(t=t[r])if(1===t.nodeType||o)return e(t,n,i)}:function(t,n,s){var l,u,c,p=T+" "+a;if(s){while(t=t[r])if((1===t.nodeType||o)&&e(t,n,s))return!0}else while(t=t[r])if(1===t.nodeType||o)if(c=t[b]||(t[b]={}),(u=c[r])&&u[0]===p){if((l=u[1])===!0||l===i)return l===!0}else if(u=c[r]=[p],u[1]=e(t,n,s)||i,u[1]===!0)return!0}}function bt(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xt(e,t,n,r,i){var o,a=[],s=0,l=e.length,u=null!=t;for(;l>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),u&&t.push(s));return a}function wt(e,t,n,r,i,o){return r&&!r[b]&&(r=wt(r)),i&&!i[b]&&(i=wt(i,o)),lt(function(o,a,s,l){var u,c,p,f=[],d=[],h=a.length,g=o||Nt(t||"*",s.nodeType?[s]:s,[]),m=!e||!o&&t?g:xt(g,f,e,s,l),y=n?i||(o?e:h||r)?[]:a:m;if(n&&n(m,y,s,l),r){u=xt(y,d),r(u,[],s,l),c=u.length;while(c--)(p=u[c])&&(y[d[c]]=!(m[d[c]]=p))}if(o){if(i||e){if(i){u=[],c=y.length;while(c--)(p=y[c])&&u.push(m[c]=p);i(null,y=[],u,l)}c=y.length;while(c--)(p=y[c])&&(u=i?F.call(o,p):f[c])>-1&&(o[u]=!(a[u]=p))}}else y=xt(y===a?y.splice(h,y.length):y),i?i(null,a,y,l):M.apply(a,y)})}function Tt(e){var t,n,r,i=e.length,a=o.relative[e[0].type],s=a||o.relative[" "],l=a?1:0,c=vt(function(e){return e===t},s,!0),p=vt(function(e){return F.call(t,e)>-1},s,!0),f=[function(e,n,r){return!a&&(r||n!==u)||((t=n).nodeType?c(e,n,r):p(e,n,r))}];for(;i>l;l++)if(n=o.relative[e[l].type])f=[vt(bt(f),n)];else{if(n=o.filter[e[l].type].apply(null,e[l].matches),n[b]){for(r=++l;i>r;r++)if(o.relative[e[r].type])break;return wt(l>1&&bt(f),l>1&&yt(e.slice(0,l-1).concat({value:" "===e[l-2].type?"*":""})).replace(z,"$1"),n,r>l&&Tt(e.slice(l,r)),i>r&&Tt(e=e.slice(r)),i>r&&yt(e))}f.push(n)}return bt(f)}function Ct(e,t){var n=0,r=t.length>0,a=e.length>0,s=function(s,l,c,p,d){var h,g,m,y=[],v=0,b="0",x=s&&[],w=null!=d,C=u,N=s||a&&o.find.TAG("*",d&&l.parentNode||l),k=T+=null==C?1:Math.random()||.1;for(w&&(u=l!==f&&l,i=n);null!=(h=N[b]);b++){if(a&&h){g=0;while(m=e[g++])if(m(h,l,c)){p.push(h);break}w&&(T=k,i=++n)}r&&((h=!m&&h)&&v--,s&&x.push(h))}if(v+=b,r&&b!==v){g=0;while(m=t[g++])m(x,y,l,c);if(s){if(v>0)while(b--)x[b]||y[b]||(y[b]=q.call(p));y=xt(y)}M.apply(p,y),w&&!s&&y.length>0&&v+t.length>1&&at.uniqueSort(p)}return w&&(T=k,u=C),x};return r?lt(s):s}l=at.compile=function(e,t){var n,r=[],i=[],o=E[e+" "];if(!o){t||(t=mt(e)),n=t.length;while(n--)o=Tt(t[n]),o[b]?r.push(o):i.push(o);o=E(e,Ct(i,r))}return o};function Nt(e,t,n){var r=0,i=t.length;for(;i>r;r++)at(e,t[r],n);return n}function kt(e,t,n,i){var a,s,u,c,p,f=mt(e);if(!i&&1===f.length){if(s=f[0]=f[0].slice(0),s.length>2&&"ID"===(u=s[0]).type&&r.getById&&9===t.nodeType&&h&&o.relative[s[1].type]){if(t=(o.find.ID(u.matches[0].replace(rt,it),t)||[])[0],!t)return n;e=e.slice(s.shift().value.length)}a=Q.needsContext.test(e)?0:s.length;while(a--){if(u=s[a],o.relative[c=u.type])break;if((p=o.find[c])&&(i=p(u.matches[0].replace(rt,it),V.test(s[0].type)&&t.parentNode||t))){if(s.splice(a,1),e=i.length&&yt(s),!e)return M.apply(n,i),n;break}}}return l(e,f)(i,t,!h,n,V.test(e)),n}r.sortStable=b.split("").sort(A).join("")===b,r.detectDuplicates=S,p(),r.sortDetached=ut(function(e){return 1&e.compareDocumentPosition(f.createElement("div"))}),ut(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||ct("type|href|height|width",function(e,n,r){return r?t:e.getAttribute(n,"type"===n.toLowerCase()?1:2)}),r.attributes&&ut(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||ct("value",function(e,n,r){return r||"input"!==e.nodeName.toLowerCase()?t:e.defaultValue}),ut(function(e){return null==e.getAttribute("disabled")})||ct(B,function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&i.specified?i.value:e[n]===!0?n.toLowerCase():null}),x.find=at,x.expr=at.selectors,x.expr[":"]=x.expr.pseudos,x.unique=at.uniqueSort,x.text=at.getText,x.isXMLDoc=at.isXML,x.contains=at.contains}(e);var O={};function F(e){var t=O[e]={};return x.each(e.match(T)||[],function(e,n){t[n]=!0}),t}x.Callbacks=function(e){e="string"==typeof e?O[e]||F(e):x.extend({},e);var n,r,i,o,a,s,l=[],u=!e.once&&[],c=function(t){for(r=e.memory&&t,i=!0,a=s||0,s=0,o=l.length,n=!0;l&&o>a;a++)if(l[a].apply(t[0],t[1])===!1&&e.stopOnFalse){r=!1;break}n=!1,l&&(u?u.length&&c(u.shift()):r?l=[]:p.disable())},p={add:function(){if(l){var t=l.length;(function i(t){x.each(t,function(t,n){var r=x.type(n);"function"===r?e.unique&&p.has(n)||l.push(n):n&&n.length&&"string"!==r&&i(n)})})(arguments),n?o=l.length:r&&(s=t,c(r))}return this},remove:function(){return l&&x.each(arguments,function(e,t){var r;while((r=x.inArray(t,l,r))>-1)l.splice(r,1),n&&(o>=r&&o--,a>=r&&a--)}),this},has:function(e){return e?x.inArray(e,l)>-1:!(!l||!l.length)},empty:function(){return l=[],o=0,this},disable:function(){return l=u=r=t,this},disabled:function(){return!l},lock:function(){return u=t,r||p.disable(),this},locked:function(){return!u},fireWith:function(e,t){return!l||i&&!u||(t=t||[],t=[e,t.slice?t.slice():t],n?u.push(t):c(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},x.extend({Deferred:function(e){var t=[["resolve","done",x.Callbacks("once memory"),"resolved"],["reject","fail",x.Callbacks("once memory"),"rejected"],["notify","progress",x.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return x.Deferred(function(n){x.each(t,function(t,o){var a=o[0],s=x.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&x.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"With"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?x.extend(e,r):r}},i={};return r.pipe=r.then,x.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=g.call(arguments),r=n.length,i=1!==r||e&&x.isFunction(e.promise)?r:0,o=1===i?e:x.Deferred(),a=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?g.call(arguments):r,n===s?o.notifyWith(t,n):--i||o.resolveWith(t,n)}},s,l,u;if(r>1)for(s=Array(r),l=Array(r),u=Array(r);r>t;t++)n[t]&&x.isFunction(n[t].promise)?n[t].promise().done(a(t,u,n)).fail(o.reject).progress(a(t,l,s)):--i;return i||o.resolveWith(u,n),o.promise()}}),x.support=function(t){var n,r,o,s,l,u,c,p,f,d=a.createElement("div");if(d.setAttribute("className","t"),d.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",n=d.getElementsByTagName("*")||[],r=d.getElementsByTagName("a")[0],!r||!r.style||!n.length)return t;s=a.createElement("select"),u=s.appendChild(a.createElement("option")),o=d.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t.getSetAttribute="t"!==d.className,t.leadingWhitespace=3===d.firstChild.nodeType,t.tbody=!d.getElementsByTagName("tbody").length,t.htmlSerialize=!!d.getElementsByTagName("link").length,t.style=/top/.test(r.getAttribute("style")),t.hrefNormalized="/a"===r.getAttribute("href"),t.opacity=/^0.5/.test(r.style.opacity),t.cssFloat=!!r.style.cssFloat,t.checkOn=!!o.value,t.optSelected=u.selected,t.enctype=!!a.createElement("form").enctype,t.html5Clone="<:nav></:nav>"!==a.createElement("nav").cloneNode(!0).outerHTML,t.inlineBlockNeedsLayout=!1,t.shrinkWrapBlocks=!1,t.pixelPosition=!1,t.deleteExpando=!0,t.noCloneEvent=!0,t.reliableMarginRight=!0,t.boxSizingReliable=!0,o.checked=!0,t.noCloneChecked=o.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!u.disabled;try{delete d.test}catch(h){t.deleteExpando=!1}o=a.createElement("input"),o.setAttribute("value",""),t.input=""===o.getAttribute("value"),o.value="t",o.setAttribute("type","radio"),t.radioValue="t"===o.value,o.setAttribute("checked","t"),o.setAttribute("name","t"),l=a.createDocumentFragment(),l.appendChild(o),t.appendChecked=o.checked,t.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,d.attachEvent&&(d.attachEvent("onclick",function(){t.noCloneEvent=!1}),d.cloneNode(!0).click());for(f in{submit:!0,change:!0,focusin:!0})d.setAttribute(c="on"+f,"t"),t[f+"Bubbles"]=c in e||d.attributes[c].expando===!1;d.style.backgroundClip="content-box",d.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===d.style.backgroundClip;for(f in x(t))break;return t.ownLast="0"!==f,x(function(){var n,r,o,s="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",l=a.getElementsByTagName("body")[0];l&&(n=a.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",l.appendChild(n).appendChild(d),d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",o=d.getElementsByTagName("td"),o[0].style.cssText="padding:0;margin:0;border:0;display:none",p=0===o[0].offsetHeight,o[0].style.display="",o[1].style.display="none",t.reliableHiddenOffsets=p&&0===o[0].offsetHeight,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",x.swap(l,null!=l.style.zoom?{zoom:1}:{},function(){t.boxSizing=4===d.offsetWidth}),e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(d,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(d,null)||{width:"4px"}).width,r=d.appendChild(a.createElement("div")),r.style.cssText=d.style.cssText=s,r.style.marginRight=r.style.width="0",d.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),typeof d.style.zoom!==i&&(d.innerHTML="",d.style.cssText=s+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=3===d.offsetWidth,d.style.display="block",d.innerHTML="<div></div>",d.firstChild.style.width="5px",t.shrinkWrapBlocks=3!==d.offsetWidth,t.inlineBlockNeedsLayout&&(l.style.zoom=1)),l.removeChild(n),n=d=o=r=null)}),n=s=l=u=r=o=null,t -}({});var B=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;function R(e,n,r,i){if(x.acceptData(e)){var o,a,s=x.expando,l=e.nodeType,u=l?x.cache:e,c=l?e[s]:e[s]&&s;if(c&&u[c]&&(i||u[c].data)||r!==t||"string"!=typeof n)return c||(c=l?e[s]=p.pop()||x.guid++:s),u[c]||(u[c]=l?{}:{toJSON:x.noop}),("object"==typeof n||"function"==typeof n)&&(i?u[c]=x.extend(u[c],n):u[c].data=x.extend(u[c].data,n)),a=u[c],i||(a.data||(a.data={}),a=a.data),r!==t&&(a[x.camelCase(n)]=r),"string"==typeof n?(o=a[n],null==o&&(o=a[x.camelCase(n)])):o=a,o}}function W(e,t,n){if(x.acceptData(e)){var r,i,o=e.nodeType,a=o?x.cache:e,s=o?e[x.expando]:x.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){x.isArray(t)?t=t.concat(x.map(t,x.camelCase)):t in r?t=[t]:(t=x.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;while(i--)delete r[t[i]];if(n?!I(r):!x.isEmptyObject(r))return}(n||(delete a[s].data,I(a[s])))&&(o?x.cleanData([e],!0):x.support.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}x.extend({cache:{},noData:{applet:!0,embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?x.cache[e[x.expando]]:e[x.expando],!!e&&!I(e)},data:function(e,t,n){return R(e,t,n)},removeData:function(e,t){return W(e,t)},_data:function(e,t,n){return R(e,t,n,!0)},_removeData:function(e,t){return W(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&x.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),x.fn.extend({data:function(e,n){var r,i,o=null,a=0,s=this[0];if(e===t){if(this.length&&(o=x.data(s),1===s.nodeType&&!x._data(s,"parsedAttrs"))){for(r=s.attributes;r.length>a;a++)i=r[a].name,0===i.indexOf("data-")&&(i=x.camelCase(i.slice(5)),$(s,i,o[i]));x._data(s,"parsedAttrs",!0)}return o}return"object"==typeof e?this.each(function(){x.data(this,e)}):arguments.length>1?this.each(function(){x.data(this,e,n)}):s?$(s,e,x.data(s,e)):null},removeData:function(e){return this.each(function(){x.removeData(this,e)})}});function $(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(P,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:B.test(r)?x.parseJSON(r):r}catch(o){}x.data(e,n,r)}else r=t}return r}function I(e){var t;for(t in e)if(("data"!==t||!x.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}x.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=x._data(e,n),r&&(!i||x.isArray(r)?i=x._data(e,n,x.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,i=n.shift(),o=x._queueHooks(e,t),a=function(){x.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return x._data(e,n)||x._data(e,n,{empty:x.Callbacks("once memory").add(function(){x._removeData(e,t+"queue"),x._removeData(e,n)})})}}),x.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?x.queue(this[0],e):n===t?this:this.each(function(){var t=x.queue(this,e,n);x._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&x.dequeue(this,e)})},dequeue:function(e){return this.each(function(){x.dequeue(this,e)})},delay:function(e,t){return e=x.fx?x.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=x.Deferred(),a=this,s=this.length,l=function(){--i||o.resolveWith(a,[a])};"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=x._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),o.promise(n)}});var z,X,U=/[\t\r\n\f]/g,V=/\r/g,Y=/^(?:input|select|textarea|button|object)$/i,J=/^(?:a|area)$/i,G=/^(?:checked|selected)$/i,Q=x.support.getSetAttribute,K=x.support.input;x.fn.extend({attr:function(e,t){return x.access(this,x.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){x.removeAttr(this,e)})},prop:function(e,t){return x.access(this,x.prop,e,t,arguments.length>1)},removeProp:function(e){return e=x.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,l="string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):" ")){o=0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=x.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,l=0===arguments.length||"string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):"")){o=0;while(i=t[o++])while(r.indexOf(" "+i+" ")>=0)r=r.replace(" "+i+" "," ");n.className=e?x.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):x.isFunction(e)?this.each(function(n){x(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n){var t,r=0,o=x(this),a=e.match(T)||[];while(t=a[r++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else(n===i||"boolean"===n)&&(this.className&&x._data(this,"__className__",this.className),this.className=this.className||e===!1?"":x._data(this,"__className__")||"")})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(U," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)return i=x.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(o=i?e.call(this,n,x(this).val()):e,null==o?o="":"number"==typeof o?o+="":x.isArray(o)&&(o=x.map(o,function(e){return null==e?"":e+""})),r=x.valHooks[this.type]||x.valHooks[this.nodeName.toLowerCase()],r&&"set"in r&&r.set(this,o,"value")!==t||(this.value=o))});if(o)return r=x.valHooks[o.type]||x.valHooks[o.nodeName.toLowerCase()],r&&"get"in r&&(n=r.get(o,"value"))!==t?n:(n=o.value,"string"==typeof n?n.replace(V,""):null==n?"":n)}}}),x.extend({valHooks:{option:{get:function(e){var t=x.find.attr(e,"value");return null!=t?t:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,a=o?null:[],s=o?i+1:r.length,l=0>i?s:o?i:0;for(;s>l;l++)if(n=r[l],!(!n.selected&&l!==i||(x.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&x.nodeName(n.parentNode,"optgroup"))){if(t=x(n).val(),o)return t;a.push(t)}return a},set:function(e,t){var n,r,i=e.options,o=x.makeArray(t),a=i.length;while(a--)r=i[a],(r.selected=x.inArray(x(r).val(),o)>=0)&&(n=!0);return n||(e.selectedIndex=-1),o}}},attr:function(e,n,r){var o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return typeof e.getAttribute===i?x.prop(e,n,r):(1===s&&x.isXMLDoc(e)||(n=n.toLowerCase(),o=x.attrHooks[n]||(x.expr.match.bool.test(n)?X:z)),r===t?o&&"get"in o&&null!==(a=o.get(e,n))?a:(a=x.find.attr(e,n),null==a?t:a):null!==r?o&&"set"in o&&(a=o.set(e,r,n))!==t?a:(e.setAttribute(n,r+""),r):(x.removeAttr(e,n),t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(T);if(o&&1===e.nodeType)while(n=o[i++])r=x.propFix[n]||n,x.expr.match.bool.test(n)?K&&Q||!G.test(n)?e[r]=!1:e[x.camelCase("default-"+n)]=e[r]=!1:x.attr(e,n,""),e.removeAttribute(Q?n:r)},attrHooks:{type:{set:function(e,t){if(!x.support.radioValue&&"radio"===t&&x.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{"for":"htmlFor","class":"className"},prop:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!x.isXMLDoc(e),a&&(n=x.propFix[n]||n,o=x.propHooks[n]),r!==t?o&&"set"in o&&(i=o.set(e,r,n))!==t?i:e[n]=r:o&&"get"in o&&null!==(i=o.get(e,n))?i:e[n]},propHooks:{tabIndex:{get:function(e){var t=x.find.attr(e,"tabindex");return t?parseInt(t,10):Y.test(e.nodeName)||J.test(e.nodeName)&&e.href?0:-1}}}}),X={set:function(e,t,n){return t===!1?x.removeAttr(e,n):K&&Q||!G.test(n)?e.setAttribute(!Q&&x.propFix[n]||n,n):e[x.camelCase("default-"+n)]=e[n]=!0,n}},x.each(x.expr.match.bool.source.match(/\w+/g),function(e,n){var r=x.expr.attrHandle[n]||x.find.attr;x.expr.attrHandle[n]=K&&Q||!G.test(n)?function(e,n,i){var o=x.expr.attrHandle[n],a=i?t:(x.expr.attrHandle[n]=t)!=r(e,n,i)?n.toLowerCase():null;return x.expr.attrHandle[n]=o,a}:function(e,n,r){return r?t:e[x.camelCase("default-"+n)]?n.toLowerCase():null}}),K&&Q||(x.attrHooks.value={set:function(e,n,r){return x.nodeName(e,"input")?(e.defaultValue=n,t):z&&z.set(e,n,r)}}),Q||(z={set:function(e,n,r){var i=e.getAttributeNode(r);return i||e.setAttributeNode(i=e.ownerDocument.createAttribute(r)),i.value=n+="","value"===r||n===e.getAttribute(r)?n:t}},x.expr.attrHandle.id=x.expr.attrHandle.name=x.expr.attrHandle.coords=function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&""!==i.value?i.value:null},x.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n);return r&&r.specified?r.value:t},set:z.set},x.attrHooks.contenteditable={set:function(e,t,n){z.set(e,""===t?!1:t,n)}},x.each(["width","height"],function(e,n){x.attrHooks[n]={set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}}})),x.support.hrefNormalized||x.each(["href","src"],function(e,t){x.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}}),x.support.style||(x.attrHooks.style={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style.cssText=t+""}}),x.support.optSelected||(x.propHooks.selected={get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}}),x.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){x.propFix[this.toLowerCase()]=this}),x.support.enctype||(x.propFix.enctype="encoding"),x.each(["radio","checkbox"],function(){x.valHooks[this]={set:function(e,n){return x.isArray(n)?e.checked=x.inArray(x(e).val(),n)>=0:t}},x.support.checkOn||(x.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Z=/^(?:input|select|textarea)$/i,et=/^key/,tt=/^(?:mouse|contextmenu)|click/,nt=/^(?:focusinfocus|focusoutblur)$/,rt=/^([^.]*)(?:\.(.+)|)$/;function it(){return!0}function ot(){return!1}function at(){try{return a.activeElement}catch(e){}}x.event={global:{},add:function(e,n,r,o,a){var s,l,u,c,p,f,d,h,g,m,y,v=x._data(e);if(v){r.handler&&(c=r,r=c.handler,a=c.selector),r.guid||(r.guid=x.guid++),(l=v.events)||(l=v.events={}),(f=v.handle)||(f=v.handle=function(e){return typeof x===i||e&&x.event.triggered===e.type?t:x.event.dispatch.apply(f.elem,arguments)},f.elem=e),n=(n||"").match(T)||[""],u=n.length;while(u--)s=rt.exec(n[u])||[],g=y=s[1],m=(s[2]||"").split(".").sort(),g&&(p=x.event.special[g]||{},g=(a?p.delegateType:p.bindType)||g,p=x.event.special[g]||{},d=x.extend({type:g,origType:y,data:o,handler:r,guid:r.guid,selector:a,needsContext:a&&x.expr.match.needsContext.test(a),namespace:m.join(".")},c),(h=l[g])||(h=l[g]=[],h.delegateCount=0,p.setup&&p.setup.call(e,o,m,f)!==!1||(e.addEventListener?e.addEventListener(g,f,!1):e.attachEvent&&e.attachEvent("on"+g,f))),p.add&&(p.add.call(e,d),d.handler.guid||(d.handler.guid=r.guid)),a?h.splice(h.delegateCount++,0,d):h.push(d),x.event.global[g]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,l,u,c,p,f,d,h,g,m=x.hasData(e)&&x._data(e);if(m&&(c=m.events)){t=(t||"").match(T)||[""],u=t.length;while(u--)if(s=rt.exec(t[u])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){p=x.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,f=c[d]||[],s=s[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),l=o=f.length;while(o--)a=f[o],!i&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(f.splice(o,1),a.selector&&f.delegateCount--,p.remove&&p.remove.call(e,a));l&&!f.length&&(p.teardown&&p.teardown.call(e,h,m.handle)!==!1||x.removeEvent(e,d,m.handle),delete c[d])}else for(d in c)x.event.remove(e,d+t[u],n,r,!0);x.isEmptyObject(c)&&(delete m.handle,x._removeData(e,"events"))}},trigger:function(n,r,i,o){var s,l,u,c,p,f,d,h=[i||a],g=v.call(n,"type")?n.type:n,m=v.call(n,"namespace")?n.namespace.split("."):[];if(u=f=i=i||a,3!==i.nodeType&&8!==i.nodeType&&!nt.test(g+x.event.triggered)&&(g.indexOf(".")>=0&&(m=g.split("."),g=m.shift(),m.sort()),l=0>g.indexOf(":")&&"on"+g,n=n[x.expando]?n:new x.Event(g,"object"==typeof n&&n),n.isTrigger=o?2:3,n.namespace=m.join("."),n.namespace_re=n.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=t,n.target||(n.target=i),r=null==r?[n]:x.makeArray(r,[n]),p=x.event.special[g]||{},o||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!o&&!p.noBubble&&!x.isWindow(i)){for(c=p.delegateType||g,nt.test(c+g)||(u=u.parentNode);u;u=u.parentNode)h.push(u),f=u;f===(i.ownerDocument||a)&&h.push(f.defaultView||f.parentWindow||e)}d=0;while((u=h[d++])&&!n.isPropagationStopped())n.type=d>1?c:p.bindType||g,s=(x._data(u,"events")||{})[n.type]&&x._data(u,"handle"),s&&s.apply(u,r),s=l&&u[l],s&&x.acceptData(u)&&s.apply&&s.apply(u,r)===!1&&n.preventDefault();if(n.type=g,!o&&!n.isDefaultPrevented()&&(!p._default||p._default.apply(h.pop(),r)===!1)&&x.acceptData(i)&&l&&i[g]&&!x.isWindow(i)){f=i[l],f&&(i[l]=null),x.event.triggered=g;try{i[g]()}catch(y){}x.event.triggered=t,f&&(i[l]=f)}return n.result}},dispatch:function(e){e=x.event.fix(e);var n,r,i,o,a,s=[],l=g.call(arguments),u=(x._data(this,"events")||{})[e.type]||[],c=x.event.special[e.type]||{};if(l[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){s=x.event.handlers.call(this,e,u),n=0;while((o=s[n++])&&!e.isPropagationStopped()){e.currentTarget=o.elem,a=0;while((i=o.handlers[a++])&&!e.isImmediatePropagationStopped())(!e.namespace_re||e.namespace_re.test(i.namespace))&&(e.handleObj=i,e.data=i.data,r=((x.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,l),r!==t&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,o,a,s=[],l=n.delegateCount,u=e.target;if(l&&u.nodeType&&(!e.button||"click"!==e.type))for(;u!=this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(o=[],a=0;l>a;a++)i=n[a],r=i.selector+" ",o[r]===t&&(o[r]=i.needsContext?x(r,this).index(u)>=0:x.find(r,this,null,[u]).length),o[r]&&o.push(i);o.length&&s.push({elem:u,handlers:o})}return n.length>l&&s.push({elem:this,handlers:n.slice(l)}),s},fix:function(e){if(e[x.expando])return e;var t,n,r,i=e.type,o=e,s=this.fixHooks[i];s||(this.fixHooks[i]=s=tt.test(i)?this.mouseHooks:et.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,e=new x.Event(o),t=r.length;while(t--)n=r[t],e[n]=o[n];return e.target||(e.target=o.srcElement||a),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,s.filter?s.filter(e,o):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,o,s=n.button,l=n.fromElement;return null==e.pageX&&null!=n.clientX&&(i=e.target.ownerDocument||a,o=i.documentElement,r=i.body,e.pageX=n.clientX+(o&&o.scrollLeft||r&&r.scrollLeft||0)-(o&&o.clientLeft||r&&r.clientLeft||0),e.pageY=n.clientY+(o&&o.scrollTop||r&&r.scrollTop||0)-(o&&o.clientTop||r&&r.clientTop||0)),!e.relatedTarget&&l&&(e.relatedTarget=l===e.target?n.toElement:l),e.which||s===t||(e.which=1&s?1:2&s?3:4&s?2:0),e}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==at()&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){return this===at()&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},click:{trigger:function(){return x.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):t},_default:function(e){return x.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=x.extend(new x.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?x.event.trigger(i,null,t):x.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},x.removeEvent=a.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)}:function(e,t,n){var r="on"+t;e.detachEvent&&(typeof e[r]===i&&(e[r]=null),e.detachEvent(r,n))},x.Event=function(e,n){return this instanceof x.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.getPreventDefault()?it:ot):this.type=e,n&&x.extend(this,n),this.timeStamp=e&&e.timeStamp||x.now(),this[x.expando]=!0,t):new x.Event(e,n)},x.Event.prototype={isDefaultPrevented:ot,isPropagationStopped:ot,isImmediatePropagationStopped:ot,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=it,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=it,e&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=it,this.stopPropagation()}},x.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){x.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return(!i||i!==r&&!x.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),x.support.submitBubbles||(x.event.special.submit={setup:function(){return x.nodeName(this,"form")?!1:(x.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=x.nodeName(n,"input")||x.nodeName(n,"button")?n.form:t;r&&!x._data(r,"submitBubbles")&&(x.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),x._data(r,"submitBubbles",!0))}),t)},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&x.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return x.nodeName(this,"form")?!1:(x.event.remove(this,"._submit"),t)}}),x.support.changeBubbles||(x.event.special.change={setup:function(){return Z.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(x.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),x.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),x.event.simulate("change",this,e,!0)})),!1):(x.event.add(this,"beforeactivate._change",function(e){var t=e.target;Z.test(t.nodeName)&&!x._data(t,"changeBubbles")&&(x.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||x.event.simulate("change",this.parentNode,e,!0)}),x._data(t,"changeBubbles",!0))}),t)},handle:function(e){var n=e.target;return this!==n||e.isSimulated||e.isTrigger||"radio"!==n.type&&"checkbox"!==n.type?e.handleObj.handler.apply(this,arguments):t},teardown:function(){return x.event.remove(this,"._change"),!Z.test(this.nodeName)}}),x.support.focusinBubbles||x.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){x.event.simulate(t,e.target,x.event.fix(e),!0)};x.event.special[t]={setup:function(){0===n++&&a.addEventListener(e,r,!0)},teardown:function(){0===--n&&a.removeEventListener(e,r,!0)}}}),x.fn.extend({on:function(e,n,r,i,o){var a,s;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(a in e)this.on(a,n,r,e[a],o);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=ot;else if(!i)return this;return 1===o&&(s=i,i=function(e){return x().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=x.guid++)),this.each(function(){x.event.add(this,e,i,r,n)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,o;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,x(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(o in e)this.off(o,n,e[o]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=ot),this.each(function(){x.event.remove(this,e,r,n)})},trigger:function(e,t){return this.each(function(){x.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?x.event.trigger(e,n,r,!0):t}});var st=/^.[^:#\[\.,]*$/,lt=/^(?:parents|prev(?:Until|All))/,ut=x.expr.match.needsContext,ct={children:!0,contents:!0,next:!0,prev:!0};x.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(x(e).filter(function(){for(t=0;i>t;t++)if(x.contains(r[t],this))return!0}));for(t=0;i>t;t++)x.find(e,r[t],n);return n=this.pushStack(i>1?x.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},has:function(e){var t,n=x(e,this),r=n.length;return this.filter(function(){for(t=0;r>t;t++)if(x.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(ft(this,e||[],!0))},filter:function(e){return this.pushStack(ft(this,e||[],!1))},is:function(e){return!!ft(this,"string"==typeof e&&ut.test(e)?x(e):e||[],!1).length},closest:function(e,t){var n,r=0,i=this.length,o=[],a=ut.test(e)||"string"!=typeof e?x(e,t||this.context):0;for(;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(11>n.nodeType&&(a?a.index(n)>-1:1===n.nodeType&&x.find.matchesSelector(n,e))){n=o.push(n);break}return this.pushStack(o.length>1?x.unique(o):o)},index:function(e){return e?"string"==typeof e?x.inArray(this[0],x(e)):x.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof e?x(e,t):x.makeArray(e&&e.nodeType?[e]:e),r=x.merge(this.get(),n);return this.pushStack(x.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function pt(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}x.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return x.dir(e,"parentNode")},parentsUntil:function(e,t,n){return x.dir(e,"parentNode",n)},next:function(e){return pt(e,"nextSibling")},prev:function(e){return pt(e,"previousSibling")},nextAll:function(e){return x.dir(e,"nextSibling")},prevAll:function(e){return x.dir(e,"previousSibling")},nextUntil:function(e,t,n){return x.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return x.dir(e,"previousSibling",n)},siblings:function(e){return x.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return x.sibling(e.firstChild)},contents:function(e){return x.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:x.merge([],e.childNodes)}},function(e,t){x.fn[e]=function(n,r){var i=x.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=x.filter(r,i)),this.length>1&&(ct[e]||(i=x.unique(i)),lt.test(e)&&(i=i.reverse())),this.pushStack(i)}}),x.extend({filter:function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?x.find.matchesSelector(r,e)?[r]:[]:x.find.matches(e,x.grep(t,function(e){return 1===e.nodeType}))},dir:function(e,n,r){var i=[],o=e[n];while(o&&9!==o.nodeType&&(r===t||1!==o.nodeType||!x(o).is(r)))1===o.nodeType&&i.push(o),o=o[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});function ft(e,t,n){if(x.isFunction(t))return x.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return x.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(st.test(t))return x.filter(t,e,n);t=x.filter(t,e)}return x.grep(e,function(e){return x.inArray(e,t)>=0!==n})}function dt(e){var t=ht.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}var ht="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",gt=/ jQuery\d+="(?:null|\d+)"/g,mt=RegExp("<(?:"+ht+")[\\s/>]","i"),yt=/^\s+/,vt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bt=/<([\w:]+)/,xt=/<tbody/i,wt=/<|&#?\w+;/,Tt=/<(?:script|style|link)/i,Ct=/^(?:checkbox|radio)$/i,Nt=/checked\s*(?:[^=]|=\s*.checked.)/i,kt=/^$|\/(?:java|ecma)script/i,Et=/^true\/(.*)/,St=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,At={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:x.support.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},jt=dt(a),Dt=jt.appendChild(a.createElement("div"));At.optgroup=At.option,At.tbody=At.tfoot=At.colgroup=At.caption=At.thead,At.th=At.td,x.fn.extend({text:function(e){return x.access(this,function(e){return e===t?x.text(this):this.empty().append((this[0]&&this[0].ownerDocument||a).createTextNode(e))},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){var n,r=e?x.filter(e,this):this,i=0;for(;null!=(n=r[i]);i++)t||1!==n.nodeType||x.cleanData(Ft(n)),n.parentNode&&(t&&x.contains(n.ownerDocument,n)&&_t(Ft(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){var e,t=0;for(;null!=(e=this[t]);t++){1===e.nodeType&&x.cleanData(Ft(e,!1));while(e.firstChild)e.removeChild(e.firstChild);e.options&&x.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return x.clone(this,e,t)})},html:function(e){return x.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return 1===n.nodeType?n.innerHTML.replace(gt,""):t;if(!("string"!=typeof e||Tt.test(e)||!x.support.htmlSerialize&&mt.test(e)||!x.support.leadingWhitespace&&yt.test(e)||At[(bt.exec(e)||["",""])[1].toLowerCase()])){e=e.replace(vt,"<$1></$2>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(x.cleanData(Ft(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=x.map(this,function(e){return[e.nextSibling,e.parentNode]}),t=0;return this.domManip(arguments,function(n){var r=e[t++],i=e[t++];i&&(r&&r.parentNode!==i&&(r=this.nextSibling),x(this).remove(),i.insertBefore(n,r))},!0),t?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t,n){e=d.apply([],e);var r,i,o,a,s,l,u=0,c=this.length,p=this,f=c-1,h=e[0],g=x.isFunction(h);if(g||!(1>=c||"string"!=typeof h||x.support.checkClone)&&Nt.test(h))return this.each(function(r){var i=p.eq(r);g&&(e[0]=h.call(this,r,i.html())),i.domManip(e,t,n)});if(c&&(l=x.buildFragment(e,this[0].ownerDocument,!1,!n&&this),r=l.firstChild,1===l.childNodes.length&&(l=r),r)){for(a=x.map(Ft(l,"script"),Ht),o=a.length;c>u;u++)i=l,u!==f&&(i=x.clone(i,!0,!0),o&&x.merge(a,Ft(i,"script"))),t.call(this[u],i,u);if(o)for(s=a[a.length-1].ownerDocument,x.map(a,qt),u=0;o>u;u++)i=a[u],kt.test(i.type||"")&&!x._data(i,"globalEval")&&x.contains(s,i)&&(i.src?x._evalUrl(i.src):x.globalEval((i.text||i.textContent||i.innerHTML||"").replace(St,"")));l=r=null}return this}});function Lt(e,t){return x.nodeName(e,"table")&&x.nodeName(1===t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function Ht(e){return e.type=(null!==x.find.attr(e,"type"))+"/"+e.type,e}function qt(e){var t=Et.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function _t(e,t){var n,r=0;for(;null!=(n=e[r]);r++)x._data(n,"globalEval",!t||x._data(t[r],"globalEval"))}function Mt(e,t){if(1===t.nodeType&&x.hasData(e)){var n,r,i,o=x._data(e),a=x._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;i>r;r++)x.event.add(t,n,s[n][r])}a.data&&(a.data=x.extend({},a.data))}}function Ot(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!x.support.noCloneEvent&&t[x.expando]){i=x._data(t);for(r in i.events)x.removeEvent(t,r,i.handle);t.removeAttribute(x.expando)}"script"===n&&t.text!==e.text?(Ht(t).text=e.text,qt(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),x.support.html5Clone&&e.innerHTML&&!x.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Ct.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}}x.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){x.fn[e]=function(e){var n,r=0,i=[],o=x(e),a=o.length-1;for(;a>=r;r++)n=r===a?this:this.clone(!0),x(o[r])[t](n),h.apply(i,n.get());return this.pushStack(i)}});function Ft(e,n){var r,o,a=0,s=typeof e.getElementsByTagName!==i?e.getElementsByTagName(n||"*"):typeof e.querySelectorAll!==i?e.querySelectorAll(n||"*"):t;if(!s)for(s=[],r=e.childNodes||e;null!=(o=r[a]);a++)!n||x.nodeName(o,n)?s.push(o):x.merge(s,Ft(o,n));return n===t||n&&x.nodeName(e,n)?x.merge([e],s):s}function Bt(e){Ct.test(e.type)&&(e.defaultChecked=e.checked)}x.extend({clone:function(e,t,n){var r,i,o,a,s,l=x.contains(e.ownerDocument,e);if(x.support.html5Clone||x.isXMLDoc(e)||!mt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(Dt.innerHTML=e.outerHTML,Dt.removeChild(o=Dt.firstChild)),!(x.support.noCloneEvent&&x.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||x.isXMLDoc(e)))for(r=Ft(o),s=Ft(e),a=0;null!=(i=s[a]);++a)r[a]&&Ot(i,r[a]);if(t)if(n)for(s=s||Ft(e),r=r||Ft(o),a=0;null!=(i=s[a]);a++)Mt(i,r[a]);else Mt(e,o);return r=Ft(o,"script"),r.length>0&&_t(r,!l&&Ft(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){var i,o,a,s,l,u,c,p=e.length,f=dt(t),d=[],h=0;for(;p>h;h++)if(o=e[h],o||0===o)if("object"===x.type(o))x.merge(d,o.nodeType?[o]:o);else if(wt.test(o)){s=s||f.appendChild(t.createElement("div")),l=(bt.exec(o)||["",""])[1].toLowerCase(),c=At[l]||At._default,s.innerHTML=c[1]+o.replace(vt,"<$1></$2>")+c[2],i=c[0];while(i--)s=s.lastChild;if(!x.support.leadingWhitespace&&yt.test(o)&&d.push(t.createTextNode(yt.exec(o)[0])),!x.support.tbody){o="table"!==l||xt.test(o)?"<table>"!==c[1]||xt.test(o)?0:s:s.firstChild,i=o&&o.childNodes.length;while(i--)x.nodeName(u=o.childNodes[i],"tbody")&&!u.childNodes.length&&o.removeChild(u)}x.merge(d,s.childNodes),s.textContent="";while(s.firstChild)s.removeChild(s.firstChild);s=f.lastChild}else d.push(t.createTextNode(o));s&&f.removeChild(s),x.support.appendChecked||x.grep(Ft(d,"input"),Bt),h=0;while(o=d[h++])if((!r||-1===x.inArray(o,r))&&(a=x.contains(o.ownerDocument,o),s=Ft(f.appendChild(o),"script"),a&&_t(s),n)){i=0;while(o=s[i++])kt.test(o.type||"")&&n.push(o)}return s=null,f},cleanData:function(e,t){var n,r,o,a,s=0,l=x.expando,u=x.cache,c=x.support.deleteExpando,f=x.event.special;for(;null!=(n=e[s]);s++)if((t||x.acceptData(n))&&(o=n[l],a=o&&u[o])){if(a.events)for(r in a.events)f[r]?x.event.remove(n,r):x.removeEvent(n,r,a.handle); -u[o]&&(delete u[o],c?delete n[l]:typeof n.removeAttribute!==i?n.removeAttribute(l):n[l]=null,p.push(o))}},_evalUrl:function(e){return x.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),x.fn.extend({wrapAll:function(e){if(x.isFunction(e))return this.each(function(t){x(this).wrapAll(e.call(this,t))});if(this[0]){var t=x(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&1===e.firstChild.nodeType)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return x.isFunction(e)?this.each(function(t){x(this).wrapInner(e.call(this,t))}):this.each(function(){var t=x(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=x.isFunction(e);return this.each(function(n){x(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){x.nodeName(this,"body")||x(this).replaceWith(this.childNodes)}).end()}});var Pt,Rt,Wt,$t=/alpha\([^)]*\)/i,It=/opacity\s*=\s*([^)]*)/,zt=/^(top|right|bottom|left)$/,Xt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,Vt=RegExp("^("+w+")(.*)$","i"),Yt=RegExp("^("+w+")(?!px)[a-z%]+$","i"),Jt=RegExp("^([+-])=("+w+")","i"),Gt={BODY:"block"},Qt={position:"absolute",visibility:"hidden",display:"block"},Kt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bottom","Left"],en=["Webkit","O","Moz","ms"];function tn(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=en.length;while(i--)if(t=en[i]+n,t in e)return t;return r}function nn(e,t){return e=t||e,"none"===x.css(e,"display")||!x.contains(e.ownerDocument,e)}function rn(e,t){var n,r,i,o=[],a=0,s=e.length;for(;s>a;a++)r=e[a],r.style&&(o[a]=x._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=x._data(r,"olddisplay",ln(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&x._data(r,"olddisplay",i?n:x.css(r,"display"))));for(a=0;s>a;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}x.fn.extend({css:function(e,n){return x.access(this,function(e,n,r){var i,o,a={},s=0;if(x.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=x.css(e,n[s],!1,o);return a}return r!==t?x.style(e,n,r):x.css(e,n)},e,n,arguments.length>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){nn(this)?x(this).show():x(this).hide()})}}),x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":x.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,l=x.camelCase(n),u=e.style;if(n=x.cssProps[l]||(x.cssProps[l]=tn(u,l)),s=x.cssHooks[n]||x.cssHooks[l],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:u[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(x.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||x.cssNumber[l]||(r+="px"),x.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(u[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{u[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,l=x.camelCase(n);return n=x.cssProps[l]||(x.cssProps[l]=tn(e.style,l)),s=x.cssHooks[n]||x.cssHooks[l],s&&"get"in s&&(a=s.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Kt&&(a=Kt[n]),""===r||r?(o=parseFloat(a),r===!0||x.isNumeric(o)?o||0:a):a}}),e.getComputedStyle?(Rt=function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s.getPropertyValue(n)||s[n]:t,u=e.style;return s&&(""!==l||x.contains(e.ownerDocument,e)||(l=x.style(e,n)),Yt.test(l)&&Ut.test(n)&&(i=u.width,o=u.minWidth,a=u.maxWidth,u.minWidth=u.maxWidth=u.width=l,l=s.width,u.width=i,u.minWidth=o,u.maxWidth=a)),l}):a.documentElement.currentStyle&&(Rt=function(e){return e.currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s[n]:t,u=e.style;return null==l&&u&&u[n]&&(l=u[n]),Yt.test(l)&&!zt.test(n)&&(i=u.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),u.left="fontSize"===n?"1em":l,l=u.pixelLeft+"px",u.left=i,a&&(o.left=a)),""===l?"auto":l});function on(e,t,n){var r=Vt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function an(e,t,n,r,i){var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;for(;4>o;o+=2)"margin"===n&&(a+=x.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=x.css(e,"padding"+Zt[o],!0,i)),"margin"!==n&&(a-=x.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=x.css(e,"padding"+Zt[o],!0,i),"padding"!==n&&(a+=x.css(e,"border"+Zt[o]+"Width",!0,i)));return a}function sn(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Rt(e),a=x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=Wt(e,t,o),(0>i||null==i)&&(i=e.style[t]),Yt.test(i))return i;r=a&&(x.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+an(e,t,n||(a?"border":"content"),r,o)+"px"}function ln(e){var t=a,n=Gt[e];return n||(n=un(e,t),"none"!==n&&n||(Pt=(Pt||x("<iframe frameborder='0' width='0' height='0'/>").css("cssText","display:block !important")).appendTo(t.documentElement),t=(Pt[0].contentWindow||Pt[0].contentDocument).document,t.write("<!doctype html><html><body>"),t.close(),n=un(e,t),Pt.detach()),Gt[e]=n),n}function un(e,t){var n=x(t.createElement(e)).appendTo(t.body),r=x.css(n[0],"display");return n.remove(),r}x.each(["height","width"],function(e,n){x.cssHooks[n]={get:function(e,r,i){return r?0===e.offsetWidth&&Xt.test(x.css(e,"display"))?x.swap(e,Qt,function(){return sn(e,n,i)}):sn(e,n,i):t},set:function(e,t,r){var i=r&&Rt(e);return on(e,t,r?an(e,n,r,x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,i),i):0)}}}),x.support.opacity||(x.cssHooks.opacity={get:function(e,t){return It.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=x.isNumeric(t)?"alpha(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""===x.trim(o.replace($t,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""===t||r&&!r.filter)||(n.filter=$t.test(o)?o.replace($t,i):o+" "+i)}}),x(function(){x.support.reliableMarginRight||(x.cssHooks.marginRight={get:function(e,n){return n?x.swap(e,{display:"inline-block"},Wt,[e,"marginRight"]):t}}),!x.support.pixelPosition&&x.fn.position&&x.each(["top","left"],function(e,n){x.cssHooks[n]={get:function(e,r){return r?(r=Wt(e,n),Yt.test(r)?x(e).position()[n]+"px":r):t}}})}),x.expr&&x.expr.filters&&(x.expr.filters.hidden=function(e){return 0>=e.offsetWidth&&0>=e.offsetHeight||!x.support.reliableHiddenOffsets&&"none"===(e.style&&e.style.display||x.css(e,"display"))},x.expr.filters.visible=function(e){return!x.expr.filters.hidden(e)}),x.each({margin:"",padding:"",border:"Width"},function(e,t){x.cssHooks[e+t]={expand:function(n){var r=0,i={},o="string"==typeof n?n.split(" "):[n];for(;4>r;r++)i[e+Zt[r]+t]=o[r]||o[r-2]||o[0];return i}},Ut.test(e)||(x.cssHooks[e+t].set=on)});var cn=/%20/g,pn=/\[\]$/,fn=/\r?\n/g,dn=/^(?:submit|button|image|reset|file)$/i,hn=/^(?:input|select|textarea|keygen)/i;x.fn.extend({serialize:function(){return x.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=x.prop(this,"elements");return e?x.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!x(this).is(":disabled")&&hn.test(this.nodeName)&&!dn.test(e)&&(this.checked||!Ct.test(e))}).map(function(e,t){var n=x(this).val();return null==n?null:x.isArray(n)?x.map(n,function(e){return{name:t.name,value:e.replace(fn,"\r\n")}}):{name:t.name,value:n.replace(fn,"\r\n")}}).get()}}),x.param=function(e,n){var r,i=[],o=function(e,t){t=x.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(n===t&&(n=x.ajaxSettings&&x.ajaxSettings.traditional),x.isArray(e)||e.jquery&&!x.isPlainObject(e))x.each(e,function(){o(this.name,this.value)});else for(r in e)gn(r,e[r],n,o);return i.join("&").replace(cn,"+")};function gn(e,t,n,r){var i;if(x.isArray(t))x.each(t,function(t,i){n||pn.test(e)?r(e,i):gn(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==x.type(t))r(e,t);else for(i in t)gn(e+"["+i+"]",t[i],n,r)}x.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){x.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),x.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}});var mn,yn,vn=x.now(),bn=/\?/,xn=/#.*$/,wn=/([?&])_=[^&]*/,Tn=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Cn=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Nn=/^(?:GET|HEAD)$/,kn=/^\/\//,En=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Sn=x.fn.load,An={},jn={},Dn="*/".concat("*");try{yn=o.href}catch(Ln){yn=a.createElement("a"),yn.href="",yn=yn.href}mn=En.exec(yn.toLowerCase())||[];function Hn(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(T)||[];if(x.isFunction(n))while(r=o[i++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function qn(e,n,r,i){var o={},a=e===jn;function s(l){var u;return o[l]=!0,x.each(e[l]||[],function(e,l){var c=l(n,r,i);return"string"!=typeof c||a||o[c]?a?!(u=c):t:(n.dataTypes.unshift(c),s(c),!1)}),u}return s(n.dataTypes[0])||!o["*"]&&s("*")}function _n(e,n){var r,i,o=x.ajaxSettings.flatOptions||{};for(i in n)n[i]!==t&&((o[i]?e:r||(r={}))[i]=n[i]);return r&&x.extend(!0,e,r),e}x.fn.load=function(e,n,r){if("string"!=typeof e&&Sn)return Sn.apply(this,arguments);var i,o,a,s=this,l=e.indexOf(" ");return l>=0&&(i=e.slice(l,e.length),e=e.slice(0,l)),x.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(a="POST"),s.length>0&&x.ajax({url:e,type:a,dataType:"html",data:n}).done(function(e){o=arguments,s.html(i?x("<div>").append(x.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){s.each(r,o||[e.responseText,t,e])}),this},x.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){x.fn[t]=function(e){return this.on(t,e)}}),x.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:yn,type:"GET",isLocal:Cn.test(mn[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Dn,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":x.parseJSON,"text xml":x.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?_n(_n(e,x.ajaxSettings),t):_n(x.ajaxSettings,e)},ajaxPrefilter:Hn(An),ajaxTransport:Hn(jn),ajax:function(e,n){"object"==typeof e&&(n=e,e=t),n=n||{};var r,i,o,a,s,l,u,c,p=x.ajaxSetup({},n),f=p.context||p,d=p.context&&(f.nodeType||f.jquery)?x(f):x.event,h=x.Deferred(),g=x.Callbacks("once memory"),m=p.statusCode||{},y={},v={},b=0,w="canceled",C={readyState:0,getResponseHeader:function(e){var t;if(2===b){if(!c){c={};while(t=Tn.exec(a))c[t[1].toLowerCase()]=t[2]}t=c[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===b?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return b||(e=v[n]=v[n]||e,y[e]=t),this},overrideMimeType:function(e){return b||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>b)for(t in e)m[t]=[m[t],e[t]];else C.always(e[C.status]);return this},abort:function(e){var t=e||w;return u&&u.abort(t),k(0,t),this}};if(h.promise(C).complete=g.add,C.success=C.done,C.error=C.fail,p.url=((e||p.url||yn)+"").replace(xn,"").replace(kn,mn[1]+"//"),p.type=n.method||n.type||p.method||p.type,p.dataTypes=x.trim(p.dataType||"*").toLowerCase().match(T)||[""],null==p.crossDomain&&(r=En.exec(p.url.toLowerCase()),p.crossDomain=!(!r||r[1]===mn[1]&&r[2]===mn[2]&&(r[3]||("http:"===r[1]?"80":"443"))===(mn[3]||("http:"===mn[1]?"80":"443")))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=x.param(p.data,p.traditional)),qn(An,p,n,C),2===b)return C;l=p.global,l&&0===x.active++&&x.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!Nn.test(p.type),o=p.url,p.hasContent||(p.data&&(o=p.url+=(bn.test(o)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=wn.test(o)?o.replace(wn,"$1_="+vn++):o+(bn.test(o)?"&":"?")+"_="+vn++)),p.ifModified&&(x.lastModified[o]&&C.setRequestHeader("If-Modified-Since",x.lastModified[o]),x.etag[o]&&C.setRequestHeader("If-None-Match",x.etag[o])),(p.data&&p.hasContent&&p.contentType!==!1||n.contentType)&&C.setRequestHeader("Content-Type",p.contentType),C.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+Dn+"; q=0.01":""):p.accepts["*"]);for(i in p.headers)C.setRequestHeader(i,p.headers[i]);if(p.beforeSend&&(p.beforeSend.call(f,C,p)===!1||2===b))return C.abort();w="abort";for(i in{success:1,error:1,complete:1})C[i](p[i]);if(u=qn(jn,p,n,C)){C.readyState=1,l&&d.trigger("ajaxSend",[C,p]),p.async&&p.timeout>0&&(s=setTimeout(function(){C.abort("timeout")},p.timeout));try{b=1,u.send(y,k)}catch(N){if(!(2>b))throw N;k(-1,N)}}else k(-1,"No Transport");function k(e,n,r,i){var c,y,v,w,T,N=n;2!==b&&(b=2,s&&clearTimeout(s),u=t,a=i||"",C.readyState=e>0?4:0,c=e>=200&&300>e||304===e,r&&(w=Mn(p,C,r)),w=On(p,w,C,c),c?(p.ifModified&&(T=C.getResponseHeader("Last-Modified"),T&&(x.lastModified[o]=T),T=C.getResponseHeader("etag"),T&&(x.etag[o]=T)),204===e||"HEAD"===p.type?N="nocontent":304===e?N="notmodified":(N=w.state,y=w.data,v=w.error,c=!v)):(v=N,(e||!N)&&(N="error",0>e&&(e=0))),C.status=e,C.statusText=(n||N)+"",c?h.resolveWith(f,[y,N,C]):h.rejectWith(f,[C,N,v]),C.statusCode(m),m=t,l&&d.trigger(c?"ajaxSuccess":"ajaxError",[C,p,c?y:v]),g.fireWith(f,[C,N]),l&&(d.trigger("ajaxComplete",[C,p]),--x.active||x.event.trigger("ajaxStop")))}return C},getJSON:function(e,t,n){return x.get(e,t,n,"json")},getScript:function(e,n){return x.get(e,t,n,"script")}}),x.each(["get","post"],function(e,n){x[n]=function(e,r,i,o){return x.isFunction(r)&&(o=o||i,i=r,r=t),x.ajax({url:e,type:n,dataType:o,data:r,success:i})}});function Mn(e,n,r){var i,o,a,s,l=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),o===t&&(o=e.mimeType||n.getResponseHeader("Content-Type"));if(o)for(s in l)if(l[s]&&l[s].test(o)){u.unshift(s);break}if(u[0]in r)a=u[0];else{for(s in r){if(!u[0]||e.converters[s+" "+u[0]]){a=s;break}i||(i=s)}a=a||i}return a?(a!==u[0]&&u.unshift(a),r[a]):t}function On(e,t,n,r){var i,o,a,s,l,u={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)u[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=o,o=c.shift())if("*"===o)o=l;else if("*"!==l&&l!==o){if(a=u[l+" "+o]||u["* "+o],!a)for(i in u)if(s=i.split(" "),s[1]===o&&(a=u[l+" "+s[0]]||u["* "+s[0]])){a===!0?a=u[i]:u[i]!==!0&&(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(p){return{state:"parsererror",error:a?p:"No conversion from "+l+" to "+o}}}return{state:"success",data:t}}x.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return x.globalEval(e),e}}}),x.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),x.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=a.head||x("head")[0]||a.documentElement;return{send:function(t,i){n=a.createElement("script"),n.async=!0,e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,t){(t||!n.readyState||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystatechange=null,n.parentNode&&n.parentNode.removeChild(n),n=null,t||i(200,"success"))},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(t,!0)}}}});var Fn=[],Bn=/(=)\?(?=&|$)|\?\?/;x.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Fn.pop()||x.expando+"_"+vn++;return this[e]=!0,e}}),x.ajaxPrefilter("json jsonp",function(n,r,i){var o,a,s,l=n.jsonp!==!1&&(Bn.test(n.url)?"url":"string"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Bn.test(n.data)&&"data");return l||"jsonp"===n.dataTypes[0]?(o=n.jsonpCallback=x.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,l?n[l]=n[l].replace(Bn,"$1"+o):n.jsonp!==!1&&(n.url+=(bn.test(n.url)?"&":"?")+n.jsonp+"="+o),n.converters["script json"]=function(){return s||x.error(o+" was not called"),s[0]},n.dataTypes[0]="json",a=e[o],e[o]=function(){s=arguments},i.always(function(){e[o]=a,n[o]&&(n.jsonpCallback=r.jsonpCallback,Fn.push(o)),s&&x.isFunction(a)&&a(s[0]),s=a=t}),"script"):t});var Pn,Rn,Wn=0,$n=e.ActiveXObject&&function(){var e;for(e in Pn)Pn[e](t,!0)};function In(){try{return new e.XMLHttpRequest}catch(t){}}function zn(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}x.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&In()||zn()}:In,Rn=x.ajaxSettings.xhr(),x.support.cors=!!Rn&&"withCredentials"in Rn,Rn=x.support.ajax=!!Rn,Rn&&x.ajaxTransport(function(n){if(!n.crossDomain||x.support.cors){var r;return{send:function(i,o){var a,s,l=n.xhr();if(n.username?l.open(n.type,n.url,n.async,n.username,n.password):l.open(n.type,n.url,n.async),n.xhrFields)for(s in n.xhrFields)l[s]=n.xhrFields[s];n.mimeType&&l.overrideMimeType&&l.overrideMimeType(n.mimeType),n.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");try{for(s in i)l.setRequestHeader(s,i[s])}catch(u){}l.send(n.hasContent&&n.data||null),r=function(e,i){var s,u,c,p;try{if(r&&(i||4===l.readyState))if(r=t,a&&(l.onreadystatechange=x.noop,$n&&delete Pn[a]),i)4!==l.readyState&&l.abort();else{p={},s=l.status,u=l.getAllResponseHeaders(),"string"==typeof l.responseText&&(p.text=l.responseText);try{c=l.statusText}catch(f){c=""}s||!n.isLocal||n.crossDomain?1223===s&&(s=204):s=p.text?200:404}}catch(d){i||o(-1,d)}p&&o(s,c,p,u)},n.async?4===l.readyState?setTimeout(r):(a=++Wn,$n&&(Pn||(Pn={},x(e).unload($n)),Pn[a]=r),l.onreadystatechange=r):r()},abort:function(){r&&r(t,!0)}}}});var Xn,Un,Vn=/^(?:toggle|show|hide)$/,Yn=RegExp("^(?:([+-])=|)("+w+")([a-z%]*)$","i"),Jn=/queueHooks$/,Gn=[nr],Qn={"*":[function(e,t){var n=this.createTween(e,t),r=n.cur(),i=Yn.exec(t),o=i&&i[3]||(x.cssNumber[e]?"":"px"),a=(x.cssNumber[e]||"px"!==o&&+r)&&Yn.exec(x.css(n.elem,e)),s=1,l=20;if(a&&a[3]!==o){o=o||a[3],i=i||[],a=+r||1;do s=s||".5",a/=s,x.style(n.elem,e,a+o);while(s!==(s=n.cur()/r)&&1!==s&&--l)}return i&&(a=n.start=+a||+r||0,n.unit=o,n.end=i[1]?a+(i[1]+1)*i[2]:+i[2]),n}]};function Kn(){return setTimeout(function(){Xn=t}),Xn=x.now()}function Zn(e,t,n){var r,i=(Qn[t]||[]).concat(Qn["*"]),o=0,a=i.length;for(;a>o;o++)if(r=i[o].call(n,t,e))return r}function er(e,t,n){var r,i,o=0,a=Gn.length,s=x.Deferred().always(function(){delete l.elem}),l=function(){if(i)return!1;var t=Xn||Kn(),n=Math.max(0,u.startTime+u.duration-t),r=n/u.duration||0,o=1-r,a=0,l=u.tweens.length;for(;l>a;a++)u.tweens[a].run(o);return s.notifyWith(e,[u,o,n]),1>o&&l?n:(s.resolveWith(e,[u]),!1)},u=s.promise({elem:e,props:x.extend({},t),opts:x.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Xn||Kn(),duration:n.duration,tweens:[],createTween:function(t,n){var r=x.Tween(e,u.opts,t,n,u.opts.specialEasing[t]||u.opts.easing);return u.tweens.push(r),r},stop:function(t){var n=0,r=t?u.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)u.tweens[n].run(1);return t?s.resolveWith(e,[u,t]):s.rejectWith(e,[u,t]),this}}),c=u.props;for(tr(c,u.opts.specialEasing);a>o;o++)if(r=Gn[o].call(u,e,c,u.opts))return r;return x.map(c,Zn,u),x.isFunction(u.opts.start)&&u.opts.start.call(e,u),x.fx.timer(x.extend(l,{elem:e,anim:u,queue:u.opts.queue})),u.progress(u.opts.progress).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always)}function tr(e,t){var n,r,i,o,a;for(n in e)if(r=x.camelCase(n),i=t[r],o=e[n],x.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),a=x.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}x.Animation=x.extend(er,{tweener:function(e,t){x.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;i>r;r++)n=e[r],Qn[n]=Qn[n]||[],Qn[n].unshift(t)},prefilter:function(e,t){t?Gn.unshift(e):Gn.push(e)}});function nr(e,t,n){var r,i,o,a,s,l,u=this,c={},p=e.style,f=e.nodeType&&nn(e),d=x._data(e,"fxshow");n.queue||(s=x._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,l=s.empty.fire,s.empty.fire=function(){s.unqueued||l()}),s.unqueued++,u.always(function(){u.always(function(){s.unqueued--,x.queue(e,"fx").length||s.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[p.overflow,p.overflowX,p.overflowY],"inline"===x.css(e,"display")&&"none"===x.css(e,"float")&&(x.support.inlineBlockNeedsLayout&&"inline"!==ln(e.nodeName)?p.zoom=1:p.display="inline-block")),n.overflow&&(p.overflow="hidden",x.support.shrinkWrapBlocks||u.always(function(){p.overflow=n.overflow[0],p.overflowX=n.overflow[1],p.overflowY=n.overflow[2]}));for(r in t)if(i=t[r],Vn.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(f?"hide":"show"))continue;c[r]=d&&d[r]||x.style(e,r)}if(!x.isEmptyObject(c)){d?"hidden"in d&&(f=d.hidden):d=x._data(e,"fxshow",{}),o&&(d.hidden=!f),f?x(e).show():u.done(function(){x(e).hide()}),u.done(function(){var t;x._removeData(e,"fxshow");for(t in c)x.style(e,t,c[t])});for(r in c)a=Zn(f?d[r]:0,r,u),r in d||(d[r]=a.start,f&&(a.end=a.start,a.start="width"===r||"height"===r?1:0))}}function rr(e,t,n,r,i){return new rr.prototype.init(e,t,n,r,i)}x.Tween=rr,rr.prototype={constructor:rr,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(x.cssNumber[n]?"":"px")},cur:function(){var e=rr.propHooks[this.prop];return e&&e.get?e.get(this):rr.propHooks._default.get(this)},run:function(e){var t,n=rr.propHooks[this.prop];return this.pos=t=this.options.duration?x.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):rr.propHooks._default.set(this),this}},rr.prototype.init.prototype=rr.prototype,rr.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=x.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){x.fx.step[e.prop]?x.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[x.cssProps[e.prop]]||x.cssHooks[e.prop])?x.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},rr.propHooks.scrollTop=rr.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},x.each(["toggle","show","hide"],function(e,t){var n=x.fn[t];x.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(ir(t,!0),e,r,i)}}),x.fn.extend({fadeTo:function(e,t,n,r){return this.filter(nn).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=x.isEmptyObject(e),o=x.speed(t,n,r),a=function(){var t=er(this,x.extend({},e),o);(i||x._data(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:function(e,n,r){var i=function(e){var t=e.stop;delete e.stop,t(r)};return"string"!=typeof e&&(r=n,n=e,e=t),n&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,n=null!=e&&e+"queueHooks",o=x.timers,a=x._data(this);if(n)a[n]&&a[n].stop&&i(a[n]);else for(n in a)a[n]&&a[n].stop&&Jn.test(n)&&i(a[n]);for(n=o.length;n--;)o[n].elem!==this||null!=e&&o[n].queue!==e||(o[n].anim.stop(r),t=!1,o.splice(n,1));(t||!r)&&x.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=x._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=x.timers,a=r?r.length:0;for(n.finish=!0,x.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}});function ir(e,t){var n,r={height:e},i=0;for(t=t?1:0;4>i;i+=2-t)n=Zt[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}x.each({slideDown:ir("show"),slideUp:ir("hide"),slideToggle:ir("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){x.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),x.speed=function(e,t,n){var r=e&&"object"==typeof e?x.extend({},e):{complete:n||!n&&t||x.isFunction(e)&&e,duration:e,easing:n&&t||t&&!x.isFunction(t)&&t};return r.duration=x.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in x.fx.speeds?x.fx.speeds[r.duration]:x.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){x.isFunction(r.old)&&r.old.call(this),r.queue&&x.dequeue(this,r.queue)},r},x.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},x.timers=[],x.fx=rr.prototype.init,x.fx.tick=function(){var e,n=x.timers,r=0;for(Xn=x.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||x.fx.stop(),Xn=t},x.fx.timer=function(e){e()&&x.timers.push(e)&&x.fx.start()},x.fx.interval=13,x.fx.start=function(){Un||(Un=setInterval(x.fx.tick,x.fx.interval))},x.fx.stop=function(){clearInterval(Un),Un=null},x.fx.speeds={slow:600,fast:200,_default:400},x.fx.step={},x.expr&&x.expr.filters&&(x.expr.filters.animated=function(e){return x.grep(x.timers,function(t){return e===t.elem}).length}),x.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){x.offset.setOffset(this,e,t)});var n,r,o={top:0,left:0},a=this[0],s=a&&a.ownerDocument;if(s)return n=s.documentElement,x.contains(n,a)?(typeof a.getBoundingClientRect!==i&&(o=a.getBoundingClientRect()),r=or(s),{top:o.top+(r.pageYOffset||n.scrollTop)-(n.clientTop||0),left:o.left+(r.pageXOffset||n.scrollLeft)-(n.clientLeft||0)}):o},x.offset={setOffset:function(e,t,n){var r=x.css(e,"position");"static"===r&&(e.style.position="relative");var i=x(e),o=i.offset(),a=x.css(e,"top"),s=x.css(e,"left"),l=("absolute"===r||"fixed"===r)&&x.inArray("auto",[a,s])>-1,u={},c={},p,f;l?(c=i.position(),p=c.top,f=c.left):(p=parseFloat(a)||0,f=parseFloat(s)||0),x.isFunction(t)&&(t=t.call(e,n,o)),null!=t.top&&(u.top=t.top-o.top+p),null!=t.left&&(u.left=t.left-o.left+f),"using"in t?t.using.call(e,u):i.css(u)}},x.fn.extend({position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===x.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),x.nodeName(e[0],"html")||(n=e.offset()),n.top+=x.css(e[0],"borderTopWidth",!0),n.left+=x.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-x.css(r,"marginTop",!0),left:t.left-n.left-x.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||s;while(e&&!x.nodeName(e,"html")&&"static"===x.css(e,"position"))e=e.offsetParent;return e||s})}}),x.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);x.fn[e]=function(i){return x.access(this,function(e,i,o){var a=or(e);return o===t?a?n in a?a[n]:a.document.documentElement[i]:e[i]:(a?a.scrollTo(r?x(a).scrollLeft():o,r?o:x(a).scrollTop()):e[i]=o,t)},e,i,arguments.length,null)}});function or(e){return x.isWindow(e)?e:9===e.nodeType?e.defaultView||e.parentWindow:!1}x.each({Height:"height",Width:"width"},function(e,n){x.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){x.fn[i]=function(i,o){var a=arguments.length&&(r||"boolean"!=typeof i),s=r||(i===!0||o===!0?"margin":"border");return x.access(this,function(n,r,i){var o;return x.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(o=n.documentElement,Math.max(n.body["scroll"+e],o["scroll"+e],n.body["offset"+e],o["offset"+e],o["client"+e])):i===t?x.css(n,r,s):x.style(n,r,i,s)},n,a?i:t,a,null)}})}),x.fn.size=function(){return this.length},x.fn.andSelf=x.fn.addBack,"object"==typeof module&&module&&"object"==typeof module.exports?module.exports=x:(e.jQuery=e.$=x,"function"==typeof define&&define.amd&&define("jquery",[],function(){return x}))})(window); diff --git a/public/app/bower_components/html5-boilerplate/js/vendor/modernizr-2.6.2.min.js b/public/app/bower_components/html5-boilerplate/js/vendor/modernizr-2.6.2.min.js deleted file mode 100644 index f65d4797..00000000 --- a/public/app/bower_components/html5-boilerplate/js/vendor/modernizr-2.6.2.min.js +++ /dev/null @@ -1,4 +0,0 @@ -/* Modernizr 2.6.2 (Custom Build) | MIT & BSD - * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load - */ -;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d<e;d++)u[c[d]]=c[d]in k;return u.list&&(u.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),u}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)k.setAttribute("type",f=a[d]),e=k.type!=="text",e&&(k.value=l,k.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&k.style.WebkitAppearance!==c?(g.appendChild(k),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(k,null).WebkitAppearance!=="textfield"&&k.offsetHeight!==0,g.removeChild(k)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=k.checkValidity&&k.checkValidity()===!1:e=k.value!=l)),t[a[d]]=!!e;return t}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d="2.6.2",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k=b.createElement("input"),l=":)",m={}.toString,n=" -webkit- -moz- -o- -ms- ".split(" "),o="Webkit Moz O ms",p=o.split(" "),q=o.toLowerCase().split(" "),r={svg:"http://www.w3.org/2000/svg"},s={},t={},u={},v=[],w=v.slice,x,y=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["­",'<style id="s',h,'">',a,"</style>"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b).matches;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function k(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function l(){var a=r.elements;return typeof a=="string"?a.split(" "):a}function m(a){var b=i[a[g]];return b||(b={},h++,a[g]=h,i[h]=b),b}function n(a,c,f){c||(c=b);if(j)return c.createElement(a);f||(f=m(c));var g;return f.cache[a]?g=f.cache[a].cloneNode():e.test(a)?g=(f.cache[a]=f.createElem(a)).cloneNode():g=f.createElem(a),g.canHaveChildren&&!d.test(a)?f.frag.appendChild(g):g}function o(a,c){a||(a=b);if(j)return a.createDocumentFragment();c=c||m(a);var d=c.frag.cloneNode(),e=0,f=l(),g=f.length;for(;e<g;e++)d.createElement(f[e]);return d}function p(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return r.shivMethods?n(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+l().join().replace(/\w+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(r,b.frag)}function q(a){a||(a=b);var c=m(a);return r.shivCSS&&!f&&!c.hasCSS&&(c.hasCSS=!!k(a,"article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")),j||p(a,c),a}var c=a.html5||{},d=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,e=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,f,g="_html5shiv",h=0,i={},j;(function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",f="hidden"in a,j=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){f=!0,j=!0}})();var r={elements:c.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:c.shivCSS!==!1,supportsUnknownElements:j,shivMethods:c.shivMethods!==!1,type:"default",shivDocument:q,createElement:n,createDocumentFragment:o};a.html5=r,q(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f<d;f++)g=a[f].split("="),(e=z[g.shift()])&&(c=e(c,g));for(f=0;f<b;f++)c=x[f](c);return c}function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop().split("?").shift(),i.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]),i.instead?i.instead(a,e,f,g,h):(y[i.url]?i.noexec=!0:y[i.url]=1,f.load(i.url,i.forceCSS||!i.forceJS&&"css"==i.url.split(".").pop().split("?").shift()?"c":c,i.noexec,i.attrs,i.timeout),(d(e)||d(j))&&f.load(function(){k(),e&&e(i.origUrl,h,g),j&&j(i.origUrl,h,g),y[i.url]=2})))}function h(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}),g(a,j,b,0,h);else if(Object(a)===a)for(n in m=function(){var b=0,c;for(c in a)a.hasOwnProperty(c)&&b++;return b}(),a)a.hasOwnProperty(n)&&(!c&&!--m&&(d(j)?j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}:j[n]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),l()}}(k[n])),g(a[n],j,b,n,h))}else!c&&l()}var h=!!a.test,i=a.load||a.both,j=a.callback||f,k=j,l=a.complete||f,m,n;c(h?a.yep:a.nope,!!i),i&&c(i)}var i,j,l=this.yepnope.loader;if(e(a))g(a,0,l,0);else if(w(a))for(i=0;i<a.length;i++)j=a[i],e(j)?g(j,0,l,0):w(j)?B(j):Object(j)===j&&h(j,l);else Object(a)===a&&h(a,l)},B.addPrefix=function(a,b){z[a]=b},B.addFilter=function(a){x.push(a)},B.errorTimeout=1e4,null==b.readyState&&b.addEventListener&&(b.readyState="loading",b.addEventListener("DOMContentLoaded",A=function(){b.removeEventListener("DOMContentLoaded",A,0),b.readyState="complete"},0)),a.yepnope=k(),a.yepnope.executeStack=h,a.yepnope.injectJs=function(a,c,d,e,i,j){var k=b.createElement("script"),l,o,e=e||B.errorTimeout;k.src=a;for(o in d)k.setAttribute(o,d[o]);c=j?h:c||f,k.onreadystatechange=k.onload=function(){!l&&g(k.readyState)&&(l=1,c(),k.onload=k.onreadystatechange=null)},m(function(){l||(l=1,c(1))},e),i?k.onload():n.parentNode.insertBefore(k,n)},a.yepnope.injectCss=function(a,c,d,e,g,i){var e=b.createElement("link"),j,c=i?h:c||f;e.href=a,e.rel="stylesheet",e.type="text/css";for(j in d)e.setAttribute(j,d[j]);g||(n.parentNode.insertBefore(e,n),m(c,0))}}(this,document),Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))}; diff --git a/public/app/bower_components/html5-boilerplate/package.json b/public/app/bower_components/html5-boilerplate/package.json new file mode 100644 index 00000000..2d9ddb9b --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/package.json @@ -0,0 +1,43 @@ +{ + "devDependencies": { + "apache-server-configs": "2.11.0", + "archiver": "^0.13.0", + "del": "^1.1.0", + "glob": "^4.2.1", + "gulp": "^3.8.10", + "gulp-header": "^1.2.2", + "gulp-jscs": "^1.3.1", + "gulp-jshint": "^1.9.0", + "gulp-load-plugins": "^0.8.0", + "gulp-rename": "^1.2.0", + "gulp-replace": "^0.5.0", + "jquery": "1.11.2", + "jshint-stylish": "^1.0.0", + "mocha": "^2.0.1", + "normalize.css": "3.0.2", + "run-sequence": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" + }, + "h5bp-configs": { + "directories": { + "archive": "archive", + "dist": "dist", + "src": "src", + "test": "test" + } + }, + "homepage": "http://h5bp.com/", + "license": { + "type": "MIT", + "url": "https://github.com/h5bp/html5-boilerplate/blob/master/LICENSE.md" + }, + "name": "html5-boilerplate", + "private": true, + "scripts": { + "build": "gulp build", + "test": "gulp archive && mocha --reporter spec --timeout 5000" + }, + "version": "5.0.0" +} diff --git a/public/app/bower_components/html5-boilerplate/robots.txt b/public/app/bower_components/html5-boilerplate/robots.txt deleted file mode 100644 index ee2cc216..00000000 --- a/public/app/bower_components/html5-boilerplate/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -# robotstxt.org/ - -User-agent: * diff --git a/public/app/bower_components/html5-boilerplate/src/.editorconfig b/public/app/bower_components/html5-boilerplate/src/.editorconfig new file mode 100644 index 00000000..1b44e422 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/.editorconfig @@ -0,0 +1,13 @@ +# editorconfig.org + +root = true + +[*] +charset = utf-8 +indent_size = 4 +indent_style = space +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false diff --git a/public/app/bower_components/html5-boilerplate/src/.gitattributes b/public/app/bower_components/html5-boilerplate/src/.gitattributes new file mode 100644 index 00000000..176a458f --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/.gitattributes @@ -0,0 +1 @@ +* text=auto diff --git a/public/app/bower_components/html5-boilerplate/src/.gitignore b/public/app/bower_components/html5-boilerplate/src/.gitignore new file mode 100644 index 00000000..16b2d7d0 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/.gitignore @@ -0,0 +1,2 @@ +# Include your project-specific ignores in this file +# Read about how to use .gitignore: https://help.github.com/articles/ignoring-files diff --git a/public/app/bower_components/html5-boilerplate/src/404.html b/public/app/bower_components/html5-boilerplate/src/404.html new file mode 100644 index 00000000..8d7925a8 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/404.html @@ -0,0 +1,60 @@ +<!doctype html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title>Page Not Found + + + + +

Page Not Found

+

Sorry, but the page you were trying to view does not exist.

+ + + diff --git a/public/app/bower_components/html5-boilerplate/src/apple-touch-icon.png b/public/app/bower_components/html5-boilerplate/src/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..600738f2cee82ca5dc8e92efdb4561fd59eaeb47 GIT binary patch literal 3959 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 literal 0 HcmV?d00001 diff --git a/public/app/bower_components/html5-boilerplate/src/browserconfig.xml b/public/app/bower_components/html5-boilerplate/src/browserconfig.xml new file mode 100644 index 00000000..46de5d3c --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/browserconfig.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/public/app/bower_components/html5-boilerplate/src/crossdomain.xml b/public/app/bower_components/html5-boilerplate/src/crossdomain.xml new file mode 100644 index 00000000..818b8225 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/crossdomain.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + diff --git a/public/app/bower_components/html5-boilerplate/css/main.css b/public/app/bower_components/html5-boilerplate/src/css/main.css similarity index 76% rename from public/app/bower_components/html5-boilerplate/css/main.css rename to public/app/bower_components/html5-boilerplate/src/css/main.css index 294e0199..d4d48d54 100644 --- a/public/app/bower_components/html5-boilerplate/css/main.css +++ b/public/app/bower_components/html5-boilerplate/src/css/main.css @@ -1,5 +1,3 @@ -/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */ - /* * What follows is the result of much research on cross-browser styling. * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal, @@ -10,21 +8,16 @@ Base styles: opinionated defaults ========================================================================== */ -html, -button, -input, -select, -textarea { - color: #222; -} - html { + color: #222; font-size: 1em; line-height: 1.4; } /* - * Remove text-shadow in selection highlight: h5bp.com/i + * Remove text-shadow in selection highlight: + * https://twitter.com/miketaylr/status/12228805301 + * * These selection rule sets have to be separate. * Customize the background color to match your design. */ @@ -53,13 +46,16 @@ hr { } /* - * Remove the gap between images, videos, audio and canvas and the bottom of - * their containers: h5bp.com/i/440 + * Remove the gap between audio, canvas, iframes, + * images, videos and the bottom of their containers: + * https://github.com/h5bp/html5-boilerplate/issues/440 */ audio, canvas, +iframe, img, +svg, video { vertical-align: middle; } @@ -83,10 +79,10 @@ textarea { } /* ========================================================================== - Browse Happy prompt + Browser Upgrade Prompt ========================================================================== */ -.browsehappy { +.browserupgrade { margin: 0.2em 0; background: #ccc; color: #000; @@ -118,26 +114,8 @@ textarea { ========================================================================== */ /* - * Image replacement - */ - -.ir { - background-color: transparent; - border: 0; - overflow: hidden; - /* IE 6/7 fallback */ - *text-indent: -9999px; -} - -.ir:before { - content: ""; - display: block; - width: 0; - height: 150%; -} - -/* - * Hide from both screenreaders and browsers: h5bp.com/u + * Hide visually and from screen readers: + * http://juicystudio.com/article/screen-readers-display-none.php */ .hidden { @@ -146,7 +124,8 @@ textarea { } /* - * Hide only visually, but have it available for screenreaders: h5bp.com/v + * Hide only visually, but have it available for screen readers: + * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility */ .visuallyhidden { @@ -161,8 +140,9 @@ textarea { } /* - * Extends the .visuallyhidden class to allow the element to be focusable - * when navigated to via the keyboard: h5bp.com/p + * Extends the .visuallyhidden class to allow the element + * to be focusable when navigated to via the keyboard: + * https://www.drupal.org/node/897638 */ .visuallyhidden.focusable:active, @@ -176,7 +156,7 @@ textarea { } /* - * Hide visually and from screenreaders, but maintain layout + * Hide visually and from screen readers, but maintain layout */ .invisible { @@ -205,15 +185,6 @@ textarea { clear: both; } -/* - * For IE 6/7 only - * Include this rule to trigger hasLayout and contain floats. - */ - -.clearfix { - *zoom: 1; -} - /* ========================================================================== EXAMPLE Media Queries for Responsive Design. These examples override the primary ('mobile first') styles. @@ -233,13 +204,17 @@ textarea { /* ========================================================================== Print styles. - Inlined to avoid required HTTP connection: h5bp.com/r + Inlined to avoid the additional HTTP request: + http://www.phpied.com/delay-loading-your-print-css/ ========================================================================== */ @media print { - * { + *, + *:before, + *:after { background: transparent !important; - color: #000 !important; /* Black prints faster: h5bp.com/s */ + color: #000 !important; /* Black prints faster: + http://www.sanbeiji.com/archives/953 */ box-shadow: none !important; text-shadow: none !important; } @@ -258,12 +233,12 @@ textarea { } /* - * Don't show links for images, or javascript/internal links + * Don't show links that are fragment identifiers, + * or use the `javascript:` pseudo protocol */ - .ir a:after, - a[href^="javascript:"]:after, - a[href^="#"]:after { + a[href^="#"]:after, + a[href^="javascript:"]:after { content: ""; } @@ -273,8 +248,13 @@ textarea { page-break-inside: avoid; } + /* + * Printing Tables: + * http://css-discuss.incutio.com/wiki/Printing_Tables + */ + thead { - display: table-header-group; /* h5bp.com/t */ + display: table-header-group; } tr, @@ -286,10 +266,6 @@ textarea { max-width: 100% !important; } - @page { - margin: 0.5cm; - } - p, h2, h3 { diff --git a/public/app/bower_components/html5-boilerplate/src/doc/TOC.md b/public/app/bower_components/html5-boilerplate/src/doc/TOC.md new file mode 100644 index 00000000..199c6b07 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/TOC.md @@ -0,0 +1,29 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) + +## Getting started + +* [Usage](usage.md) — Overview of the project contents. +* [FAQ](faq.md) — Frequently asked questions along with their answers. + +## HTML5 Boilerplate core + +* [HTML](html.md) — Guide to the default HTML. +* [CSS](css.md) — Guide to the default CSS. +* [JavaScript](js.md) — Guide to the default JavaScript. +* [Everything else](misc.md). + +## Development + +* [Extending and customizing HTML5 Boilerplate](extend.md) — Going further + with the boilerplate. + +## Related projects + +The [H5BP organization](https://github.com/h5bp) maintains several projects +that complement HTML5 Boilerplate, projects that can help you improve different +aspects of your website/web app (e.g.: the performance, security, etc.). + +* [Server Configs](https://github.com/h5bp/server-configs) — Fast & smart + configurations for web servers, like Apache and Nginx +* [Ant Build Script](https://github.com/h5bp/ant-build-script) — Apache Ant + based build script. diff --git a/public/app/bower_components/html5-boilerplate/src/doc/css.md b/public/app/bower_components/html5-boilerplate/src/doc/css.md new file mode 100644 index 00000000..59f9cabb --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/css.md @@ -0,0 +1,162 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# The CSS + +HTML5 Boilerplate's CSS includes: + +* [Normalize.css](#normalizecss) +* [Useful defaults](#useful-defaults) +* [Common helpers](#common-helpers) +* [Placeholder media queries](#media-queries) +* [Print styles](#print-styles) + +This starting CSS does not rely on the presence of +[conditional class names](http://www.paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/), +[conditional style sheets](http://css-tricks.com/how-to-create-an-ie-only-stylesheet/), +or [Modernizr](http://modernizr.com/), and it is ready to use no matter what +your development preferences happen to be. + + +## Normalize.css + +In order to make browsers render all elements more consistently and in line +with modern standards, we include +[Normalize.css](https://necolas.github.io/normalize.css/) — a modern, HTML5-ready +alternative to CSS resets. + +As opposed to CSS resets, Normalize.css: + +* targets only the styles that need normalizing +* preserves useful browser defaults rather than erasing them +* corrects bugs and common browser inconsistencies +* improves usability with subtle improvements +* doesn't clutter the debugging tools +* has better documentation + +For more information about Normalize.css, please refer to its [project +page](https://necolas.github.com/normalize.css/), as well as this +[blog post](http://nicolasgallagher.com/about-normalize-css/). + + +## Useful defaults + +Several base styles are included that build upon `Normalize.css`. These +styles: + +* provide basic typography settings that improve text readability +* protect against unwanted `text-shadow` during text highlighting +* tweak the default alignment of some elements (e.g.: `img`, `video`, + `fieldset`, `textarea`) +* style the prompt that is displayed to users using an outdated browser + +You are free and even encouraged to modify or add to these base styles as your +project requires. + + +## Common helpers + +Along with the base styles, we also provide some commonly used helper classes. + +#### `.hidden` + +The `hidden` class can be added to any element that you want to hide visually +and from screen readers. It could be an element that will be populated and +displayed later, or an element you will hide with JavaScript. + +#### `.visuallyhidden` + +The `visuallyhidden` class can be added to any element that you want to hide +visually, while still have its content accessible to screen readers. + +See also: + +* [CSS in Action: Invisible Content Just for Screen Reader + Users](http://www.webaim.org/techniques/css/invisiblecontent/) +* [Hiding content for + accessibility](http://snook.ca/archives/html_and_css/hiding-content-for-accessibility) +* [HTML5 Boilerplate - Issue #194](https://github.com/h5bp/html5-boilerplate/issues/194/). + +#### `.invisible` + +The `invisible` class can be added to any element that you want to hide +visually and from screen readers, but without affecting the layout. + +As opposed to the `hidden` class that effectively removes the element from the +layout, the `invisible` class will simply make the element invisible while +keeping it in the flow and not affecting the positioning of the surrounding +content. + +__N.B.__ Try to stay away from, and don't use the classes specified above for +[keyword stuffing](https://en.wikipedia.org/wiki/Keyword_stuffing) as you will +harm your site's ranking! + +#### `.clearfix` + +The `clearfix` class can be added to any element to ensure that it always fully +contains its floated children. + +Over the years there have been many variants of the clearfix hack, but currently, +we use the [micro clearfix](http://nicolasgallagher.com/micro-clearfix-hack/). + + +## Media Queries + +HTML5 Boilerplate makes it easy for you to get started with a +[_mobile first_](http://www.lukew.com/presos/preso.asp?26) and [_responsive web +design_](http://www.alistapart.com/articles/responsive-web-design/) approach to +development. But it's worth remembering that there are [no silver +bullets](http://www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/). + +We include placeholder media queries to help you build up your mobile styles for +wider viewports and high-resolution displays. It's recommended that you adapt +these media queries based on the content of your site rather than mirroring the +fixed dimensions of specific devices. + +If you do not want to take the _mobile first_ approach, you can simply edit or +remove these placeholder media queries. One possibility would be to work from +wide viewports down, and use `max-width` media queries instead (e.g.: +`@media only screen and (max-width: 480px)`). + +For more features that can help you in your mobile web development, take a look +into our [Mobile Boilerplate](https://github.com/h5bp/mobile-boilerplate). + + +## Print styles + +Lastly, we provide some useful print styles that will optimize the printing +process, as well as make the printed pages easier to read. + +At printing time, these styles will: + +* strip all background colors, change the font color to black, and remove the + `text-shadow` — done in order to [help save printer ink and speed up the + printing process](http://www.sanbeiji.com/archives/953) +* underline and expand links to include the URL — done in order to allow users + to know where to refer to
+ (exceptions to this are: the links that are + [fragment identifiers](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href), + or use the + [`javascript:` pseudo protocol](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void#JavaScript_URIs)) +* expand abbreviations to include the full description — done in order to allow + users to know what the abbreviations stands for +* provide instructions on how browsers should break the content into pages and + on [orphans/widows](https://en.wikipedia.org/wiki/Widows_and_orphans), namely, + we instruct + [supporting browsers](https://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28Cascading_Style_Sheets%29#Grammar_and_rules) + that they should: + + * ensure the table header (``) is [printed on each page spanned by the + table](http://css-discuss.incutio.com/wiki/Printing_Tables) + * prevent block quotations, preformatted text, images and table rows from + being split onto two different pages + * ensure that headings never appear on a different page than the text they + are associated with + * ensure that + [orphans and widows](https://en.wikipedia.org/wiki/Widows_and_orphans) do + [not appear on printed pages](http://css-tricks.com/almanac/properties/o/orphans/) + +The print styles are included along with the other `css` to [avoid the +additional HTTP request](http://www.phpied.com/delay-loading-your-print-css/). +Also, they should always be included last, so that the other styles can be +overwritten. diff --git a/public/app/bower_components/html5-boilerplate/src/doc/extend.md b/public/app/bower_components/html5-boilerplate/src/doc/extend.md new file mode 100644 index 00000000..1eeb55b3 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/extend.md @@ -0,0 +1,645 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Extend and customise HTML5 Boilerplate + +Here is some useful advice for how you can make your project with HTML5 +Boilerplate even better. We don't want to include it all by default, as +not everything fits with everyone's needs. + + +* [App Stores](#app-stores) +* [DNS prefetching](#dns-prefetching) +* [Google Universal Analytics](#google-universal-analytics) +* [Internet Explorer](#internet-explorer) +* [Miscellaneous](#miscellaneous) +* [News Feeds](#news-feeds) +* [Search](#search) +* [Social Networks](#social-networks) +* [URLs](#urls) +* [Web Apps](#web-apps) + + +## App Stores + +### Install a Chrome Web Store app + +Users can install a Chrome app directly from your website, as long as +the app and site have been associated via Google's Webmaster Tools. +Read more on [Chrome Web Store's Inline Installation +docs](https://developer.chrome.com/webstore/inline_installation). + +```html + +``` + +### Smart App Banners in iOS 6+ Safari + +Stop bothering everyone with gross modals advertising your entry in the +App Store. Include the following [meta tag](https://developer.apple.com/library/IOS/documentation/AppleApplications/Reference/SafariWebContent/PromotingAppswithAppBanners/PromotingAppswithAppBanners.html#//apple_ref/doc/uid/TP40002051-CH6-SW2) +will unintrusively allow the user the option to download your iOS app, +or open it with some data about the user's current state on the website. + +```html + +``` + +## DNS prefetching + +In short, DNS Prefetching is a method of informing the browser of domain names +referenced on a site so that the client can resolve the DNS for those hosts, +cache them, and when it comes time to use them, have a faster turn around on +the request. + +### Implicit prefetches + +There is a lot of prefetching done for you automatically by the browser. When +the browser encounters an anchor in your html that does not share the same +domain name as the current location the browser requests, from the client OS, +the IP address for this new domain. The client first checks its cache and +then, lacking a cached copy, makes a request from a DNS server. These requests +happen in the background and are not meant to block the rendering of the +page. + +The goal of this is that when the foreign IP address is finally needed it will +already be in the client cache and will not block the loading of the foreign +content. Fewer requests result in faster page load times. The perception of this +is increased on a mobile platform where DNS latency can be greater. + +#### Disable implicit prefetching + +```html + +``` + +Even with X-DNS-Prefetch-Control meta tag (or http header) browsers will still +prefetch any explicit dns-prefetch links. + +**_WARNING:_** THIS MAY MAKE YOUR SITE SLOWER IF YOU RELY ON RESOURCES FROM +FOREIGN DOMAINS. + +### Explicit prefetches + +Typically the browser only scans the HTML for foreign domains. If you have +resources that are outside of your HTML (a javascript request to a remote +server or a CDN that hosts content that may not be present on every page of +your site, for example) then you can queue up a domain name to be prefetched. + +```html + + +``` + +You can use as many of these as you need, but it's best if they are all +immediately after the [Meta +Charset](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset) +element (which should go right at the top of the `head`), so the browser can +act on them ASAP. + +#### Common Prefetch Links + +Amazon S3: + +```html + +``` + +Google APIs: + +```html + +``` + +Microsoft Ajax Content Delivery Network: + +```html + + +``` + +### Further reading about DNS prefetching + +* https://developer.mozilla.org/en-US/docs/Controlling_DNS_prefetching +* https://dev.chromium.org/developers/design-documents/dns-prefetching +* http://blogs.msdn.com/b/ie/archive/2011/03/17/internet-explorer-9-network-performance-improvements.aspx +* http://dayofjs.com/videos/22158462/web-browsers_alex-russel + + +## Google Universal Analytics + +### More tracking settings + +The [optimized Google Universal Analytics +snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics) +included with HTML5 Boilerplate includes something like this: + +```js +ga('create', 'UA-XXXXX-X', 'auto'); ga('send', 'pageview'); +``` + +To customize further, see Google's [Advanced +Setup](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced), +[Pageview](https://developers.google.com/analytics/devguides/collection/analyticsjs/pages), +and [Event](https://developers.google.com/analytics/devguides/collection/analyticsjs/events) Docs. + +### Anonymize IP addresses + +In some countries, no personal data may be transferred outside jurisdictions +that do not have similarly strict laws (i.e. from Germany to outside the EU). +Thus a webmaster using the Google Universal Analytics may have to ensure that +no personal (trackable) data is transferred to the US. You can do that with +[the `ga('set', 'anonymizeIp', true);` +parameter](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#anonymizeip) +before sending any events/pageviews. In use it looks like this: + +```js +ga('create', 'UA-XXXXX-X', 'auto'); +ga('set', 'anonymizeIp', true); +ga('send', 'pageview'); +``` + +### Track jQuery AJAX requests in Google Analytics + +An article by @JangoSteve explains how to [track jQuery AJAX requests in Google +Analytics](http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/). + +Add this to `plugins.js`: + +```js +/* + * Log all jQuery AJAX requests to Google Analytics + * See: http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/ + */ +if (typeof ga !== "undefined" && ga !== null) { + $(document).ajaxSend(function(event, xhr, settings){ + ga('send', 'pageview', settings.url); + }); +} +``` + +### Track JavaScript errors in Google Analytics + +Add this function after `ga` is defined: + +```js +(function(window){ + var undefined, + link = function (href) { + var a = window.document.createElement('a'); + a.href = href; + return a; + }; + window.onerror = function (message, file, line, column) { + var host = link(file).hostname; + ga('send', { + 'hitType': 'event', + 'eventCategory': (host == window.location.hostname || host == undefined || host == '' ? '' : 'external ') + 'error', + 'eventAction': message, + 'eventLabel': (file + ' LINE: ' + line + (column ? ' COLUMN: ' + column : '')).trim(), + 'nonInteraction': 1 + }); + }; +}(window)); +``` + +### Track page scroll + +Add this function after `ga` is defined: + +```js +$(function(){ + var isDuplicateScrollEvent, + scrollTimeStart = new Date, + $window = $(window), + $document = $(document), + scrollPercent; + + $window.scroll(function() { + scrollPercent = Math.round(100 * ($window.height() + $window.scrollTop())/$document.height()); + if (scrollPercent > 90 && !isDuplicateScrollEvent) { //page scrolled to 90% + isDuplicateScrollEvent = 1; + ga('send', 'event', 'scroll', + 'Window: ' + $window.height() + 'px; Document: ' + $document.height() + 'px; Time: ' + Math.round((new Date - scrollTimeStart )/1000,1) + 's' + ); + } + }); +}); +``` + +## Internet Explorer + +### Prompt users to switch to "Desktop Mode" in IE10 Metro + +IE10 does not support plugins, such as Flash, in Metro mode. If your site +requires plugins, you can let users know that via the X-UA-Compatible meta +element, which will prompt them to switch to Desktop Mode. + +```html + +``` + +Here's what it looks like alongside H5BP's default X-UA-Compatible values: + +```html + +``` + +You can find more information in [Microsoft's IEBlog post about prompting for +plugin use in IE10 Metro +Mode](http://blogs.msdn.com/b/ie/archive/2012/01/31/web-sites-and-a-plug-in-free-web.aspx). + +### IE Pinned Sites (IE9+) + +Enabling your application for pinning will allow IE9 users to add it to their +Windows Taskbar and Start Menu. This comes with a range of new tools that you +can easily configure with the elements below. See more [documentation on IE9 +Pinned Sites](http://msdn.microsoft.com/en-us/library/gg131029.aspx). + +### Name the Pinned Site for Windows + +Without this rule, Windows will use the page title as the name for your +application. + +```html + +``` + +### Give your Pinned Site a tooltip + +You know — a tooltip. A little textbox that appears when the user holds their +mouse over your Pinned Site's icon. + +```html + +``` + +### Set a default page for your Pinned Site + +If the site should go to a specific URL when it is pinned (such as the +homepage), enter it here. One idea is to send it to a special URL so you can +track the number of pinned users, like so: +`http://www.example.com/index.html?pinned=true` + +```html + +``` + +### Recolor IE's controls manually for a Pinned Site + +IE9+ will automatically use the overall color of your Pinned Site's favicon to +shade its browser buttons. UNLESS you give it another color here. Only use +named colors (`red`) or hex colors (`#ff0000`). + +```html + +``` + +### Manually set the window size of a Pinned Site + +If the site should open at a certain window size once pinned, you can specify +the dimensions here. It only supports static pixel dimensions. 800x600 +minimum. + +```html + +``` + +### Jump List "Tasks" for Pinned Sites + +Add Jump List Tasks that will appear when the Pinned Site's icon gets a +right-click. Each Task goes to the specified URL, and gets its own mini icon +(essentially a favicon, a 16x16 .ICO). You can add as many of these as you +need. + +```html + + +``` + +### (Windows 8) High quality visuals for Pinned Sites + +Windows 8 adds the ability for you to provide a PNG tile image and specify the +tile's background color. [Full details on the IE +blog](http://blogs.msdn.com/b/ie/archive/2012/06/08/high-quality-visuals-for-pinned-sites-in-windows-8.aspx). + +* Create a 144x144 image of your site icon, filling all of the canvas, and + using a transparent background. +* Save this image as a 32-bit PNG and optimize it without reducing + colour-depth. It can be named whatever you want (e.g. `metro-tile.png`). +* To reference the tile and its color, add the HTML `meta` elements described + in the IE Blog post. + +### (Windows 8) Badges for Pinned Sites + +IE10 will poll an XML document for badge information to display on your app's +tile in the Start screen. The user will be able to receive these badge updates +even when your app isn't actively running. The badge's value can be a number, +or one of a predefined list of glyphs. + +* [Tutorial on IEBlog with link to badge XML schema](http://blogs.msdn.com/b/ie/archive/2012/04/03/pinned-sites-in-windows-8.aspx) +* [Available badge values](http://msdn.microsoft.com/en-us/library/ie/br212849.aspx) + +```html + +``` + +### Disable link highlighting upon tap in IE10 + +Similar to [-webkit-tap-highlight-color](http://davidwalsh.name/mobile-highlight-color) +in iOS Safari. Unlike that CSS property, this is an HTML meta element, and its +value is boolean rather than a color. It's all or nothing. + +```html + +``` + +You can read about this useful element and more techniques in +[Microsoft's documentation on adapting WebKit-oriented apps for IE10](http://blogs.windows.com/windows_phone/b/wpdev/archive/2012/11/15/adapting-your-webkit-optimized-site-for-internet-explorer-10.aspx). + + +## Search + +### Direct search spiders to your sitemap + +[Learn how to make a sitemap](http://www.sitemaps.org/protocol.html) + +```html + +``` + +### Hide pages from search engines + +According to Heather Champ, former community manager at Flickr, you should not +allow search engines to index your "Contact Us" or "Complaints" page if you +value your sanity. This is an HTML-centric way of achieving that. + +```html + +``` + +**_WARNING:_** DO NOT INCLUDE ON PAGES THAT SHOULD APPEAR IN SEARCH ENGINES. + +### Firefox and IE Search Plugins + +Sites with in-site search functionality should be strongly considered for a +browser search plugin. A "search plugin" is an XML file which defines how your +plugin behaves in the browser. [How to make a browser search +plugin](https://www.google.com/search?ie=UTF-8&q=how+to+make+browser+search+plugin). + +```html + +``` + + +## Miscellaneous + +* Use [polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills). + +* Use [Microformats](http://microformats.org/wiki/Main_Page) (via + [microdata](http://microformats.org/wiki/microdata)) for optimum search + results + [visibility](http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html). + +* If you're building a web app you may want [native style momentum scrolling in + iOS 5+](http://www.johanbrook.com/articles/native-style-momentum-scrolling-to-arrive-in-ios-5/) + using `-webkit-overflow-scrolling: touch`. + +* If you want to disable the translation prompt in Chrome or block Google + Translate from translating your web page, use [``](https://support.google.com/translate/?hl=en#2641276). + To disable translation for a particular section of the web page, add + [`class="notranslate"`](https://support.google.com/translate/?hl=en#2641276). + +* If you want to disable the automatic detection and formatting of possible + phone numbers in Safari on iOS, use [``](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html/#//apple_ref/doc/uid/TP40008193-SW5). + +* Avoid development/stage websites "leaking" into SERPs (search engine results + page) by [implementing X-Robots-tag + headers](https://github.com/h5bp/html5-boilerplate/issues/804). + +* Screen readers currently have less-than-stellar support for HTML5 but the JS + script [accessifyhtml5.js](https://github.com/yatil/accessifyhtml5.js) can + help increase accessibility by adding ARIA roles to HTML5 elements. + + +## News Feeds + +### RSS + +Have an RSS feed? Link to it here. Want to [learn how to write an RSS feed from +scratch](http://www.rssboard.org/rss-specification)? + +```html + +``` + +### Atom + +Atom is similar to RSS, and you might prefer to use it instead of or in +addition to it. [See what Atom's all +about](http://www.atomenabled.org/developers/syndication/). + +```html + +``` + +### Pingbacks + +Your server may be notified when another site links to yours. The href +attribute should contain the location of your pingback service. + +```html + +``` + +* High-level explanation: https://codex.wordpress.org/Introduction_to_Blogging#Pingbacks +* Step-by-step example case: http://www.hixie.ch/specs/pingback/pingback-1.0#TOC5 +* PHP pingback service: https://web.archive.org/web/20131211032834/http://blog.perplexedlabs.com/2009/07/15/xmlrpc-pingbacks-using-php/ + + + +## Social Networks + +### Facebook Open Graph data + +You can control the information that Facebook and others display when users +share your site. Below are just the most basic data points you might need. For +specific content types (including "website"), see [Facebook's built-in Open +Graph content +templates](https://developers.facebook.com/docs/opengraph/objects/builtin/). +Take full advantage of Facebook's support for complex data and activity by +following the [Open Graph +tutorial](https://developers.facebook.com/docs/opengraph/tutorial/). + +```html + + + +``` + +### Twitter Cards + +Twitter provides a snippet specification that serves a similar purpose to Open +Graph. In fact, Twitter will use Open Graph when Cards is not available. Note +that, as of this writing, Twitter requires that app developers activate Cards +on a per-domain basis. You can read more about the various snippet formats +and application process in the [official Twitter Cards +documentation](https://dev.twitter.com/docs/cards). + +```html + + + + + + + +``` + + +## URLs + +### Canonical URL + +Signal to search engines and others "Use this URL for this page!" Useful when +parameters after a `#` or `?` is used to control the display state of a page. +`http://www.example.com/cart.html?shopping-cart-open=true` can be indexed as +the cleaner, more accurate `http://www.example.com/cart.html`. + +```html + +``` + +### Official shortlink + +Signal to the world "This is the shortened URL to use this page!" Poorly +supported at this time. Learn more by reading the [article about shortlinks on +the Microformats wiki](http://microformats.org/wiki/rel-shortlink). + +```html + +``` + +### Separate mobile URLs + +If you use separate URLs for desktop and mobile users, you should consider +helping search engine algorithms better understand the configuration on your +web site. + +This can be done by adding the following annotations in your HTML pages: + +* on the desktop page, add the `link rel="alternate"` tag pointing to the + corresponding mobile URL, e.g.: + + `` + +* on the mobile page, add the `link rel="canonical"` tag pointing to the + corresponding desktop URL, e.g.: + + `` + +For more information please see: + +* https://developers.google.com/webmasters/smartphone-sites/details#separateurls +* https://developers.google.com/webmasters/smartphone-sites/feature-phones + + +## Web Apps + +There are a couple of meta tags that provide information about a web app when +added to the Home Screen on iOS: + +* Adding `apple-mobile-web-app-capable` will make your web app chrome-less and +provide the default iOS app view. You can control the color scheme of the +default view by adding `apple-mobile-web-app-status-bar-style`. + + ```html + + +``` + +* You can use `apple-mobile-web-app-title` to add a specific sites name for the +Home Screen icon. This works since iOS 6. + + ```html + +``` + +For further information please read the [official +documentation](https://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html) +on Apple's site. + + +### Apple Touch Icons + +The Apple touch icons can be seen as the favicons of iOS devices. + +The main sizes of the Apple touch icons are: + +* `57×57px` – iPhone with @1x display and iPod Touch +* `72×72px` – iPad and iPad mini with @1x display running iOS ≤ 6 +* `76×76px` – iPad and iPad mini with @1x display running iOS ≥ 7 +* `114×114px` – iPhone with @2x display running iOS ≤ 6 +* `120×120px` – iPhone with @2x and @3x display running iOS ≥ 7 +* `144×144px` – iPad and iPad mini with @2x display running iOS ≤ 6 +* `152×152px` – iPad and iPad mini with @2x display running iOS 7 +* `180×180px` – iPad and iPad mini with @2x display running iOS 8 + +Displays meaning: + +* @1x - non-Retina +* @2x - Retina +* @3x - Retina HD + +More information about the displays of iOS devices can be found +[here](https://en.wikipedia.org/wiki/List_of_iOS_devices#Display). + +In most cases, one `180×180px` touch icon named `apple-touch-icon.png` +and including: + +```html + +``` + +in the `` of the page is enough. If you use art-direction and/or +want to have different content for each device, you can add more touch +icons as written above. + +For a more comprehensive overview, please refer to Mathias' [article on Touch +Icons](https://mathiasbynens.be/notes/touch-icons). + + +### Apple Touch Startup Image + +Apart from that it is possible to add start-up screens for web apps on iOS. This +basically works by defining `apple-touch-startup-image` with an according link +to the image. Since iOS devices have different screen resolutions it is +necessary to add media queries to detect which image to load. Here is an +example for a retina iPhone: + +```html + +``` + +However, it is possible to detect which start-up image to use with JavaScript. +The Mobile Boilerplate provides a useful function for this. Please see +[helpers.js](https://github.com/h5bp/mobile-boilerplate/blob/v4.1.0/js/helper.js#L336-L383) +for the implementation. + + +### Chrome Mobile web apps + +Chrome Mobile has a specific meta tag for making apps [installable to the +homescreen](https://developer.chrome.com/multidevice/android/installtohomescreen) +which tries to be a more generic replacement to Apple's proprietary meta tag: + +```html + +``` + +Same applies to the touch icons: + +```html + +``` diff --git a/public/app/bower_components/html5-boilerplate/src/doc/faq.md b/public/app/bower_components/html5-boilerplate/src/doc/faq.md new file mode 100644 index 00000000..e3e2a9c5 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/faq.md @@ -0,0 +1,93 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Frequently asked questions + +* [Why is the URL for jQuery without + `http`?](#why-is-the-url-for-jquery-without-http) +* [Why don't you automatically load the latest version of jQuery from the Google + CDN?](#why-dont-you-automatically-load-the-latest-version-of-jquery-from-the-google-cdn) +* [Why is the Google Analytics code at the bottom? Google recommends it be + placed in the ``.](#why-is-the-google-analytics-code-at-the-bottom-google-recommends-it-be-placed-in-the-head) +* [How can I integrate Bootstrap with HTML5 + Boilerplate?](#how-can-i-integrate-bootstrap-with-html5-boilerplate) +* [Do I need to upgrade my site each time a new version of HTML5 Boilerplate is + released?](#do-i-need-to-upgrade-my-site-each-time-a-new-version-of-html5-boilerplate-is-released) +* [Where can I get help with support + questions?](#where-can-i-get-help-with-support-questions) + +-- + +### Why is the URL for jQuery without `http`? + +It is because of the use of [protocol-relative +URLs](http://paulirish.com/2010/the-protocol-relative-url/). + +**N.B.** If you try to view the local web page directly in the browser, the +browser will fail to load the assets specified using protocol-relative URLs +as it will attempt to fetch them from the local file system. We recommend you +use a local HTTP server to test your web pages, or a file hosting service that +allows you to preview your web pages online (e.g. +[Dropbox](https://www.dropbox.com/)). + +Setting up a local HTTP server can be done using there various +[one-liners](https://gist.github.com/willurd/5720255): + +* PHP 5.4.0+ by running + [`php -S localhost:8080`](https://php.net/manual/en/features.commandline.webserver.php) + from your local directory +* Python 2.x by running `python -m SimpleHTTPServer` from your local directory +* Python 3.x by running `python -m http.server` from your local directory +* Ruby 1.9.2+ by running `ruby -run -ehttpd . -p8080` from your local directory +* Node.js by installing and running either + [`static -p 8080`](https://www.npmjs.org/package/node-static) + or [`http-server -p 8080`](https://www.npmjs.org/package/http-server) + +A list of more complex HTTP servers can be found +[here](misc.md#servers-and-stacks). + + +### Why don't you automatically load the latest version of jQuery from the Google CDN? + +The [file](https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js) to which +the Google [CDN](https://en.wikipedia.org/wiki/Content_delivery_network) points +to is [no longer updated and will stay locked at version `1.11.1` in order to +prevent inadvertent web +breakage](http://blog.jquery.com/2014/07/03/dont-use-jquery-latest-js/). + +In general, version updating should be an intentional decision! You shouldn't +include a URL that will always point to the latest version, as that version: + + * may not be compatible with the existing plugins/code on the site + * will have a very short cache time compare to the specific version, + which means that users won't get the benefits of long-term caching + +### Why is the Google Analytics code at the bottom? Google recommends it be placed in the ``. + +The main advantage of placing it in the `` is that you will track the +user's `pageview` even if they leave the page before it has been fully loaded. +However, having the code at the bottom of the page [helps improve +performance](http://stevesouders.com/efws/inline-scripts-bottom.php). + + +### How can I integrate [Bootstrap](http://getbootstrap.com/) with HTML5 Boilerplate? + +One simple way is to use [Initializr](http://initializr.com) and create a +custom build that includes both HTML5 Boilerplate and +[Bootstrap](http://getbootstrap.com/). + +Read more about how [HTML5 Boilerplate and Bootstrap complement each +other](https://www.quora.com/Is-Bootstrap-a-complement-or-an-alternative-to-HTML5-Boilerplate-or-viceversa/answer/Nicolas-Gallagher). + + +### Do I need to upgrade my site each time a new version of HTML5 Boilerplate is released? + +No, same as you don't normally replace the foundation of a house once it +was built. However, there is nothing stopping you from trying to work in the +latest changes, but you'll have to assess the costs/benefits of doing so. + + +### Where can I get help with support questions? + +Please ask for help on +[StackOverflow](https://stackoverflow.com/questions/tagged/html5boilerplate). diff --git a/public/app/bower_components/html5-boilerplate/src/doc/html.md b/public/app/bower_components/html5-boilerplate/src/doc/html.md new file mode 100644 index 00000000..91d98f88 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/html.md @@ -0,0 +1,223 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# The HTML + +By default, HTML5 Boilerplate provides two `html` pages: + +* [`index.html`](#indexhtml) - a default HTML skeleton that should form the + basis of all pages on your website +* [`404.html`](#404html) - a placeholder 404 error page + + +## `index.html` + + +### The `no-js` class + +The `no-js` class is provided in order to allow you to more easily and +explicitly add custom styles based on whether JavaScript is disabled +(`.no-js`) or enabled (`.js`). Using this technique also helps [avoid the +FOUC](http://paulirish.com/2009/avoiding-the-fouc-v3/). + + +## Language attribute + +Please consider specifying the language of your content by adding the `lang` +attribute to `` as in this example: + +```html + +``` + +### The order of the `` and `<meta>` tags + +The order in which the `<title>` and the `<meta>` tags are specified is +important because: + +1) the charset declaration (`<meta charset="utf-8">`): + + * must be included completely within the [first 1024 bytes of the + document](https://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#charset) + + * should be specified as early as possible (before any content that could + be controlled by an attacker, such as a `<title>` element) in order to + avoid a potential [encoding-related security + issue](https://code.google.com/p/doctype-mirror/wiki/ArticleUtf7) in + Internet Explorer + +2) the meta tag for compatibility mode + (`<meta http-equiv="X-UA-Compatible" content="IE=edge">`): + + * [needs to be included before all other tags except for the `<title>` and + the other `<meta>` + tags](http://msdn.microsoft.com/en-us/library/cc288325.aspx) + + +### `X-UA-Compatible` + +Internet Explorer 8/9/10 support [document compatibility +modes](http://msdn.microsoft.com/en-us/library/cc288325.aspx) that affect the +way webpages are interpreted and displayed. Because of this, even if your site's +visitor is using, let's say, Internet Explorer 9, it's possible that IE will not +use the latest rendering engine, and instead, decide to render your page using +the Internet Explorer 5.5 rendering engine. + +Specifying the `X-UA-Compatible` meta tag: + +```html +<meta http-equiv="X-UA-Compatible" content="IE=edge"> +``` + +or sending the page with the following HTTP response header + +``` +X-UA-Compatible: IE=edge +``` + +will force Internet Explorer 8/9/10 to render the webpage in the highest +available mode in [the various cases when it may +not](https://hsivonen.fi/doctype/#ie8), and therefore, ensure that anyone +browsing your site is treated to the best possible user experience that +browser can offer. + +If possible, we recommend that you remove the `meta` tag and send only the +HTTP response header as the `meta` tag will not always work if your site is +served on a non-standard port, as Internet Explorer's preference option +`Display intranet sites in Compatibility View` is checked by default. + +If you are using Apache as your webserver, including the +[`.htaccess`](https://github.com/h5bp/server-configs-apache) file takes care of +the HTTP header. If you are using a different server, check out our [other +server config](https://github.com/h5bp/server-configs). + +Starting with Internet Explorer 11, [document modes are +deprecated](http://msdn.microsoft.com/en-us/library/ie/bg182625.aspx#docmode). +If your business still relies on older web apps and services that were +designed for older versions of Internet Explorer, you might want to consider +enabling [Enterprise Mode](http://blogs.msdn.com/b/ie/archive/2014/04/02/stay-up-to-date-with-enterprise-mode-for-internet-explorer-11.aspx) throughout your company. + + +## Mobile viewport + +There are a few different options that you can use with the [`viewport` meta +tag](https://docs.google.com/present/view?id=dkx3qtm_22dxsrgcf4 "Viewport and +Media Queries - The Complete Idiot's Guide"). You can find out more in [the +Apple developer docs](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html). +HTML5 Boilerplate comes with a simple setup that strikes a good balance for general use cases. + +```html +<meta name="viewport" content="width=device-width, initial-scale=1"> +``` + +## Favicons and Touch Icon + +The shortcut icons should be put in the root directory of your site. HTML5 +Boilerplate comes with a default set of icons (include favicon and one Apple +Touch Icon) that you can use as a baseline to create your own. + +Please refer to the more detailed description in the [Extend section](extend.md) +of these docs. + +## Modernizr + +HTML5 Boilerplate uses a custom build of Modernizr. + +[Modernizr](http://modernizr.com) is a JavaScript library which adds classes to +the `html` element based on the results of feature test and which ensures that +all browsers can make use of HTML5 elements (as it includes the HTML5 Shiv). +This allows you to target parts of your CSS and JavaScript based on the +features supported by a browser. + +In general, in order to keep page load times to a minimum, it's best to call +any JavaScript at the end of the page because if a script is slow to load +from an external server it may cause the whole page to hang. That said, the +Modernizr script *needs* to run *before* the browser begins rendering the page, +so that browsers lacking support for some of the new HTML5 elements are able to +handle them properly. Therefore the Modernizr script is the only JavaScript +file synchronously loaded at the top of the document. + +## What about polyfills? + +If you need to include [polyfills](https://remysharp.com/2010/10/08/what-is-a-polyfill) +in your project, you must make sure those load before any other JavaScript. If you're +using some polyfill CDN service, like [cdn.polyfill.io](http://cdn.polyfill.io/), +just put it before the other scripts in the bottom of the page: + +```html + <script src="//cdn.polyfill.io/v1/polyfill.min.js"></script> + <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> + <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.11.2.min.js"><\/script>')</script> + <script src="js/plugins.js"></script> + <script src="js/main.js"></script> +</body> +``` + +If you like to just include the polyfills yourself, you could include them in +`js/plugins.js`. When you have a bunch of polyfills to load in, you could +also create a `polyfills.js` file in the `js/vendor` directory. Also using +this technique, make sure the polyfills are all loaded before any other +Javascript. + +There are some misconceptions about Modernizr and polyfills. It's important +to understand that Modernizr just handles feature checking, not polyfilling +itself. The only thing Modernizr does regarding polyfills is that the team +maintains [a huge list of cross Browser polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills). + +## The content area + +The central part of the boilerplate template is pretty much empty. This is +intentional, in order to make the boilerplate suitable for both web page and +web app development. + +### Browser Upgrade Prompt + +The main content area of the boilerplate includes a prompt to install an up to +date browser for users of IE 6/7. If you intended to support IE 6/7, then you +should remove the snippet of code. + +### Google CDN for jQuery + +The Google CDN version of the jQuery JavaScript library is referenced towards +the bottom of the page using a protocol-independent path (read more about this +in the [FAQ](faq.md)). A local fallback of jQuery is included for rare instances +when the CDN version might not be available, and to facilitate offline +development. + +The Google CDN version is chosen over other [potential candidates (like the +jQuery CDN](https://jquery.com/download/#using-jquery-with-a-cdn)) because +it's fast in absolute terms and it has the best overall +[penetration](http://httparchive.org/trends.php#perGlibs) which increases the +odds of having a copy of the library in your user's browser cache. + +While the Google CDN is a strong default solution your site or application may +require a different configuration. Testing your site with services like +[WebPageTest](http://www.webpagetest.org/) and browser tools like +[PageSpeed Insights](https://developers.google.com/speed/pagespeed/insights/) or +[YSlow](https://developer.yahoo.com/yslow/) will help you examine the real +world performance of your site and can show where you can optimize your specific +site or application. + + +### Google Universal Analytics Tracking Code + +Finally, an optimized version of the Google Universal Analytics tracking code is +included. Google recommends that this script be placed at the top of the page. +Factors to consider: if you place this script at the top of the page, you’ll +be able to count users who don’t fully load the page, and you’ll incur the max +number of simultaneous connections of the browser. + +Further information: + +* [Optimizing the Google Universal Analytics + Snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics) +* [Introduction to + Analytics.js](https://developers.google.com/analytics/devguides/collection/analyticsjs/) +* [Google Analytics Demos & Tools](https://ga-dev-tools.appspot.com/) + +**N.B.** The Google Universal Analytics snippet is included by default mainly +because Google Analytics is [currently one of the most popular tracking +solutions](https://trends.builtwith.com/analytics/Google-Analytics) out there. +However, its usage isn't set in stone, and you SHOULD consider exploring the +[alternatives](https://en.wikipedia.org/wiki/List_of_web_analytics_software) +and use whatever suits your needs best! diff --git a/public/app/bower_components/html5-boilerplate/src/doc/js.md b/public/app/bower_components/html5-boilerplate/src/doc/js.md new file mode 100644 index 00000000..2088d9fb --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/js.md @@ -0,0 +1,37 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# The JavaScript + +Information about the default JavaScript included in the project. + +## main.js + +This file can be used to contain or reference your site/app JavaScript code. +For larger projects, you can make use of a JavaScript module loader, like +[Require.js](http://requirejs.org/), to load any other scripts you need to +run. + +## plugins.js + +This file can be used to contain all your plugins, such as jQuery plugins and +other 3rd party scripts. + +One approach is to put jQuery plugins inside of a `(function($){ ... +})(jQuery);` closure to make sure they're in the jQuery namespace safety +blanket. Read more about [jQuery plugin +authoring](http://docs.jquery.com/Plugins/Authoring#Getting_Started) + +By default the `plugins.js` file contains a small script to avoid `console` +errors in browsers that lack a `console`. The script will make sure that, if +a console method isn't available, that method will have the value of empty +function, thus, preventing the browser from throwing an error. + + +## vendor + +This directory can be used to contain all 3rd party library code. + +Minified versions of the latest jQuery and Modernizr libraries are included by +default. You may wish to create your own [custom Modernizr +build](http://www.modernizr.com/download/). diff --git a/public/app/bower_components/html5-boilerplate/src/doc/misc.md b/public/app/bower_components/html5-boilerplate/src/doc/misc.md new file mode 100644 index 00000000..459688b5 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/misc.md @@ -0,0 +1,198 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Miscellaneous + +* [.gitignore](#gitignore) +* [.editorconfig](#editorconfig) +* [Server Configuration](#server-configuration) +* [crossdomain.xml](#crossdomainxml) +* [robots.txt](#robotstxt) +* [browserconfig.xml](#browserconfigxml) + +-- + +## .gitignore + +HTML5 Boilerplate includes a basic project-level `.gitignore`. This should +primarily be used to avoid certain project-level files and directories from +being kept under source control. Different development-environments will +benefit from different collections of ignores. + +OS-specific and editor-specific files should be ignored using a "global +ignore" that applies to all repositories on your system. + +For example, add the following to your `~/.gitconfig`, where the `.gitignore` +in your HOME directory contains the files and directories you'd like to +globally ignore: + +```gitignore +[core] + excludesfile = ~/.gitignore +``` + +* More on global ignores: https://help.github.com/articles/ignoring-files +* Comprehensive set of ignores on GitHub: https://github.com/github/gitignore + + +## .editorconfig + +The `.editorconfig` file is provided in order to encourage and help you and +your team define and maintain consistent coding styles between different +editors and IDEs. + +By default, `.editorconfig` includes some basic +[properties](http://editorconfig.org/#supported-properties) that reflect the +coding styles from the files provided by default, but you can easily change +them to better suit your needs. + +In order for your editor/IDE to apply the +[properties](http://editorconfig.org/#supported-properties) from the +`.editorconfig` file, you will need to [install a +plugin]( http://editorconfig.org/#download). + +__N.B.__ If you aren't using the server configurations provided by HTML5 +Boilerplate, we highly encourage you to configure your server to block +access to `.editorconfig` files, as they can disclose sensitive information! + +For more details, please refer to the [EditorConfig +project](http://editorconfig.org/). + + +## Server Configuration + +H5BP includes a [`.htaccess`](#htaccess) file for the Apache HTTP server. If you are not using +Apache as your web server, then you are encouraged to download a +[server configuration](https://github.com/h5bp/server-configs) that corresponds +to your web server and environment. + + +### Servers and Stacks + +A comprehensive list of web servers and stacks are beyond the scope of this +documentation, but some common ones include: + +* [Apache HTTP Server](https://httpd.apache.org/docs/trunk/getting-started.html) + * [LAMP](https://en.wikipedia.org/wiki/LAMP_%28software_bundle%29) +(Linux, Apache, MySQL, and PHP). +Other variants include [MAMP](https://www.mamp.info/en/index.html), +[WAMP](http://www.wampserver.com/en/), +or [XAMPP](https://www.apachefriends.org/index.html). + * LAPP uses PostgreSQL instead of MySQL +* [Nginx](http://wiki.nginx.org/GettingStarted) + * [LEMP](http://www.chrisjohnston.org/ubuntu-tutorials/setting-up-a-lemp-stack-ubuntu-904) +is similar to the LAMP stack but uses Nginx +* [IIS](https://en.wikipedia.org/wiki/Internet_Information_Services) + * [ASP.NET](http://www.asp.net/get-started) +* [MEAN](http://mean.io/) (MongoDB, Express, AngularJS, Node.js) + + +### .htaccess + +A `.htaccess` (hypertext access) file is a +[Apache HTTP server configuration file](https://github.com/h5bp/server-configs-apache). +The `.htaccess` file is mostly used for: + +* Rewriting URLs +* Controlling cache +* Authentication +* Server-side includes +* Redirects +* Gzipping + +If you have access to the main server configuration file (usually called +`httpd.conf`), you should add the logic from the `.htaccess` file in, for +example, a <Directory> section in the main configuration file. This is usually +the recommended way, as using .htaccess files slows down Apache! + +To enable Apache modules locally, please see: +https://github.com/h5bp/server-configs-apache/wiki/How-to-enable-Apache-modules. + +In the repo the `.htaccess` is used for: + +* Allowing cross-origin access to web fonts +* CORS header for images when browsers request it +* Enable `404.html` as 404 error document +* Making the website experience better for IE users better +* Media UTF-8 as character encoding for `text/html` and `text/plain` +* Enabling the rewrite URLs engine +* Forcing or removing the `www.` at the begin of a URL +* It blocks access to directories without a default document +* It blocks access to files that can expose sensitive information. +* It reduces MIME type security risks +* It forces compressing (gzipping) +* It tells the browser whether they should request a specific file from the + server or whether they should grab it from the browser's cache + +When using `.htaccess` we recommend reading all inline comments (the rules after +a `#`) in the file once. There is a bunch of optional stuff in it. + +If you want to know more about the `.htaccess` file check out +https://httpd.apache.org/docs/current/howto/htaccess.html. + +Notice that the original repo for the `.htaccess` file is [this +one](https://github.com/h5bp/server-configs-apache). + + +## crossdomain.xml + +The _cross-domain policy file_ is an XML document that gives a web client — +such as Adobe Flash Player, Adobe Reader, etc. — permission to handle data +across multiple domains, by: + + * granting read access to data + * permitting the client to include custom headers in cross-domain requests + * granting permissions for socket-based connections + +__e.g.__ If a client hosts content from a particular source domain and that +content makes requests directed towards a domain other than its own, the remote +domain would need to host a cross-domain policy file in order to grant access +to the source domain and allow the client to continue with the transaction. + +For more in-depth information, please see Adobe's [cross-domain policy file +specification](https://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html). + + +## robots.txt + +The `robots.txt` file is used to give instructions to web robots on what can +be crawled from the website. + +By default, the file provided by this project includes the next two lines: + + * `User-agent: *` - the following rules apply to all web robots + * `Disallow:` - everything on the website is allowed to be crawled + +If you want to disallow certain pages you will need to specify the path in a +`Disallow` directive (e.g.: `Disallow: /path`) or, if you want to disallow +crawling of all content, use `Disallow: /`. + +The `/robots.txt` file is not intended for access control, so don't try to +use it as such. Think of it as a "No Entry" sign, rather than a locked door. +URLs disallowed by the `robots.txt` file might still be indexed without being +crawled, and the content from within the `robots.txt` file can be viewed by +anyone, potentially disclosing the location of your private content! So, if +you want to block access to private content, use proper authentication instead. + +For more information about `robots.txt`, please see: + + * [robotstxt.org](http://www.robotstxt.org/) + * [How Google handles the `robots.txt` file](https://developers.google.com/webmasters/control-crawl-index/docs/robots_txt) + + +## browserconfig.xml + +The `browserconfig.xml` file is used to customize the tile displayed when users +pin your site to the Windows 8.1 start screen. In there you can define custom +tile colors, custom images or even [live tiles](http://msdn.microsoft.com/en-us/library/ie/dn455106.aspx#CreatingLiveTiles). + +By default, the file points to 2 placeholder tile images: + +* `tile.png` (558x558px): used for `Small`, `Medium` and `Large` tiles. + This image resizes automatically when necessary. +* `tile-wide.png` (558x270px): user for `Wide` tiles. + +Notice that IE11 uses the same images when adding a site to the `favorites`. + +For more in-depth information about the `browserconfig.xml` file, please +see [MSDN](http://msdn.microsoft.com/en-us/library/ie/dn320426%28v=vs.85%29.aspx). diff --git a/public/app/bower_components/html5-boilerplate/src/doc/usage.md b/public/app/bower_components/html5-boilerplate/src/doc/usage.md new file mode 100644 index 00000000..4c61b1bf --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/doc/usage.md @@ -0,0 +1,130 @@ +[HTML5 Boilerplate homepage](http://html5boilerplate.com) | [Documentation +table of contents](TOC.md) + +# Usage + +Once you have cloned or downloaded HTML5 Boilerplate, creating a site or app +usually involves the following: + +1. Set up the basic structure of the site. +2. Add some content, style, and functionality. +3. Run your site locally to see how it looks. +4. (Optionally run a build script to automate the optimization of your site - + e.g. [ant build script](https://github.com/h5bp/ant-build-script)) +5. Deploy your site. + + +## Basic structure + +A basic HTML5 Boilerplate site initially looks something like this: + +``` +. +├── css +│ ├── main.css +│ └── normalize.css +├── doc +├── img +├── js +│ ├── main.js +│ ├── plugins.js +│ └── vendor +│ ├── jquery.min.js +│ └── modernizr.min.js +├── .editorconfig +├── .htaccess +├── 404.html +├── apple-touch-icon.png +├── browserconfig.xml +├── index.html +├── humans.txt +├── robots.txt +├── crossdomain.xml +├── favicon.ico +├── tile-wide.png +└── tile.png +``` + +What follows is a general overview of each major part and how to use them. + +### css + +This directory should contain all your project's CSS files. It includes some +initial CSS to help get you started from a solid foundation. [About the +CSS](css.md). + +### doc + +This directory contains all the HTML5 Boilerplate documentation. You can use it +as the location and basis for your own project's documentation. + +### js + +This directory should contain all your project's JS files. Libraries, plugins, +and custom code can all be included here. It includes some initial JS to help +get you started. [About the JavaScript](js.md). + +### .htaccess + +The default web server configs are for Apache. For more information, please +refer to the [Apache Server Configs +repository](https://github.com/h5bp/server-configs-apache). + +Host your site on a server other than Apache? You're likely to find the +corresponding server configs project listed in our [Server Configs +](https://github.com/h5bp/server-configs/blob/master/README.md) repository. + +### 404.html + +A helpful custom 404 to get you started. + +### browserconfig.xml + +This file contains all settings regarding custom tiles for IE11. + +For more info on this topic, please refer to +[MSDN](http://msdn.microsoft.com/en-us/library/ie/dn455106.aspx). + +### .editorconfig + +The `.editorconfig` file is provided in order to encourage and help you and +your team to maintain consistent coding styles between different +editors and IDEs. [Read more about the `.editorconfig` file](misc.md#editorconfig). + +### index.html + +This is the default HTML skeleton that should form the basis of all pages on +your site. If you are using a server-side templating framework, then you will +need to integrate this starting HTML with your setup. + +Make sure that you update the URLs for the referenced CSS and JavaScript if you +modify the directory structure at all. + +If you are using Google Universal Analytics, make sure that you edit the +corresponding snippet at the bottom to include your analytics ID. + +### humans.txt + +Edit this file to include the team that worked on your site/app, and the +technology powering it. + +### robots.txt + +Edit this file to include any pages you need hidden from search engines. + +### crossdomain.xml + +A template for working with cross-domain requests. [About +crossdomain.xml](misc.md#crossdomainxml). + +### Icons + +Replace the default `favicon.ico`, `tile.png`, `tile-wide.png` and Apple +Touch Icon with your own. + +If you want to use different Apple Touch Icons for different resolutions please +refer to the [according documentation](extend.md#apple-touch-icons). + +You might want to check out Hans' handy [HTML5 Boilerplate Favicon and Apple +Touch Icon +PSD-Template](https://drublic.de/blog/html5-boilerplate-favicons-psd-template/). diff --git a/public/app/bower_components/html5-boilerplate/src/favicon.ico b/public/app/bower_components/html5-boilerplate/src/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..be74abd69ad6a32de7375df13cab9354798e328f GIT binary patch literal 766 zcmc(dze~eV5XUd2fg&jH87YDYDQKxq1{4b-_ydP-wqS9vgGh17QXQQAwOE{VaBvi* zmu^z9t({y-&1ey<?*19x`_a%0;^>8Y_x;?x+`BviV9;aRjMgZ8M*!jgkRrFqSI9;F zHyfX@Az|AvVmn~YWWZP`0&JWEY~BFm?*Vq}VD7&_%x%MP$p`D`4JMC!K|B7pt?Mmp zUJAB7rxMXS6=!P+AtLU9V)J#61WPxwipRXCHO{BJ`l{m53#=t97a!znv~vfmr|AaP zRGIT7#0FyJy3Z*hL{GQp-0TRhX8UzZ)+>%?mK0^goaX4Q;x<h|7I8a@t8#9Z`A~@1 zIx{#+`h7(7bA0+s7#-k=_?cTQZjqG{+al%<xj`*i0llsi@&x*V=JS=7GQ@hVV0w`- td#$W2=*99o&LFePcYQf3%L?7WGUv;WVIDdObG#I0%L#Kp!H@7y;s@Y5ipBr{ literal 0 HcmV?d00001 diff --git a/public/app/bower_components/html5-boilerplate/src/humans.txt b/public/app/bower_components/html5-boilerplate/src/humans.txt new file mode 100644 index 00000000..8d2330fd --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/humans.txt @@ -0,0 +1,15 @@ +# humanstxt.org/ +# The humans responsible & technology colophon + +# TEAM + + <name> -- <role> -- <twitter> + +# THANKS + + <name> + +# TECHNOLOGY COLOPHON + + CSS3, HTML5 + Apache Server Configs, jQuery, Modernizr, Normalize.css diff --git a/public/app/bower_components/html5-boilerplate/src/img/.gitignore b/public/app/bower_components/html5-boilerplate/src/img/.gitignore new file mode 100644 index 00000000..e69de29b diff --git a/public/app/bower_components/html5-boilerplate/src/index.html b/public/app/bower_components/html5-boilerplate/src/index.html new file mode 100644 index 00000000..2fe50880 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/index.html @@ -0,0 +1,40 @@ +<!doctype html> +<html class="no-js" lang=""> + <head> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <title> + + + + + + + + + + + + + + +

Hello world! This is HTML5 Boilerplate.

+ + + + + + + + + + diff --git a/public/app/bower_components/html5-boilerplate/src/js/main.js b/public/app/bower_components/html5-boilerplate/src/js/main.js new file mode 100644 index 00000000..e69de29b diff --git a/public/app/bower_components/html5-boilerplate/src/js/plugins.js b/public/app/bower_components/html5-boilerplate/src/js/plugins.js new file mode 100644 index 00000000..f8874802 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/js/plugins.js @@ -0,0 +1,24 @@ +// Avoid `console` errors in browsers that lack a console. +(function() { + var method; + var noop = function () {}; + var methods = [ + 'assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'error', + 'exception', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log', + 'markTimeline', 'profile', 'profileEnd', 'table', 'time', 'timeEnd', + 'timeline', 'timelineEnd', 'timeStamp', 'trace', 'warn' + ]; + var length = methods.length; + var console = (window.console = window.console || {}); + + while (length--) { + method = methods[length]; + + // Only stub undefined methods. + if (!console[method]) { + console[method] = noop; + } + } +}()); + +// Place any jQuery/helper plugins in here. diff --git a/public/app/bower_components/html5-boilerplate/src/js/vendor/modernizr-2.8.3.min.js b/public/app/bower_components/html5-boilerplate/src/js/vendor/modernizr-2.8.3.min.js new file mode 100644 index 00000000..81aafb7f --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/src/js/vendor/modernizr-2.8.3.min.js @@ -0,0 +1,4 @@ +/* Modernizr 2.8.3 (Custom Build) | MIT & BSD + * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load + */ +;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d',a,""].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b)&&c(b).matches||!1;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function l(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function m(){var a=s.elements;return typeof a=="string"?a.split(" "):a}function n(a){var b=j[a[h]];return b||(b={},i++,a[h]=i,j[i]=b),b}function o(a,c,d){c||(c=b);if(k)return c.createElement(a);d||(d=n(c));var g;return d.cache[a]?g=d.cache[a].cloneNode():f.test(a)?g=(d.cache[a]=d.createElem(a)).cloneNode():g=d.createElem(a),g.canHaveChildren&&!e.test(a)&&!g.tagUrn?d.frag.appendChild(g):g}function p(a,c){a||(a=b);if(k)return a.createDocumentFragment();c=c||n(a);var d=c.frag.cloneNode(),e=0,f=m(),g=f.length;for(;e",g="hidden"in a,k=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){g=!0,k=!0}})();var s={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:c,shivCSS:d.shivCSS!==!1,supportsUnknownElements:k,shivMethods:d.shivMethods!==!1,type:"default",shivDocument:r,createElement:o,createDocumentFragment:p};a.html5=s,r(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;fgj^wgz*#KsaL{dN)HT+y> z945;bC}d*rW`HmhG>^mF!U@z zU0jzNJN`H|kCHgI@e__1b!V>cz2rNe|~K!jU7}>hz&fJTy-ISoHarB)dMH;p#;gYZTJz ziUP;y60>d2h}OZ35EM9VBr5KpN|nnD8YGA=;6XsRNf_&2iLY1&U}APjK;&F`@F69V z&1WKm5(pbJdoB<2Di;RZUAdRtzo*B^_+2WNHo$GE=OIl&ac*)nsI^zFjg5d`PD^eT zoJiBkJ+q~KFH<)b(scW0=w*;5E;y+fZGYm}J-uPz8_ZL~mU;%GinAJ^o9oS$_n^DU z*|ut977ixgU>48_@zM!U1pK(DN(^YL*c=#Qd6<9JA565s(}%jRTSm0@ihi}allXp1 z8;dQ@MX`xfs~Z5?>tLabX_#8g9ISceZ^B*J%1bzD^?bCz78NUu zPI91_b$(ETz)y0>lspJLEbu3RuBj>sphRRt;A~Bj1RWeXf&H2+(D#RUzp-wgp7cM1 zLj$hcd%SBGfg*ckP_qata%^YW9--vm)ULp~3`rb>zpeM*t4AlXM1c|jt%{%b8c2u& zh-Bf!^D%N>vN7c`+p+i)`T1DSxR~yQo;3RU`SoCKhJeSG$M{{_a1~rg_gY$L@@9@= z*qR<4?SAs4?SK{-!#g!zu+!gUGv#IyHL7W)>3%DT&WT zM)|7XIvix)7_4+R=tqBLiSRl{2Olg+X{6psqiu%eg7+?S1NTk#?AB9TzIgt)0bVu& z#xkb{dYk%%oiSrh8YS^XuMHDQpxn@+M@A4A4ou#X$+9u1rtB|W$-UFBxjeM2Pjp3?Ko7h9f1 z=S!-1pNr5Fvz;~7vje?C-X?;;e5xZv*;)s%B~dY5f!Jw!o zT@c~<>rcX|19q33zxQoET;i+Mxo-qgkpg(<7IW_WdS7JX>;jC!js#?PQj< zDDtc^%BMj=y(~Uj?v6Y=ibEziO>q|Ymm^B!|6SbGPuLkRs>^PG+pket6*^b{Jl8^H zH{BvIQ7>TA1GHR04&59g^rvNjP3Vp)nvE1$c{8N;K(1V>{uRBkvUnC#DAM~)w8dJ>;*v{dWy>0RzDuqWKHdltkfKQj= zdsGx{KS&dEM!n)uy5mmJ&Ks0|6Pu;$@XaGm(v_dKHmU+HZyfT)3^q9Xg6KM8=L># zG_mH$>VP2hZ2yOJTCI?n%*r<~KkG6A=?7ksXbcm*JnBW%U;jAD%C1V-O&(spc;(if NjOOA_X(Y4w{{!#vJbVBE literal 0 HcmV?d00001 diff --git a/public/app/bower_components/html5-boilerplate/src/tile.png b/public/app/bower_components/html5-boilerplate/src/tile.png new file mode 100644 index 0000000000000000000000000000000000000000..f820f61a0b95dd42dca6cbd06ca08ed4e1ef098a GIT binary patch literal 3482 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 literal 0 HcmV?d00001 diff --git a/public/app/bower_components/html5-boilerplate/test/file_content.js b/public/app/bower_components/html5-boilerplate/test/file_content.js new file mode 100644 index 00000000..b16f54a1 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/test/file_content.js @@ -0,0 +1,81 @@ +/* jshint mocha: true */ + +var assert = require('assert'); +var fs = require('fs'); +var path = require('path'); + +var pkg = require('./../package.json'); +var dirs = pkg['h5bp-configs'].directories; + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +function checkString(file, string, done) { + + var character = ''; + var matchFound = false; + var matchedPositions = 0; + var readStream = fs.createReadStream(file, { 'encoding': 'utf8' }); + + readStream.on('close', done); + readStream.on('error', done); + readStream.on('readable', function () { + + // Read file until the string is found + // or the whole file has been read + while (matchFound !== true && + (character = readStream.read(1)) !== null) { + + if (character === string.charAt(matchedPositions)) { + matchedPositions += 1; + } else { + matchedPositions = 0; + } + + if (matchedPositions === string.length) { + matchFound = true; + } + + } + + assert.equal(true, matchFound); + this.close(); + + }); + +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +function runTests() { + + var dir = dirs.dist; + + describe('Test if the files from the "' + dir + '" directory have the expected content', function () { + + it('".htaccess" should have the "ErrorDocument..." line uncommented', function (done) { + var string = '\n\nErrorDocument 404 /404.html\n\n'; + checkString(path.resolve(dir, '.htaccess'), string, done); + }); + + it('"index.html" should contain the correct jQuery version in the CDN URL', function (done) { + var string = 'ajax.googleapis.com/ajax/libs/jquery/' + pkg.devDependencies.jquery + '/jquery.min.js'; + checkString(path.resolve(dir, 'index.html'), string, done); + }); + + it('"index.html" should contain the correct jQuery version in the local URL', function (done) { + var string = 'js/vendor/jquery-' + pkg.devDependencies.jquery + '.min.js'; + checkString(path.resolve(dir, 'index.html'), string, done); + }); + + it('"main.css" should contain a custom banner', function (done) { + var string = '/*! HTML5 Boilerplate v' + pkg.version + + ' | ' + pkg.license.type + ' License' + + ' | ' + pkg.homepage + ' */\n\n/*\n'; + checkString(path.resolve(dir, 'css/main.css'), string, done); + }); + + }); + +} + +runTests(); diff --git a/public/app/bower_components/html5-boilerplate/test/file_existence.js b/public/app/bower_components/html5-boilerplate/test/file_existence.js new file mode 100644 index 00000000..2f8ff6d4 --- /dev/null +++ b/public/app/bower_components/html5-boilerplate/test/file_existence.js @@ -0,0 +1,131 @@ +/* jshint mocha: true */ + +var assert = require('assert'); +var fs = require('fs'); +var path = require('path'); + +var pkg = require('./../package.json'); +var dirs = pkg['h5bp-configs'].directories; + +var expectedFilesInArchiveDir = [ + pkg.name + '_v' + pkg.version + '.zip' +]; + +var expectedFilesInDistDir = [ + + '.editorconfig', + '.gitattributes', + '.gitignore', + '.htaccess', + '404.html', + 'apple-touch-icon.png', + 'browserconfig.xml', + 'crossdomain.xml', + + 'css/', // for directories, a `/` character + // should be included at the end + 'css/main.css', + 'css/normalize.css', + + 'doc/', + 'doc/TOC.md', + 'doc/css.md', + 'doc/extend.md', + 'doc/faq.md', + 'doc/html.md', + 'doc/js.md', + 'doc/misc.md', + 'doc/usage.md', + + 'favicon.ico', + 'humans.txt', + + 'img/', + 'img/.gitignore', + + 'index.html', + + 'js/', + 'js/main.js', + 'js/plugins.js', + 'js/vendor/', + 'js/vendor/jquery-' + pkg.devDependencies.jquery + '.min.js', + 'js/vendor/modernizr-2.8.3.min.js', + + 'robots.txt', + 'tile-wide.png', + 'tile.png' + +]; + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +function checkFiles(directory, expectedFiles) { + + // Get the list of files from the specified directory + var files = require('glob').sync('**/*', { + 'cwd': directory, + 'dot': true, // include hidden files + 'mark': true // add a `/` character to directory matches + }); + + // Check if all expected files are present in the + // specified directory, and are of the expected type + expectedFiles.forEach(function (file) { + + var ok = false; + var expectedFileType = (file.slice(-1) !== '/' ? 'regular file' : 'directory'); + + // If file exists + if (files.indexOf(file) !== -1) { + + // Check if the file is of the correct type + if (file.slice(-1) !== '/') { + // Check if the file is really a regular file + ok = fs.statSync(path.resolve(directory, file)).isFile(); + } else { + // Check if the file is a directory + // (Since glob adds the `/` character to directory matches, + // we can simply check if the `/` character is present) + ok = (files[files.indexOf(file)].slice(-1) === '/'); + } + + } + + it('"' + file + '" should be present and it should be a ' + expectedFileType, function () { + assert.equal(true, ok); + }); + + }); + + // List all files that should be NOT + // be present in the specified directory + (files.filter(function (file) { + return expectedFiles.indexOf(file) === -1; + })).forEach(function (file) { + it('"' + file + '" should NOT be present', function () { + assert(false); + }); + }); + +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +function runTests() { + + describe('Test if all the expected files, and only them, are present in the build directories', function () { + + describe(dirs.archive, function () { + checkFiles(dirs.archive, expectedFilesInArchiveDir); + }); + + describe(dirs.dist, function () { + checkFiles(dirs.dist, expectedFilesInDistDir); + }); + + }); + +} + +runTests(); diff --git a/public/app/bower_components/moment/.bower.json b/public/app/bower_components/moment/.bower.json index 0585cd9b..8c8b1ae4 100644 --- a/public/app/bower_components/moment/.bower.json +++ b/public/app/bower_components/moment/.bower.json @@ -1,6 +1,6 @@ { "name": "moment", - "version": "2.8.3", + "version": "2.9.0", "main": "moment.js", "ignore": [ "**/.*", @@ -18,13 +18,13 @@ "package.json" ], "homepage": "https://github.com/moment/moment", - "_release": "2.8.3", + "_release": "2.9.0", "_resolution": { "type": "version", - "tag": "2.8.3", - "commit": "ea9c75e58231e8c118d2219592f5699294b790ef" + "tag": "2.9.0", + "commit": "8b35bc74c0e88c1a8c58ccb90117a9edc9f6a479" }, "_source": "git://github.com/moment/moment.git", - "_target": ">=2.0.0 <2.9.0", + "_target": ">=2.8.0 <2.10.0", "_originalSource": "moment" } \ No newline at end of file diff --git a/public/app/bower_components/moment/CHANGELOG.md b/public/app/bower_components/moment/CHANGELOG.md index 5bc167f6..bc689ca4 100644 --- a/public/app/bower_components/moment/CHANGELOG.md +++ b/public/app/bower_components/moment/CHANGELOG.md @@ -1,6 +1,39 @@ Changelog ========= +### 2.9.0 [See full changelog](https://gist.github.com/ichernev/0c9a9b49951111a27ce7) + +languages: +* [2104](https://github.com/moment/moment/issues/2104) Frisian (fy) language file with unit test +* [2097](https://github.com/moment/moment/issues/2097) add ar-tn locale + +deprecations: +* [2074](https://github.com/moment/moment/issues/2074) Implement `moment.fn.utcOffset`, deprecate `momen.fn.zone` + +features: +* [2088](https://github.com/moment/moment/issues/2088) add moment.fn.isBetween +* [2054](https://github.com/moment/moment/issues/2054) Call updateOffset when creating moment (needed for default timezone in + moment-timezone) +* [1893](https://github.com/moment/moment/issues/1893) Add moment.isDate method +* [1825](https://github.com/moment/moment/issues/1825) Implement toJSON function on Duration +* [1809](https://github.com/moment/moment/issues/1809) Allowing moment.set() to accept a hash of units +* [2128](https://github.com/moment/moment/issues/2128) Add firstDayOfWeek, firstDayOfYear locale getters +* [2131](https://github.com/moment/moment/issues/2131) Add quarter diff support + +Some bugfixes and language improvements -- [full changelog](https://gist.github.com/ichernev/0c9a9b49951111a27ce7) + +### 2.8.4 [See full changelog](https://gist.github.com/ichernev/a4fcb0a46d74e4b9b996) + +Features: + +* [#2000](https://github.com/moment/moment/issues/2000) Add LTS localised format that includes seconds +* [#1960](https://github.com/moment/moment/issues/1960) added formatToken 'x' for unix offset in milliseconds #1938 +* [#1965](https://github.com/moment/moment/issues/1965) Support 24:00:00.000 to mean next day, at midnight. +* [#2002](https://github.com/moment/moment/issues/2002) Accept 'date' key when creating moment with object +* [#2009](https://github.com/moment/moment/issues/2009) Use native toISOString when we can + +Some bugfixes and language improvements -- [full changelog](https://gist.github.com/ichernev/a4fcb0a46d74e4b9b996) + ### 2.8.3 Bugfixes: diff --git a/public/app/bower_components/moment/Moment.js.nuspec b/public/app/bower_components/moment/Moment.js.nuspec new file mode 100644 index 00000000..96248236 --- /dev/null +++ b/public/app/bower_components/moment/Moment.js.nuspec @@ -0,0 +1,28 @@ + + + + Moment.js + 2.8.4 + Tim Wood + Cory Deppen, Iskren Chernev + A lightweight javascript date library for parsing, manipulating, and formatting dates. + + - Add LTS localised format that includes seconds + - Added formatToken 'x' for unix offset in milliseconds #1938 + - Support 24:00:00.000 to mean next day, at midnight. + - Accept 'date' key when creating moment with object + - Use native toISOString when we can + - Some bugfixes and language improvements + + http://momentjs.com/ + http://pbs.twimg.com/profile_images/482670411402858496/Xrtdc94q_normal.png + https://raw.github.com/timrwood/moment/master/LICENSE + JavaScript date time browser node.js + + + + + + + + diff --git a/public/app/bower_components/moment/README.md b/public/app/bower_components/moment/README.md index f5e02199..6c25b5e9 100644 --- a/public/app/bower_components/moment/README.md +++ b/public/app/bower_components/moment/README.md @@ -1,6 +1,6 @@ [![NPM version][npm-version-image]][npm-url] [![NPM downloads][npm-downloads-image]][npm-url] [![MIT License][license-image]][license-url] [![Build Status][travis-image]][travis-url] -A lightweight javascript date library for parsing, validating, manipulating, and formatting dates. +A lightweight JavaScript date library for parsing, validating, manipulating, and formatting dates. ## [Documentation](http://momentjs.com/docs/) @@ -20,13 +20,13 @@ There are a number of small backwards incompatible changes with version 2.0.0. [ * Duplicate `Date` passed to `moment()` instead of referencing it. -## [Changelog](CHANGELOG.md) +## [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) -## [Contributing](CONTRIBUTING.md) +## [Contributing](https://github.com/moment/moment/blob/develop/CONTRIBUTING.md) ## License -Moment.js is freely distributable under the terms of the [MIT license](LICENSE). +Moment.js is freely distributable under the terms of the [MIT license](https://github.com/moment/moment/blob/develop/LICENSE). [license-image]: http://img.shields.io/badge/license-MIT-blue.svg?style=flat [license-url]: LICENSE diff --git a/public/app/bower_components/moment/bower.json b/public/app/bower_components/moment/bower.json index 68586b9d..ab8ee66a 100644 --- a/public/app/bower_components/moment/bower.json +++ b/public/app/bower_components/moment/bower.json @@ -1,6 +1,6 @@ { "name": "moment", - "version": "2.8.3", + "version": "2.9.0", "main": "moment.js", "ignore": [ "**/.*", diff --git a/public/app/bower_components/moment/locale/af.js b/public/app/bower_components/moment/locale/af.js index 1b8c5207..9c7ad95d 100644 --- a/public/app/bower_components/moment/locale/af.js +++ b/public/app/bower_components/moment/locale/af.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('af', { @@ -17,6 +17,10 @@ weekdays : 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split('_'), weekdaysShort : 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'), weekdaysMin : 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'), + meridiemParse: /vm|nm/i, + isPM : function (input) { + return /^nm$/i.test(input); + }, meridiem : function (hours, minutes, isLower) { if (hours < 12) { return isLower ? 'vm' : 'VM'; @@ -26,6 +30,7 @@ }, longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -54,6 +59,7 @@ y : '\'n jaar', yy : '%d jaar' }, + ordinalParse: /\d{1,2}(ste|de)/, ordinal : function (number) { return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); // Thanks to Joris Röling : https://github.com/jjupiter }, diff --git a/public/app/bower_components/moment/locale/ar-ma.js b/public/app/bower_components/moment/locale/ar-ma.js index 5b2095a8..7add1722 100644 --- a/public/app/bower_components/moment/locale/ar-ma.js +++ b/public/app/bower_components/moment/locale/ar-ma.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ar-ma', { @@ -20,6 +20,7 @@ weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', diff --git a/public/app/bower_components/moment/locale/ar-sa.js b/public/app/bower_components/moment/locale/ar-sa.js index f7867eac..731f97be 100644 --- a/public/app/bower_components/moment/locale/ar-sa.js +++ b/public/app/bower_components/moment/locale/ar-sa.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -43,11 +43,16 @@ weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'HH:mm:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', LLLL : 'dddd D MMMM YYYY LT' }, + meridiemParse: /ص|م/, + isPM : function (input) { + return 'م' === input; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'ص'; @@ -79,7 +84,7 @@ yy : '%d سنوات' }, preparse: function (string) { - return string.replace(/[۰-۹]/g, function (match) { + return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { return numberMap[match]; }).replace(/،/g, ','); }, diff --git a/public/app/bower_components/moment/locale/ar-tn.js b/public/app/bower_components/moment/locale/ar-tn.js new file mode 100644 index 00000000..b1ddb4ff --- /dev/null +++ b/public/app/bower_components/moment/locale/ar-tn.js @@ -0,0 +1,55 @@ +// moment.js locale configuration +// locale : Tunisian Arabic (ar-tn) + +(function (factory) { + if (typeof define === 'function' && define.amd) { + define(['moment'], factory); // AMD + } else if (typeof exports === 'object') { + module.exports = factory(require('../moment')); // Node + } else { + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global + } +}(function (moment) { + return moment.defineLocale('ar-tn', { + months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'), + monthsShort: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'), + weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), + weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), + weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'LT:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY LT', + LLLL: 'dddd D MMMM YYYY LT' + }, + calendar: { + sameDay: '[اليوم على الساعة] LT', + nextDay: '[غدا على الساعة] LT', + nextWeek: 'dddd [على الساعة] LT', + lastDay: '[أمس على الساعة] LT', + lastWeek: 'dddd [على الساعة] LT', + sameElse: 'L' + }, + relativeTime: { + future: 'في %s', + past: 'منذ %s', + s: 'ثوان', + m: 'دقيقة', + mm: '%d دقائق', + h: 'ساعة', + hh: '%d ساعات', + d: 'يوم', + dd: '%d أيام', + M: 'شهر', + MM: '%d أشهر', + y: 'سنة', + yy: '%d سنوات' + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4 // The week that contains Jan 4th is the first week of the year. + } + }); +})); diff --git a/public/app/bower_components/moment/locale/ar.js b/public/app/bower_components/moment/locale/ar.js index 1791a6b3..828e6187 100644 --- a/public/app/bower_components/moment/locale/ar.js +++ b/public/app/bower_components/moment/locale/ar.js @@ -10,7 +10,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -76,11 +76,16 @@ weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'HH:mm:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', LLLL : 'dddd D MMMM YYYY LT' }, + meridiemParse: /ص|م/, + isPM : function (input) { + return 'م' === input; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'ص'; @@ -112,7 +117,7 @@ yy : pluralize('y') }, preparse: function (string) { - return string.replace(/[۰-۹]/g, function (match) { + return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { return numberMap[match]; }).replace(/،/g, ','); }, diff --git a/public/app/bower_components/moment/locale/az.js b/public/app/bower_components/moment/locale/az.js index e82f6e11..7624feea 100644 --- a/public/app/bower_components/moment/locale/az.js +++ b/public/app/bower_components/moment/locale/az.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var suffixes = { @@ -44,6 +44,7 @@ weekdaysMin : 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -72,6 +73,10 @@ y : 'bir il', yy : '%d il' }, + meridiemParse: /gecə|səhər|gündüz|axşam/, + isPM : function (input) { + return /^(gündüz|axşam)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'gecə'; @@ -83,6 +88,7 @@ return 'axşam'; } }, + ordinalParse: /\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/, ordinal : function (number) { if (number === 0) { // special case for zero return number + '-ıncı'; diff --git a/public/app/bower_components/moment/locale/be.js b/public/app/bower_components/moment/locale/be.js index fe3186a1..d888e21c 100644 --- a/public/app/bower_components/moment/locale/be.js +++ b/public/app/bower_components/moment/locale/be.js @@ -10,7 +10,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function plural(word, num) { @@ -71,6 +71,7 @@ weekdaysMin : 'нд_пн_ат_ср_чц_пт_сб'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY г.', LLL : 'D MMMM YYYY г., LT', @@ -113,8 +114,10 @@ y : 'год', yy : relativeTimeWithPlural }, - - + meridiemParse: /ночы|раніцы|дня|вечара/, + isPM : function (input) { + return /^(дня|вечара)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'ночы'; @@ -127,6 +130,7 @@ } }, + ordinalParse: /\d{1,2}-(і|ы|га)/, ordinal: function (number, period) { switch (period) { case 'M': diff --git a/public/app/bower_components/moment/locale/bg.js b/public/app/bower_components/moment/locale/bg.js index 41b1e3af..540e17b5 100644 --- a/public/app/bower_components/moment/locale/bg.js +++ b/public/app/bower_components/moment/locale/bg.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('bg', { @@ -19,6 +19,7 @@ weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'D.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -59,6 +60,7 @@ y : 'година', yy : '%d години' }, + ordinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/, ordinal : function (number) { var lastDigit = number % 10, last2Digits = number % 100; diff --git a/public/app/bower_components/moment/locale/bn.js b/public/app/bower_components/moment/locale/bn.js index 7e8ccfd5..5b4ab515 100644 --- a/public/app/bower_components/moment/locale/bn.js +++ b/public/app/bower_components/moment/locale/bn.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -44,6 +44,7 @@ weekdaysMin : 'রব_সম_মঙ্গ_বু_ব্রিহ_শু_শনি'.split('_'), longDateFormat : { LT : 'A h:mm সময়', + LTS : 'A h:mm:ss সময়', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -82,6 +83,10 @@ return symbolMap[match]; }); }, + meridiemParse: /রাত|শকাল|দুপুর|বিকেল|রাত/, + isPM: function (input) { + return /^(দুপুর|বিকেল|রাত)$/.test(input); + }, //Bengali is a vast language its spoken //in different forms in various parts of the world. //I have just generalized with most common one used diff --git a/public/app/bower_components/moment/locale/bo.js b/public/app/bower_components/moment/locale/bo.js index 0d44e47f..b8e7001a 100644 --- a/public/app/bower_components/moment/locale/bo.js +++ b/public/app/bower_components/moment/locale/bo.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -44,6 +44,7 @@ weekdaysMin : 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split('_'), longDateFormat : { LT : 'A h:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -82,6 +83,10 @@ return symbolMap[match]; }); }, + meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/, + isPM: function (input) { + return /^(ཉིན་གུང|དགོང་དག|མཚན་མོ)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'མཚན་མོ'; diff --git a/public/app/bower_components/moment/locale/br.js b/public/app/bower_components/moment/locale/br.js index a4f1491d..1f8dd614 100644 --- a/public/app/bower_components/moment/locale/br.js +++ b/public/app/bower_components/moment/locale/br.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function relativeTimeWithMutation(number, withoutSuffix, key) { @@ -67,6 +67,7 @@ weekdaysMin : 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'), longDateFormat : { LT : 'h[e]mm A', + LTS : 'h[e]mm:ss A', L : 'DD/MM/YYYY', LL : 'D [a viz] MMMM YYYY', LLL : 'D [a viz] MMMM YYYY LT', @@ -95,6 +96,7 @@ y : 'ur bloaz', yy : specialMutationForYears }, + ordinalParse: /\d{1,2}(añ|vet)/, ordinal : function (number) { var output = (number === 1) ? 'añ' : 'vet'; return number + output; diff --git a/public/app/bower_components/moment/locale/bs.js b/public/app/bower_components/moment/locale/bs.js index b9a58516..c59f46ba 100644 --- a/public/app/bower_components/moment/locale/bs.js +++ b/public/app/bower_components/moment/locale/bs.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function translate(number, withoutSuffix, key) { @@ -66,13 +66,14 @@ } return moment.defineLocale('bs', { - months : 'januar_februar_mart_april_maj_juni_juli_avgust_septembar_oktobar_novembar_decembar'.split('_'), - monthsShort : 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split('_'), + months : 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split('_'), + monthsShort : 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split('_'), weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'), weekdaysShort : 'ned._pon._uto._sri._čet._pet._sub.'.split('_'), weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD. MM. YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -129,6 +130,7 @@ y : 'godinu', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/ca.js b/public/app/bower_components/moment/locale/ca.js index fd41ff54..4f0d3fe0 100644 --- a/public/app/bower_components/moment/locale/ca.js +++ b/public/app/bower_components/moment/locale/ca.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ca', { @@ -19,6 +19,7 @@ weekdaysMin : 'Dg_Dl_Dt_Dc_Dj_Dv_Ds'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -57,7 +58,17 @@ y : 'un any', yy : '%d anys' }, - ordinal : '%dº', + ordinalParse: /\d{1,2}(r|n|t|è|a)/, + ordinal : function (number, period) { + var output = (number === 1) ? 'r' : + (number === 2) ? 'n' : + (number === 3) ? 'r' : + (number === 4) ? 't' : 'è'; + if (period === 'w' || period === 'W') { + output = 'a'; + } + return number + output; + }, week : { dow : 1, // Monday is the first day of the week. doy : 4 // The week that contains Jan 4th is the first week of the year. diff --git a/public/app/bower_components/moment/locale/cs.js b/public/app/bower_components/moment/locale/cs.js index 87dec552..b61658dc 100644 --- a/public/app/bower_components/moment/locale/cs.js +++ b/public/app/bower_components/moment/locale/cs.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var months = 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split('_'), @@ -87,7 +87,8 @@ weekdaysMin : 'ne_po_út_st_čt_pá_so'.split('_'), longDateFormat : { LT: 'H:mm', - L : 'DD. MM. YYYY', + LTS : 'LT:ss', + L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', LLLL : 'dddd D. MMMM YYYY LT' @@ -146,6 +147,7 @@ y : translate, yy : translate }, + ordinalParse : /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/cv.js b/public/app/bower_components/moment/locale/cv.js index 138b6c15..ea8e314d 100644 --- a/public/app/bower_components/moment/locale/cv.js +++ b/public/app/bower_components/moment/locale/cv.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('cv', { @@ -19,6 +19,7 @@ weekdaysMin : 'вр_тн_ыт_юн_кç_эр_шм'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD-MM-YYYY', LL : 'YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ]', LLL : 'YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT', @@ -50,6 +51,7 @@ y : 'пĕр çул', yy : '%d çул' }, + ordinalParse: /\d{1,2}-мĕш/, ordinal : '%d-мĕш', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/cy.js b/public/app/bower_components/moment/locale/cy.js index 65fb356b..72b2f91d 100644 --- a/public/app/bower_components/moment/locale/cy.js +++ b/public/app/bower_components/moment/locale/cy.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('cy', { @@ -20,6 +20,7 @@ // time formats are the same as en-gb longDateFormat: { LT: 'HH:mm', + LTS : 'LT:ss', L: 'DD/MM/YYYY', LL: 'D MMMM YYYY', LLL: 'D MMMM YYYY LT', @@ -48,6 +49,7 @@ y: 'blwyddyn', yy: '%d flynedd' }, + ordinalParse: /\d{1,2}(fed|ain|af|il|ydd|ed|eg)/, // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh ordinal: function (number) { var b = number, diff --git a/public/app/bower_components/moment/locale/da.js b/public/app/bower_components/moment/locale/da.js index 5e9ef96d..686ce009 100644 --- a/public/app/bower_components/moment/locale/da.js +++ b/public/app/bower_components/moment/locale/da.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('da', { @@ -19,6 +19,7 @@ weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -47,6 +48,7 @@ y : 'et år', yy : '%d år' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/de-at.js b/public/app/bower_components/moment/locale/de-at.js index ff715f89..c9826382 100644 --- a/public/app/bower_components/moment/locale/de-at.js +++ b/public/app/bower_components/moment/locale/de-at.js @@ -10,7 +10,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function processRelativeTime(number, withoutSuffix, key, isFuture) { @@ -34,19 +34,20 @@ weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), longDateFormat : { - LT: 'HH:mm [Uhr]', + LT: 'HH:mm', + LTS: 'HH:mm:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', LLLL : 'dddd, D. MMMM YYYY LT' }, calendar : { - sameDay: '[Heute um] LT', + sameDay: '[Heute um] LT [Uhr]', sameElse: 'L', - nextDay: '[Morgen um] LT', - nextWeek: 'dddd [um] LT', - lastDay: '[Gestern um] LT', - lastWeek: '[letzten] dddd [um] LT' + nextDay: '[Morgen um] LT [Uhr]', + nextWeek: 'dddd [um] LT [Uhr]', + lastDay: '[Gestern um] LT [Uhr]', + lastWeek: '[letzten] dddd [um] LT [Uhr]' }, relativeTime : { future : 'in %s', @@ -63,6 +64,7 @@ y : processRelativeTime, yy : processRelativeTime }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/de.js b/public/app/bower_components/moment/locale/de.js index 11ab9ace..f6d89a90 100644 --- a/public/app/bower_components/moment/locale/de.js +++ b/public/app/bower_components/moment/locale/de.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function processRelativeTime(number, withoutSuffix, key, isFuture) { @@ -33,19 +33,20 @@ weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), longDateFormat : { - LT: 'HH:mm [Uhr]', + LT: 'HH:mm', + LTS: 'HH:mm:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', LLLL : 'dddd, D. MMMM YYYY LT' }, calendar : { - sameDay: '[Heute um] LT', + sameDay: '[Heute um] LT [Uhr]', sameElse: 'L', - nextDay: '[Morgen um] LT', - nextWeek: 'dddd [um] LT', - lastDay: '[Gestern um] LT', - lastWeek: '[letzten] dddd [um] LT' + nextDay: '[Morgen um] LT [Uhr]', + nextWeek: 'dddd [um] LT [Uhr]', + lastDay: '[Gestern um] LT [Uhr]', + lastWeek: '[letzten] dddd [um] LT [Uhr]' }, relativeTime : { future : 'in %s', @@ -62,6 +63,7 @@ y : processRelativeTime, yy : processRelativeTime }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/el.js b/public/app/bower_components/moment/locale/el.js index eb8eb1a9..6dc769e2 100644 --- a/public/app/bower_components/moment/locale/el.js +++ b/public/app/bower_components/moment/locale/el.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('el', { @@ -38,6 +38,7 @@ meridiemParse : /[ΠΜ]\.?Μ?\.?/i, longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -71,7 +72,7 @@ relativeTime : { future : 'σε %s', past : '%s πριν', - s : 'δευτερόλεπτα', + s : 'λίγα δευτερόλεπτα', m : 'ένα λεπτό', mm : '%d λεπτά', h : 'μία ώρα', @@ -83,9 +84,8 @@ y : 'ένας χρόνος', yy : '%d χρόνια' }, - ordinal : function (number) { - return number + 'η'; - }, + ordinalParse: /\d{1,2}η/, + ordinal: '%dη', week : { dow : 1, // Monday is the first day of the week. doy : 4 // The week that contains Jan 4st is the first week of the year. diff --git a/public/app/bower_components/moment/locale/en-au.js b/public/app/bower_components/moment/locale/en-au.js index 75ad34a1..a382b0ae 100644 --- a/public/app/bower_components/moment/locale/en-au.js +++ b/public/app/bower_components/moment/locale/en-au.js @@ -7,7 +7,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('en-au', { @@ -18,6 +18,7 @@ weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -46,6 +47,7 @@ y : 'a year', yy : '%d years' }, + ordinalParse: /\d{1,2}(st|nd|rd|th)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'th' : diff --git a/public/app/bower_components/moment/locale/en-ca.js b/public/app/bower_components/moment/locale/en-ca.js index 077dc8b5..2dec8a61 100644 --- a/public/app/bower_components/moment/locale/en-ca.js +++ b/public/app/bower_components/moment/locale/en-ca.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('en-ca', { @@ -19,6 +19,7 @@ weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'YYYY-MM-DD', LL : 'D MMMM, YYYY', LLL : 'D MMMM, YYYY LT', @@ -47,6 +48,7 @@ y : 'a year', yy : '%d years' }, + ordinalParse: /\d{1,2}(st|nd|rd|th)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'th' : diff --git a/public/app/bower_components/moment/locale/en-gb.js b/public/app/bower_components/moment/locale/en-gb.js index 4491d4a1..4ea2b29e 100644 --- a/public/app/bower_components/moment/locale/en-gb.js +++ b/public/app/bower_components/moment/locale/en-gb.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('en-gb', { @@ -19,6 +19,7 @@ weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'HH:mm:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -47,6 +48,7 @@ y : 'a year', yy : '%d years' }, + ordinalParse: /\d{1,2}(st|nd|rd|th)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'th' : diff --git a/public/app/bower_components/moment/locale/eo.js b/public/app/bower_components/moment/locale/eo.js index 735ed8ea..9e3d0456 100644 --- a/public/app/bower_components/moment/locale/eo.js +++ b/public/app/bower_components/moment/locale/eo.js @@ -10,7 +10,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('eo', { @@ -21,11 +21,16 @@ weekdaysMin : 'Di_Lu_Ma_Me_Ĵa_Ve_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'D[-an de] MMMM, YYYY', LLL : 'D[-an de] MMMM, YYYY LT', LLLL : 'dddd, [la] D[-an de] MMMM, YYYY LT' }, + meridiemParse: /[ap]\.t\.m/i, + isPM: function (input) { + return input.charAt(0).toLowerCase() === 'p'; + }, meridiem : function (hours, minutes, isLower) { if (hours > 11) { return isLower ? 'p.t.m.' : 'P.T.M.'; @@ -56,6 +61,7 @@ y : 'jaro', yy : '%d jaroj' }, + ordinalParse: /\d{1,2}a/, ordinal : '%da', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/es.js b/public/app/bower_components/moment/locale/es.js index 04b83a80..b6e30b10 100644 --- a/public/app/bower_components/moment/locale/es.js +++ b/public/app/bower_components/moment/locale/es.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'), @@ -28,6 +28,7 @@ weekdaysMin : 'Do_Lu_Ma_Mi_Ju_Vi_Sá'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [de] MMMM [de] YYYY', LLL : 'D [de] MMMM [de] YYYY LT', @@ -66,6 +67,7 @@ y : 'un año', yy : '%d años' }, + ordinalParse : /\d{1,2}º/, ordinal : '%dº', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/et.js b/public/app/bower_components/moment/locale/et.js index 242ee169..7dbcee72 100644 --- a/public/app/bower_components/moment/locale/et.js +++ b/public/app/bower_components/moment/locale/et.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function processRelativeTime(number, withoutSuffix, key, isFuture) { @@ -39,6 +39,7 @@ weekdaysMin : 'P_E_T_K_N_R_L'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -67,6 +68,7 @@ y : processRelativeTime, yy : processRelativeTime }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/eu.js b/public/app/bower_components/moment/locale/eu.js index 8fb89b49..c455c466 100644 --- a/public/app/bower_components/moment/locale/eu.js +++ b/public/app/bower_components/moment/locale/eu.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('eu', { @@ -19,6 +19,7 @@ weekdaysMin : 'ig_al_ar_az_og_ol_lr'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'YYYY[ko] MMMM[ren] D[a]', LLL : 'YYYY[ko] MMMM[ren] D[a] LT', @@ -51,6 +52,7 @@ y : 'urte bat', yy : '%d urte' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/fa.js b/public/app/bower_components/moment/locale/fa.js index b1151bdd..6d765751 100644 --- a/public/app/bower_components/moment/locale/fa.js +++ b/public/app/bower_components/moment/locale/fa.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -43,11 +43,16 @@ weekdaysMin : 'ی_د_س_چ_پ_ج_ش'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', LLLL : 'dddd, D MMMM YYYY LT' }, + meridiemParse: /قبل از ظهر|بعد از ظهر/, + isPM: function (input) { + return /بعد از ظهر/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'قبل از ظهر'; @@ -88,6 +93,7 @@ return symbolMap[match]; }).replace(/,/g, '،'); }, + ordinalParse: /\d{1,2}م/, ordinal : '%dم', week : { dow : 6, // Saturday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/fi.js b/public/app/bower_components/moment/locale/fi.js index 1fedcaba..f884c3ef 100644 --- a/public/app/bower_components/moment/locale/fi.js +++ b/public/app/bower_components/moment/locale/fi.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var numbersPast = 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(' '), @@ -64,6 +64,7 @@ weekdaysMin : 'su_ma_ti_ke_to_pe_la'.split('_'), longDateFormat : { LT : 'HH.mm', + LTS : 'HH.mm.ss', L : 'DD.MM.YYYY', LL : 'Do MMMM[ta] YYYY', LLL : 'Do MMMM[ta] YYYY, [klo] LT', @@ -96,6 +97,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/fo.js b/public/app/bower_components/moment/locale/fo.js index a27f9da6..6b940e8e 100644 --- a/public/app/bower_components/moment/locale/fo.js +++ b/public/app/bower_components/moment/locale/fo.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('fo', { @@ -19,6 +19,7 @@ weekdaysMin : 'su_má_tý_mi_hó_fr_le'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -47,6 +48,7 @@ y : 'eitt ár', yy : '%d ár' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/fr-ca.js b/public/app/bower_components/moment/locale/fr-ca.js index c0f1bdc6..6cac1b84 100644 --- a/public/app/bower_components/moment/locale/fr-ca.js +++ b/public/app/bower_components/moment/locale/fr-ca.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('fr-ca', { @@ -19,6 +19,7 @@ weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -47,6 +48,7 @@ y : 'un an', yy : '%d ans' }, + ordinalParse: /\d{1,2}(er|)/, ordinal : function (number) { return number + (number === 1 ? 'er' : ''); } diff --git a/public/app/bower_components/moment/locale/fr.js b/public/app/bower_components/moment/locale/fr.js index f217ff1d..4a7cbcc5 100644 --- a/public/app/bower_components/moment/locale/fr.js +++ b/public/app/bower_components/moment/locale/fr.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('fr', { @@ -19,6 +19,7 @@ weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -47,6 +48,7 @@ y : 'un an', yy : '%d ans' }, + ordinalParse: /\d{1,2}(er|)/, ordinal : function (number) { return number + (number === 1 ? 'er' : ''); }, diff --git a/public/app/bower_components/moment/locale/fy.js b/public/app/bower_components/moment/locale/fy.js new file mode 100644 index 00000000..f86c249a --- /dev/null +++ b/public/app/bower_components/moment/locale/fy.js @@ -0,0 +1,69 @@ +// moment.js locale configuration +// locale : frisian (fy) +// author : Robin van der Vliet : https://github.com/robin0van0der0v + +(function (factory) { + if (typeof define === 'function' && define.amd) { + define(['moment'], factory); // AMD + } else if (typeof exports === 'object') { + module.exports = factory(require('../moment')); // Node + } else { + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global + } +}(function (moment) { + var monthsShortWithDots = 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'), + monthsShortWithoutDots = 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'); + + return moment.defineLocale('fy', { + months : 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split('_'), + monthsShort : function (m, format) { + if (/-MMM-/.test(format)) { + return monthsShortWithoutDots[m.month()]; + } else { + return monthsShortWithDots[m.month()]; + } + }, + weekdays : 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split('_'), + weekdaysShort : 'si._mo._ti._wo._to._fr._so.'.split('_'), + weekdaysMin : 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'), + longDateFormat : { + LT : 'HH:mm', + LTS : 'LT:ss', + L : 'DD-MM-YYYY', + LL : 'D MMMM YYYY', + LLL : 'D MMMM YYYY LT', + LLLL : 'dddd D MMMM YYYY LT' + }, + calendar : { + sameDay: '[hjoed om] LT', + nextDay: '[moarn om] LT', + nextWeek: 'dddd [om] LT', + lastDay: '[juster om] LT', + lastWeek: '[ôfrûne] dddd [om] LT', + sameElse: 'L' + }, + relativeTime : { + future : 'oer %s', + past : '%s lyn', + s : 'in pear sekonden', + m : 'ien minút', + mm : '%d minuten', + h : 'ien oere', + hh : '%d oeren', + d : 'ien dei', + dd : '%d dagen', + M : 'ien moanne', + MM : '%d moannen', + y : 'ien jier', + yy : '%d jierren' + }, + ordinalParse: /\d{1,2}(ste|de)/, + ordinal : function (number) { + return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); + }, + week : { + dow : 1, // Monday is the first day of the week. + doy : 4 // The week that contains Jan 4th is the first week of the year. + } + }); +})); diff --git a/public/app/bower_components/moment/locale/gl.js b/public/app/bower_components/moment/locale/gl.js index ac638629..5ff9e3fe 100644 --- a/public/app/bower_components/moment/locale/gl.js +++ b/public/app/bower_components/moment/locale/gl.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('gl', { @@ -19,6 +19,7 @@ weekdaysMin : 'Do_Lu_Ma_Mé_Xo_Ve_Sá'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -62,6 +63,7 @@ y : 'un ano', yy : '%d anos' }, + ordinalParse : /\d{1,2}º/, ordinal : '%dº', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/he.js b/public/app/bower_components/moment/locale/he.js index 06f954f4..d2f4b133 100644 --- a/public/app/bower_components/moment/locale/he.js +++ b/public/app/bower_components/moment/locale/he.js @@ -10,7 +10,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('he', { @@ -21,6 +21,7 @@ weekdaysMin : 'א_ב_ג_ד_ה_ו_ש'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [ב]MMMM YYYY', LLL : 'D [ב]MMMM YYYY LT', @@ -69,6 +70,8 @@ yy : function (number) { if (number === 2) { return 'שנתיים'; + } else if (number % 10 === 0 && number !== 10) { + return number + ' שנה'; } return number + ' שנים'; } diff --git a/public/app/bower_components/moment/locale/hi.js b/public/app/bower_components/moment/locale/hi.js index 4e64560a..173c4ee0 100644 --- a/public/app/bower_components/moment/locale/hi.js +++ b/public/app/bower_components/moment/locale/hi.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -44,6 +44,7 @@ weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'), longDateFormat : { LT : 'A h:mm बजे', + LTS : 'A h:mm:ss बजे', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -84,6 +85,21 @@ }, // Hindi notation for meridiems are quite fuzzy in practice. While there exists // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi. + meridiemParse: /रात|सुबह|दोपहर|शाम/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'रात') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'सुबह') { + return hour; + } else if (meridiem === 'दोपहर') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'शाम') { + return hour + 12; + } + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'रात'; diff --git a/public/app/bower_components/moment/locale/hr.js b/public/app/bower_components/moment/locale/hr.js index 9e3f6fa3..65264dc2 100644 --- a/public/app/bower_components/moment/locale/hr.js +++ b/public/app/bower_components/moment/locale/hr.js @@ -10,7 +10,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function translate(number, withoutSuffix, key) { @@ -74,6 +74,7 @@ weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD. MM. YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -130,6 +131,7 @@ y : 'godinu', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/hu.js b/public/app/bower_components/moment/locale/hu.js index 73fdb83f..de8cae9c 100644 --- a/public/app/bower_components/moment/locale/hu.js +++ b/public/app/bower_components/moment/locale/hu.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var weekEndings = 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' '); @@ -57,11 +57,16 @@ weekdaysMin : 'v_h_k_sze_cs_p_szo'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'YYYY.MM.DD.', LL : 'YYYY. MMMM D.', LLL : 'YYYY. MMMM D., LT', LLLL : 'YYYY. MMMM D., dddd LT' }, + meridiemParse: /de|du/i, + isPM: function (input) { + return input.charAt(1).toLowerCase() === 'u'; + }, meridiem : function (hours, minutes, isLower) { if (hours < 12) { return isLower === true ? 'de' : 'DE'; @@ -96,6 +101,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/hy-am.js b/public/app/bower_components/moment/locale/hy-am.js index affcd7e8..6e2de8ba 100644 --- a/public/app/bower_components/moment/locale/hy-am.js +++ b/public/app/bower_components/moment/locale/hy-am.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function monthsCaseReplace(m, format) { @@ -44,6 +44,7 @@ weekdaysMin : 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY թ.', LLL : 'D MMMM YYYY թ., LT', @@ -77,6 +78,10 @@ yy : '%d տարի' }, + meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/, + isPM: function (input) { + return /^(ցերեկվա|երեկոյան)$/.test(input); + }, meridiem : function (hour) { if (hour < 4) { return 'գիշերվա'; @@ -89,6 +94,7 @@ } }, + ordinalParse: /\d{1,2}|\d{1,2}-(ին|րդ)/, ordinal: function (number, period) { switch (period) { case 'DDD': diff --git a/public/app/bower_components/moment/locale/id.js b/public/app/bower_components/moment/locale/id.js index 143426aa..fe048497 100644 --- a/public/app/bower_components/moment/locale/id.js +++ b/public/app/bower_components/moment/locale/id.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('id', { @@ -20,11 +20,25 @@ weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'), longDateFormat : { LT : 'HH.mm', + LTS : 'LT.ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY [pukul] LT', LLLL : 'dddd, D MMMM YYYY [pukul] LT' }, + meridiemParse: /pagi|siang|sore|malam/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'pagi') { + return hour; + } else if (meridiem === 'siang') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'sore' || meridiem === 'malam') { + return hour + 12; + } + }, meridiem : function (hours, minutes, isLower) { if (hours < 11) { return 'pagi'; diff --git a/public/app/bower_components/moment/locale/is.js b/public/app/bower_components/moment/locale/is.js index 479f82d9..21888aa2 100644 --- a/public/app/bower_components/moment/locale/is.js +++ b/public/app/bower_components/moment/locale/is.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function plural(n) { @@ -87,6 +87,7 @@ weekdaysMin : 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY [kl.] LT', @@ -115,6 +116,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/it.js b/public/app/bower_components/moment/locale/it.js index 66953909..9d14714f 100644 --- a/public/app/bower_components/moment/locale/it.js +++ b/public/app/bower_components/moment/locale/it.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('it', { @@ -20,6 +20,7 @@ weekdaysMin : 'D_L_Ma_Me_G_V_S'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -30,7 +31,14 @@ nextDay: '[Domani alle] LT', nextWeek: 'dddd [alle] LT', lastDay: '[Ieri alle] LT', - lastWeek: '[lo scorso] dddd [alle] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + return '[la scorsa] dddd [alle] LT'; + default: + return '[lo scorso] dddd [alle] LT'; + } + }, sameElse: 'L' }, relativeTime : { @@ -50,6 +58,7 @@ y : 'un anno', yy : '%d anni' }, + ordinalParse : /\d{1,2}º/, ordinal: '%dº', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/ja.js b/public/app/bower_components/moment/locale/ja.js index f14fa4e6..1feb2020 100644 --- a/public/app/bower_components/moment/locale/ja.js +++ b/public/app/bower_components/moment/locale/ja.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ja', { @@ -19,11 +19,16 @@ weekdaysMin : '日_月_火_水_木_金_土'.split('_'), longDateFormat : { LT : 'Ah時m分', + LTS : 'LTs秒', L : 'YYYY/MM/DD', LL : 'YYYY年M月D日', LLL : 'YYYY年M月D日LT', LLLL : 'YYYY年M月D日LT dddd' }, + meridiemParse: /午前|午後/i, + isPM : function (input) { + return input === '午後'; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return '午前'; diff --git a/public/app/bower_components/moment/locale/ka.js b/public/app/bower_components/moment/locale/ka.js index 73eb9c75..b56e18cb 100644 --- a/public/app/bower_components/moment/locale/ka.js +++ b/public/app/bower_components/moment/locale/ka.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function monthsCaseReplace(m, format) { @@ -45,6 +45,7 @@ weekdaysMin : 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'), longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -84,6 +85,7 @@ y : 'წელი', yy : '%d წელი' }, + ordinalParse: /0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/, ordinal : function (number) { if (number === 0) { return number; diff --git a/public/app/bower_components/moment/locale/km.js b/public/app/bower_components/moment/locale/km.js index 9ba4888b..8d7b9b85 100644 --- a/public/app/bower_components/moment/locale/km.js +++ b/public/app/bower_components/moment/locale/km.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('km', { @@ -19,6 +19,7 @@ weekdaysMin: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'), longDateFormat: { LT: 'HH:mm', + LTS : 'LT:ss', L: 'DD/MM/YYYY', LL: 'D MMMM YYYY', LLL: 'D MMMM YYYY LT', diff --git a/public/app/bower_components/moment/locale/ko.js b/public/app/bower_components/moment/locale/ko.js index 57017f5e..8f9396f9 100644 --- a/public/app/bower_components/moment/locale/ko.js +++ b/public/app/bower_components/moment/locale/ko.js @@ -11,7 +11,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ko', { @@ -22,14 +22,12 @@ weekdaysMin : '일_월_화_수_목_금_토'.split('_'), longDateFormat : { LT : 'A h시 m분', + LTS : 'A h시 m분 s초', L : 'YYYY.MM.DD', LL : 'YYYY년 MMMM D일', LLL : 'YYYY년 MMMM D일 LT', LLLL : 'YYYY년 MMMM D일 dddd LT' }, - meridiem : function (hour, minute, isUpper) { - return hour < 12 ? '오전' : '오후'; - }, calendar : { sameDay : '오늘 LT', nextDay : '내일 LT', @@ -54,10 +52,14 @@ y : '일년', yy : '%d년' }, + ordinalParse : /\d{1,2}일/, ordinal : '%d일', - meridiemParse : /(오전|오후)/, + meridiemParse : /오전|오후/, isPM : function (token) { return token === '오후'; + }, + meridiem : function (hour, minute, isUpper) { + return hour < 12 ? '오전' : '오후'; } }); })); diff --git a/public/app/bower_components/moment/locale/lb.js b/public/app/bower_components/moment/locale/lb.js index 14fab973..2e84dab3 100644 --- a/public/app/bower_components/moment/locale/lb.js +++ b/public/app/bower_components/moment/locale/lb.js @@ -12,7 +12,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function processRelativeTime(number, withoutSuffix, key, isFuture) { @@ -91,6 +91,7 @@ weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'), longDateFormat: { LT: 'H:mm [Auer]', + LTS: 'H:mm:ss [Auer]', L: 'DD.MM.YYYY', LL: 'D. MMMM YYYY', LLL: 'D. MMMM YYYY LT', @@ -128,6 +129,7 @@ y : processRelativeTime, yy : '%d Joer' }, + ordinalParse: /\d{1,2}\./, ordinal: '%d.', week: { dow: 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/lt.js b/public/app/bower_components/moment/locale/lt.js index 013f8f1e..2d87e04c 100644 --- a/public/app/bower_components/moment/locale/lt.js +++ b/public/app/bower_components/moment/locale/lt.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var units = { @@ -75,6 +75,7 @@ weekdaysMin : 'S_P_A_T_K_Pn_Š'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'YYYY [m.] MMMM D [d.]', LLL : 'YYYY [m.] MMMM D [d.], LT [val.]', @@ -107,6 +108,7 @@ y : translateSingular, yy : translate }, + ordinalParse: /\d{1,2}-oji/, ordinal : function (number) { return number + '-oji'; }, diff --git a/public/app/bower_components/moment/locale/lv.js b/public/app/bower_components/moment/locale/lv.js index 7e1892e3..47a0708c 100644 --- a/public/app/bower_components/moment/locale/lv.js +++ b/public/app/bower_components/moment/locale/lv.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var units = { @@ -40,6 +40,7 @@ weekdaysMin : 'Sv_P_O_T_C_Pk_S'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'YYYY. [gada] D. MMMM', LLL : 'YYYY. [gada] D. MMMM, LT', @@ -68,6 +69,7 @@ y : 'gadu', yy : relativeTimeWithPlural }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/mk.js b/public/app/bower_components/moment/locale/mk.js index 94c7fc1a..de366319 100644 --- a/public/app/bower_components/moment/locale/mk.js +++ b/public/app/bower_components/moment/locale/mk.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('mk', { @@ -19,6 +19,7 @@ weekdaysMin : 'нe_пo_вт_ср_че_пе_сa'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'D.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -59,6 +60,7 @@ y : 'година', yy : '%d години' }, + ordinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/, ordinal : function (number) { var lastDigit = number % 10, last2Digits = number % 100; diff --git a/public/app/bower_components/moment/locale/ml.js b/public/app/bower_components/moment/locale/ml.js index ea4d9490..eb877bb1 100644 --- a/public/app/bower_components/moment/locale/ml.js +++ b/public/app/bower_components/moment/locale/ml.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ml', { @@ -19,6 +19,7 @@ weekdaysMin : 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'), longDateFormat : { LT : 'A h:mm -നു', + LTS : 'A h:mm:ss -നു', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -47,6 +48,10 @@ y : 'ഒരു വർഷം', yy : '%d വർഷം' }, + meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i, + isPM : function (input) { + return /^(ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'രാത്രി'; diff --git a/public/app/bower_components/moment/locale/mr.js b/public/app/bower_components/moment/locale/mr.js index 141eaf86..93f0eea1 100644 --- a/public/app/bower_components/moment/locale/mr.js +++ b/public/app/bower_components/moment/locale/mr.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -44,6 +44,7 @@ weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'), longDateFormat : { LT : 'A h:mm वाजता', + LTS : 'A h:mm:ss वाजता', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -82,6 +83,21 @@ return symbolMap[match]; }); }, + meridiemParse: /रात्री|सकाळी|दुपारी|सायंकाळी/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'रात्री') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'सकाळी') { + return hour; + } else if (meridiem === 'दुपारी') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'सायंकाळी') { + return hour + 12; + } + }, meridiem: function (hour, minute, isLower) { if (hour < 4) { diff --git a/public/app/bower_components/moment/locale/ms-my.js b/public/app/bower_components/moment/locale/ms-my.js index 7efcbaaa..56d5e919 100644 --- a/public/app/bower_components/moment/locale/ms-my.js +++ b/public/app/bower_components/moment/locale/ms-my.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ms-my', { @@ -19,11 +19,25 @@ weekdaysMin : 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'), longDateFormat : { LT : 'HH.mm', + LTS : 'LT.ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY [pukul] LT', LLLL : 'dddd, D MMMM YYYY [pukul] LT' }, + meridiemParse: /pagi|tengahari|petang|malam/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'pagi') { + return hour; + } else if (meridiem === 'tengahari') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'petang' || meridiem === 'malam') { + return hour + 12; + } + }, meridiem : function (hours, minutes, isLower) { if (hours < 11) { return 'pagi'; diff --git a/public/app/bower_components/moment/locale/my.js b/public/app/bower_components/moment/locale/my.js index 138d1014..31f5c9ea 100644 --- a/public/app/bower_components/moment/locale/my.js +++ b/public/app/bower_components/moment/locale/my.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -42,6 +42,7 @@ weekdaysMin: 'နွေ_လာ_င်္ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'), longDateFormat: { LT: 'HH:mm', + LTS: 'HH:mm:ss', L: 'DD/MM/YYYY', LL: 'D MMMM YYYY', LLL: 'D MMMM YYYY LT', diff --git a/public/app/bower_components/moment/locale/nb.js b/public/app/bower_components/moment/locale/nb.js index 533659d5..4764b505 100644 --- a/public/app/bower_components/moment/locale/nb.js +++ b/public/app/bower_components/moment/locale/nb.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('nb', { @@ -20,6 +20,7 @@ weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'), longDateFormat : { LT : 'H.mm', + LTS : 'LT.ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY [kl.] LT', @@ -48,6 +49,7 @@ y : 'ett år', yy : '%d år' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/ne.js b/public/app/bower_components/moment/locale/ne.js index 51629ebd..eb25ebe2 100644 --- a/public/app/bower_components/moment/locale/ne.js +++ b/public/app/bower_components/moment/locale/ne.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -44,6 +44,7 @@ weekdaysMin : 'आइ._सो._मङ्_बु._बि._शु._श.'.split('_'), longDateFormat : { LT : 'Aको h:mm बजे', + LTS : 'Aको h:mm:ss बजे', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -59,6 +60,21 @@ return symbolMap[match]; }); }, + meridiemParse: /राती|बिहान|दिउँसो|बेलुका|साँझ|राती/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'राती') { + return hour < 3 ? hour : hour + 12; + } else if (meridiem === 'बिहान') { + return hour; + } else if (meridiem === 'दिउँसो') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'बेलुका' || meridiem === 'साँझ') { + return hour + 12; + } + }, meridiem : function (hour, minute, isLower) { if (hour < 3) { return 'राती'; diff --git a/public/app/bower_components/moment/locale/nl.js b/public/app/bower_components/moment/locale/nl.js index 213beeb8..9f4fdfe7 100644 --- a/public/app/bower_components/moment/locale/nl.js +++ b/public/app/bower_components/moment/locale/nl.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var monthsShortWithDots = 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'), @@ -28,6 +28,7 @@ weekdaysMin : 'Zo_Ma_Di_Wo_Do_Vr_Za'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD-MM-YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -56,6 +57,7 @@ y : 'één jaar', yy : '%d jaar' }, + ordinalParse: /\d{1,2}(ste|de)/, ordinal : function (number) { return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); }, diff --git a/public/app/bower_components/moment/locale/nn.js b/public/app/bower_components/moment/locale/nn.js index c5b65055..d7a82380 100644 --- a/public/app/bower_components/moment/locale/nn.js +++ b/public/app/bower_components/moment/locale/nn.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('nn', { @@ -19,6 +19,7 @@ weekdaysMin : 'su_må_ty_on_to_fr_lø'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -47,6 +48,7 @@ y : 'eit år', yy : '%d år' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/pl.js b/public/app/bower_components/moment/locale/pl.js index 63a62f13..418ca817 100644 --- a/public/app/bower_components/moment/locale/pl.js +++ b/public/app/bower_components/moment/locale/pl.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var monthsNominative = 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split('_'), @@ -50,6 +50,7 @@ weekdaysMin : 'N_Pn_Wt_Śr_Cz_Pt_So'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -89,6 +90,7 @@ y : 'rok', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/pt-br.js b/public/app/bower_components/moment/locale/pt-br.js index 44eedaf0..813c2de4 100644 --- a/public/app/bower_components/moment/locale/pt-br.js +++ b/public/app/bower_components/moment/locale/pt-br.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('pt-br', { @@ -19,6 +19,7 @@ weekdaysMin : 'dom_2ª_3ª_4ª_5ª_6ª_sáb'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [de] MMMM [de] YYYY', LLL : 'D [de] MMMM [de] YYYY [às] LT', @@ -51,6 +52,7 @@ y : 'um ano', yy : '%d anos' }, + ordinalParse: /\d{1,2}º/, ordinal : '%dº' }); })); diff --git a/public/app/bower_components/moment/locale/pt.js b/public/app/bower_components/moment/locale/pt.js index aced692e..4afd5643 100644 --- a/public/app/bower_components/moment/locale/pt.js +++ b/public/app/bower_components/moment/locale/pt.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('pt', { @@ -19,6 +19,7 @@ weekdaysMin : 'dom_2ª_3ª_4ª_5ª_6ª_sáb'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [de] MMMM [de] YYYY', LLL : 'D [de] MMMM [de] YYYY LT', @@ -51,6 +52,7 @@ y : 'um ano', yy : '%d anos' }, + ordinalParse: /\d{1,2}º/, ordinal : '%dº', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/ro.js b/public/app/bower_components/moment/locale/ro.js index dc34d3c3..fcc7d07d 100644 --- a/public/app/bower_components/moment/locale/ro.js +++ b/public/app/bower_components/moment/locale/ro.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function relativeTimeWithPlural(number, withoutSuffix, key) { @@ -36,6 +36,7 @@ weekdaysMin : 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY H:mm', diff --git a/public/app/bower_components/moment/locale/ru.js b/public/app/bower_components/moment/locale/ru.js index 2f15233b..5adfa9ac 100644 --- a/public/app/bower_components/moment/locale/ru.js +++ b/public/app/bower_components/moment/locale/ru.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function plural(word, num) { @@ -48,7 +48,7 @@ function monthsShortCaseReplace(m, format) { var monthsShort = { - 'nominative': 'янв_фев_мар_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'), + 'nominative': 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'), 'accusative': 'янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек'.split('_') }, @@ -65,7 +65,7 @@ 'accusative': 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split('_') }, - nounCase = (/\[ ?[Вв] ?(?:прошлую|следующую)? ?\] ?dddd/).test(format) ? + nounCase = (/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/).test(format) ? 'accusative' : 'nominative'; @@ -81,6 +81,7 @@ monthsParse : [/^янв/i, /^фев/i, /^мар/i, /^апр/i, /^ма[й|я]/i, /^июн/i, /^июл/i, /^авг/i, /^сен/i, /^окт/i, /^ноя/i, /^дек/i], longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY г.', LLL : 'D MMMM YYYY г., LT', @@ -93,18 +94,26 @@ nextWeek: function () { return this.day() === 2 ? '[Во] dddd [в] LT' : '[В] dddd [в] LT'; }, - lastWeek: function () { - switch (this.day()) { - case 0: - return '[В прошлое] dddd [в] LT'; - case 1: - case 2: - case 4: - return '[В прошлый] dddd [в] LT'; - case 3: - case 5: - case 6: - return '[В прошлую] dddd [в] LT'; + lastWeek: function (now) { + if (now.week() !== this.week()) { + switch (this.day()) { + case 0: + return '[В прошлое] dddd [в] LT'; + case 1: + case 2: + case 4: + return '[В прошлый] dddd [в] LT'; + case 3: + case 5: + case 6: + return '[В прошлую] dddd [в] LT'; + } + } else { + if (this.day() === 2) { + return '[Во] dddd [в] LT'; + } else { + return '[В] dddd [в] LT'; + } } }, sameElse: 'L' @@ -142,6 +151,7 @@ } }, + ordinalParse: /\d{1,2}-(й|го|я)/, ordinal: function (number, period) { switch (period) { case 'M': diff --git a/public/app/bower_components/moment/locale/sk.js b/public/app/bower_components/moment/locale/sk.js index 991afebb..f9d74c5d 100644 --- a/public/app/bower_components/moment/locale/sk.js +++ b/public/app/bower_components/moment/locale/sk.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var months = 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split('_'), @@ -88,6 +88,7 @@ weekdaysMin : 'ne_po_ut_st_št_pi_so'.split('_'), longDateFormat : { LT: 'H:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -147,6 +148,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/sl.js b/public/app/bower_components/moment/locale/sl.js index 2bdbf1cd..232695fa 100644 --- a/public/app/bower_components/moment/locale/sl.js +++ b/public/app/bower_components/moment/locale/sl.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function translate(number, withoutSuffix, key) { @@ -80,6 +80,7 @@ weekdaysMin : 'ne_po_to_sr_če_pe_so'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD. MM. YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -135,6 +136,7 @@ y : 'eno leto', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/sq.js b/public/app/bower_components/moment/locale/sq.js index 6ae41787..9a5bc098 100644 --- a/public/app/bower_components/moment/locale/sq.js +++ b/public/app/bower_components/moment/locale/sq.js @@ -10,7 +10,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('sq', { @@ -19,11 +19,16 @@ weekdays : 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split('_'), weekdaysShort : 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'), weekdaysMin : 'D_H_Ma_Më_E_P_Sh'.split('_'), + meridiemParse: /PD|MD/, + isPM: function (input) { + return input.charAt(0) === 'M'; + }, meridiem : function (hours, minutes, isLower) { return hours < 12 ? 'PD' : 'MD'; }, longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -52,6 +57,7 @@ y : 'një vit', yy : '%d vite' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/sr-cyrl.js b/public/app/bower_components/moment/locale/sr-cyrl.js index 7278de6e..57619b64 100644 --- a/public/app/bower_components/moment/locale/sr-cyrl.js +++ b/public/app/bower_components/moment/locale/sr-cyrl.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var translator = { @@ -42,6 +42,7 @@ weekdaysMin: ['не', 'по', 'ут', 'ср', 'че', 'пе', 'су'], longDateFormat: { LT: 'H:mm', + LTS : 'LT:ss', L: 'DD. MM. YYYY', LL: 'D. MMMM YYYY', LLL: 'D. MMMM YYYY LT', @@ -96,6 +97,7 @@ y : 'годину', yy : translator.translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/sr.js b/public/app/bower_components/moment/locale/sr.js index d008282e..6f142843 100644 --- a/public/app/bower_components/moment/locale/sr.js +++ b/public/app/bower_components/moment/locale/sr.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var translator = { @@ -42,6 +42,7 @@ weekdaysMin: ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'], longDateFormat: { LT: 'H:mm', + LTS : 'LT:ss', L: 'DD. MM. YYYY', LL: 'D. MMMM YYYY', LLL: 'D. MMMM YYYY LT', @@ -96,6 +97,7 @@ y : 'godinu', yy : translator.translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. diff --git a/public/app/bower_components/moment/locale/sv.js b/public/app/bower_components/moment/locale/sv.js index 634b3cfe..6e149580 100644 --- a/public/app/bower_components/moment/locale/sv.js +++ b/public/app/bower_components/moment/locale/sv.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('sv', { @@ -19,6 +19,7 @@ weekdaysMin : 'sö_må_ti_on_to_fr_lö'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -47,6 +48,7 @@ y : 'ett år', yy : '%d år' }, + ordinalParse: /\d{1,2}(e|a)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'e' : diff --git a/public/app/bower_components/moment/locale/ta.js b/public/app/bower_components/moment/locale/ta.js index 53bab0d9..8c86b4bf 100644 --- a/public/app/bower_components/moment/locale/ta.js +++ b/public/app/bower_components/moment/locale/ta.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { /*var symbolMap = { @@ -44,6 +44,7 @@ weekdaysMin : 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -82,26 +83,43 @@ return symbolMap[match]; }); },*/ + ordinalParse: /\d{1,2}வது/, ordinal : function (number) { return number + 'வது'; }, // refer http://ta.wikipedia.org/s/1er1 - + meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/, meridiem : function (hour, minute, isLower) { - if (hour >= 6 && hour <= 10) { - return ' காலை'; - } else if (hour >= 10 && hour <= 14) { - return ' நண்பகல்'; - } else if (hour >= 14 && hour <= 18) { - return ' எற்பாடு'; - } else if (hour >= 18 && hour <= 20) { - return ' மாலை'; - } else if (hour >= 20 && hour <= 24) { - return ' இரவு'; - } else if (hour >= 0 && hour <= 6) { - return ' வைகறை'; + if (hour < 2) { + return ' யாமம்'; + } else if (hour < 6) { + return ' வைகறை'; // வைகறை + } else if (hour < 10) { + return ' காலை'; // காலை + } else if (hour < 14) { + return ' நண்பகல்'; // நண்பகல் + } else if (hour < 18) { + return ' எற்பாடு'; // எற்பாடு + } else if (hour < 22) { + return ' மாலை'; // மாலை + } else { + return ' யாமம்'; + } + }, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'யாமம்') { + return hour < 2 ? hour : hour + 12; + } else if (meridiem === 'வைகறை' || meridiem === 'காலை') { + return hour; + } else if (meridiem === 'நண்பகல்') { + return hour >= 10 ? hour : hour + 12; + } else { + return hour + 12; } }, week : { diff --git a/public/app/bower_components/moment/locale/th.js b/public/app/bower_components/moment/locale/th.js index fc99701d..ec9b840b 100644 --- a/public/app/bower_components/moment/locale/th.js +++ b/public/app/bower_components/moment/locale/th.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('th', { @@ -19,11 +19,16 @@ weekdaysMin : 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'), longDateFormat : { LT : 'H นาฬิกา m นาที', + LTS : 'LT s วินาที', L : 'YYYY/MM/DD', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY เวลา LT', LLLL : 'วันddddที่ D MMMM YYYY เวลา LT' }, + meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/, + isPM: function (input) { + return input === 'หลังเที่ยง'; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'ก่อนเที่ยง'; diff --git a/public/app/bower_components/moment/locale/tl-ph.js b/public/app/bower_components/moment/locale/tl-ph.js index c15cc1f0..40dbb075 100644 --- a/public/app/bower_components/moment/locale/tl-ph.js +++ b/public/app/bower_components/moment/locale/tl-ph.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('tl-ph', { @@ -19,6 +19,7 @@ weekdaysMin : 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'MM/D/YYYY', LL : 'MMMM D, YYYY', LLL : 'MMMM D, YYYY LT', @@ -47,6 +48,7 @@ y : 'isang taon', yy : '%d taon' }, + ordinalParse: /\d{1,2}/, ordinal : function (number) { return number; }, diff --git a/public/app/bower_components/moment/locale/tr.js b/public/app/bower_components/moment/locale/tr.js index 36e8fca1..cd0a7462 100644 --- a/public/app/bower_components/moment/locale/tr.js +++ b/public/app/bower_components/moment/locale/tr.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var suffixes = { @@ -46,6 +46,7 @@ weekdaysMin : 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -74,6 +75,7 @@ y : 'bir yıl', yy : '%d yıl' }, + ordinalParse: /\d{1,2}'(inci|nci|üncü|ncı|uncu|ıncı)/, ordinal : function (number) { if (number === 0) { // special case for zero return number + '\'ıncı'; diff --git a/public/app/bower_components/moment/locale/tzm-latn.js b/public/app/bower_components/moment/locale/tzm-latn.js index 31897725..34592b45 100644 --- a/public/app/bower_components/moment/locale/tzm-latn.js +++ b/public/app/bower_components/moment/locale/tzm-latn.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('tzm-latn', { @@ -19,6 +19,7 @@ weekdaysMin : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', diff --git a/public/app/bower_components/moment/locale/tzm.js b/public/app/bower_components/moment/locale/tzm.js index 0a7f3f1e..95915212 100644 --- a/public/app/bower_components/moment/locale/tzm.js +++ b/public/app/bower_components/moment/locale/tzm.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('tzm', { @@ -19,6 +19,7 @@ weekdaysMin : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS: 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', diff --git a/public/app/bower_components/moment/locale/uk.js b/public/app/bower_components/moment/locale/uk.js index bc22fff9..84e11cea 100644 --- a/public/app/bower_components/moment/locale/uk.js +++ b/public/app/bower_components/moment/locale/uk.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function plural(word, num) { @@ -79,6 +79,7 @@ weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY р.', LLL : 'D MMMM YYYY р., LT', @@ -122,6 +123,10 @@ // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason + meridiemParse: /ночі|ранку|дня|вечора/, + isPM: function (input) { + return /^(дня|вечора)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'ночі'; @@ -134,6 +139,7 @@ } }, + ordinalParse: /\d{1,2}-(й|го)/, ordinal: function (number, period) { switch (period) { case 'M': diff --git a/public/app/bower_components/moment/locale/uz.js b/public/app/bower_components/moment/locale/uz.js index 62fb89e0..139e4deb 100644 --- a/public/app/bower_components/moment/locale/uz.js +++ b/public/app/bower_components/moment/locale/uz.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('uz', { @@ -19,6 +19,7 @@ weekdaysMin : 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', diff --git a/public/app/bower_components/moment/locale/vi.js b/public/app/bower_components/moment/locale/vi.js index 20e3ffe2..15ec7dda 100644 --- a/public/app/bower_components/moment/locale/vi.js +++ b/public/app/bower_components/moment/locale/vi.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('vi', { @@ -19,6 +19,7 @@ weekdaysMin : 'CN_T2_T3_T4_T5_T6_T7'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM [năm] YYYY', LLL : 'D MMMM [năm] YYYY LT', @@ -51,6 +52,7 @@ y : 'một năm', yy : '%d năm' }, + ordinalParse: /\d{1,2}/, ordinal : function (number) { return number; }, diff --git a/public/app/bower_components/moment/locale/zh-cn.js b/public/app/bower_components/moment/locale/zh-cn.js index aff26c5e..da834165 100644 --- a/public/app/bower_components/moment/locale/zh-cn.js +++ b/public/app/bower_components/moment/locale/zh-cn.js @@ -9,7 +9,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('zh-cn', { @@ -20,6 +20,7 @@ weekdaysMin : '日_一_二_三_四_五_六'.split('_'), longDateFormat : { LT : 'Ah点mm', + LTS : 'Ah点m分s秒', L : 'YYYY-MM-DD', LL : 'YYYY年MMMD日', LLL : 'YYYY年MMMD日LT', @@ -29,6 +30,21 @@ lll : 'YYYY年MMMD日LT', llll : 'YYYY年MMMD日ddddLT' }, + meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === '凌晨' || meridiem === '早上' || + meridiem === '上午') { + return hour; + } else if (meridiem === '下午' || meridiem === '晚上') { + return hour + 12; + } else { + // '中午' + return hour >= 11 ? hour : hour + 12; + } + }, meridiem : function (hour, minute, isLower) { var hm = hour * 100 + minute; if (hm < 600) { @@ -69,6 +85,7 @@ }, sameElse : 'LL' }, + ordinalParse: /\d{1,2}(日|月|周)/, ordinal : function (number, period) { switch (period) { case 'd': diff --git a/public/app/bower_components/moment/locale/zh-tw.js b/public/app/bower_components/moment/locale/zh-tw.js index 71f99a26..75c974d1 100644 --- a/public/app/bower_components/moment/locale/zh-tw.js +++ b/public/app/bower_components/moment/locale/zh-tw.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('zh-tw', { @@ -19,6 +19,7 @@ weekdaysMin : '日_一_二_三_四_五_六'.split('_'), longDateFormat : { LT : 'Ah點mm', + LTS : 'Ah點m分s秒', L : 'YYYY年MMMD日', LL : 'YYYY年MMMD日', LLL : 'YYYY年MMMD日LT', @@ -28,6 +29,19 @@ lll : 'YYYY年MMMD日LT', llll : 'YYYY年MMMD日ddddLT' }, + meridiemParse: /早上|上午|中午|下午|晚上/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === '早上' || meridiem === '上午') { + return hour; + } else if (meridiem === '中午') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === '下午' || meridiem === '晚上') { + return hour + 12; + } + }, meridiem : function (hour, minute, isLower) { var hm = hour * 100 + minute; if (hm < 900) { @@ -50,6 +64,7 @@ lastWeek : '[上]ddddLT', sameElse : 'L' }, + ordinalParse: /\d{1,2}(日|月|週)/, ordinal : function (number, period) { switch (period) { case 'd' : diff --git a/public/app/bower_components/moment/meteor/README.md b/public/app/bower_components/moment/meteor/README.md new file mode 100644 index 00000000..9bcb50bf --- /dev/null +++ b/public/app/bower_components/moment/meteor/README.md @@ -0,0 +1,25 @@ +Packaging [Moment](momentjs.org) for [Meteor.js](http://meteor.com). + + +# Meteor + +If you're new to Meteor, here's what the excitement is all about - +[watch the first two minutes](https://www.youtube.com/watch?v=fsi0aJ9yr2o); you'll be hooked by 1:28. + +That screencast is from 2012. In the meantime, Meteor has become a mature JavaScript-everywhere web +development framework. Read more at [Why Meteor](http://www.meteorpedia.com/read/Why_Meteor). + + +# Issues + +If you encounter an issue while using this package, please CC @dandv when you file it in this repo. + + +# DONE + +* Simple test. Should be enough. + + +# TODO + +* Add other tests; however, that is overkill, and the responsibiity of Moment, not of the Meteor integration. diff --git a/public/app/bower_components/moment/meteor/export.js b/public/app/bower_components/moment/meteor/export.js new file mode 100644 index 00000000..e8870ceb --- /dev/null +++ b/public/app/bower_components/moment/meteor/export.js @@ -0,0 +1,3 @@ +// moment.js makes `moment` global on the window (or global) object, while Meteor expects a file-scoped global variable +moment = this.moment; +delete this.moment; diff --git a/public/app/bower_components/moment/meteor/test.js b/public/app/bower_components/moment/meteor/test.js new file mode 100644 index 00000000..6bf706a6 --- /dev/null +++ b/public/app/bower_components/moment/meteor/test.js @@ -0,0 +1,5 @@ +'use strict'; + +Tinytest.add('Moment.is', function (test) { + test.ok(moment.isMoment(moment()), {message: 'simple moment object'}); +}); diff --git a/public/app/bower_components/moment/min/locales.js b/public/app/bower_components/moment/min/locales.js index 5666d2e7..e93562bc 100644 --- a/public/app/bower_components/moment/min/locales.js +++ b/public/app/bower_components/moment/min/locales.js @@ -8,7 +8,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('af', { @@ -17,6 +17,10 @@ weekdays : 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split('_'), weekdaysShort : 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'), weekdaysMin : 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'), + meridiemParse: /vm|nm/i, + isPM : function (input) { + return /^nm$/i.test(input); + }, meridiem : function (hours, minutes, isLower) { if (hours < 12) { return isLower ? 'vm' : 'VM'; @@ -26,6 +30,7 @@ }, longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -54,6 +59,7 @@ y : '\'n jaar', yy : '%d jaar' }, + ordinalParse: /\d{1,2}(ste|de)/, ordinal : function (number) { return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); // Thanks to Joris Röling : https://github.com/jjupiter }, @@ -75,7 +81,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ar-ma', { @@ -86,6 +92,7 @@ weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -131,7 +138,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -166,11 +173,16 @@ weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'HH:mm:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', LLLL : 'dddd D MMMM YYYY LT' }, + meridiemParse: /ص|م/, + isPM : function (input) { + return 'م' === input; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'ص'; @@ -202,7 +214,7 @@ yy : '%d سنوات' }, preparse: function (string) { - return string.replace(/[۰-۹]/g, function (match) { + return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { return numberMap[match]; }).replace(/،/g, ','); }, @@ -218,6 +230,62 @@ }); })); +// moment.js locale configuration +// locale : Tunisian Arabic (ar-tn) + +(function (factory) { + if (typeof define === 'function' && define.amd) { + define(['moment'], factory); // AMD + } else if (typeof exports === 'object') { + module.exports = factory(require('../moment')); // Node + } else { + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global + } +}(function (moment) { + return moment.defineLocale('ar-tn', { + months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'), + monthsShort: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'), + weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), + weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), + weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'LT:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY LT', + LLLL: 'dddd D MMMM YYYY LT' + }, + calendar: { + sameDay: '[اليوم على الساعة] LT', + nextDay: '[غدا على الساعة] LT', + nextWeek: 'dddd [على الساعة] LT', + lastDay: '[أمس على الساعة] LT', + lastWeek: 'dddd [على الساعة] LT', + sameElse: 'L' + }, + relativeTime: { + future: 'في %s', + past: 'منذ %s', + s: 'ثوان', + m: 'دقيقة', + mm: '%d دقائق', + h: 'ساعة', + hh: '%d ساعات', + d: 'يوم', + dd: '%d أيام', + M: 'شهر', + MM: '%d أشهر', + y: 'سنة', + yy: '%d سنوات' + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4 // The week that contains Jan 4th is the first week of the year. + } + }); +})); + // moment.js locale configuration // Locale: Arabic (ar) // Author: Abdel Said: https://github.com/abdelsaid @@ -230,7 +298,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -296,11 +364,16 @@ weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'HH:mm:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', LLLL : 'dddd D MMMM YYYY LT' }, + meridiemParse: /ص|م/, + isPM : function (input) { + return 'م' === input; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'ص'; @@ -332,7 +405,7 @@ yy : pluralize('y') }, preparse: function (string) { - return string.replace(/[۰-۹]/g, function (match) { + return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { return numberMap[match]; }).replace(/،/g, ','); }, @@ -358,7 +431,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var suffixes = { @@ -394,6 +467,7 @@ weekdaysMin : 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -422,6 +496,10 @@ y : 'bir il', yy : '%d il' }, + meridiemParse: /gecə|səhər|gündüz|axşam/, + isPM : function (input) { + return /^(gündüz|axşam)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'gecə'; @@ -433,6 +511,7 @@ return 'axşam'; } }, + ordinalParse: /\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/, ordinal : function (number) { if (number === 0) { // special case for zero return number + '-ıncı'; @@ -462,7 +541,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function plural(word, num) { @@ -523,6 +602,7 @@ weekdaysMin : 'нд_пн_ат_ср_чц_пт_сб'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY г.', LLL : 'D MMMM YYYY г., LT', @@ -565,8 +645,10 @@ y : 'год', yy : relativeTimeWithPlural }, - - + meridiemParse: /ночы|раніцы|дня|вечара/, + isPM : function (input) { + return /^(дня|вечара)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'ночы'; @@ -579,6 +661,7 @@ } }, + ordinalParse: /\d{1,2}-(і|ы|га)/, ordinal: function (number, period) { switch (period) { case 'M': @@ -611,7 +694,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('bg', { @@ -622,6 +705,7 @@ weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'D.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -662,6 +746,7 @@ y : 'година', yy : '%d години' }, + ordinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/, ordinal : function (number) { var lastDigit = number % 10, last2Digits = number % 100; @@ -698,7 +783,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -734,6 +819,7 @@ weekdaysMin : 'রব_সম_মঙ্গ_বু_ব্রিহ_শু_শনি'.split('_'), longDateFormat : { LT : 'A h:mm সময়', + LTS : 'A h:mm:ss সময়', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -772,6 +858,10 @@ return symbolMap[match]; }); }, + meridiemParse: /রাত|শকাল|দুপুর|বিকেল|রাত/, + isPM: function (input) { + return /^(দুপুর|বিকেল|রাত)$/.test(input); + }, //Bengali is a vast language its spoken //in different forms in various parts of the world. //I have just generalized with most common one used @@ -805,7 +895,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -841,6 +931,7 @@ weekdaysMin : 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split('_'), longDateFormat : { LT : 'A h:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -879,6 +970,10 @@ return symbolMap[match]; }); }, + meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/, + isPM: function (input) { + return /^(ཉིན་གུང|དགོང་དག|མཚན་མོ)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'མཚན་མོ'; @@ -909,7 +1004,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function relativeTimeWithMutation(number, withoutSuffix, key) { @@ -968,6 +1063,7 @@ weekdaysMin : 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'), longDateFormat : { LT : 'h[e]mm A', + LTS : 'h[e]mm:ss A', L : 'DD/MM/YYYY', LL : 'D [a viz] MMMM YYYY', LLL : 'D [a viz] MMMM YYYY LT', @@ -996,6 +1092,7 @@ y : 'ur bloaz', yy : specialMutationForYears }, + ordinalParse: /\d{1,2}(añ|vet)/, ordinal : function (number) { var output = (number === 1) ? 'añ' : 'vet'; return number + output; @@ -1018,7 +1115,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function translate(number, withoutSuffix, key) { @@ -1075,13 +1172,14 @@ } return moment.defineLocale('bs', { - months : 'januar_februar_mart_april_maj_juni_juli_avgust_septembar_oktobar_novembar_decembar'.split('_'), - monthsShort : 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split('_'), + months : 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split('_'), + monthsShort : 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split('_'), weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'), weekdaysShort : 'ned._pon._uto._sri._čet._pet._sub.'.split('_'), weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD. MM. YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -1138,6 +1236,7 @@ y : 'godinu', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -1156,7 +1255,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ca', { @@ -1167,6 +1266,7 @@ weekdaysMin : 'Dg_Dl_Dt_Dc_Dj_Dv_Ds'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -1205,7 +1305,17 @@ y : 'un any', yy : '%d anys' }, - ordinal : '%dº', + ordinalParse: /\d{1,2}(r|n|t|è|a)/, + ordinal : function (number, period) { + var output = (number === 1) ? 'r' : + (number === 2) ? 'n' : + (number === 3) ? 'r' : + (number === 4) ? 't' : 'è'; + if (period === 'w' || period === 'W') { + output = 'a'; + } + return number + output; + }, week : { dow : 1, // Monday is the first day of the week. doy : 4 // The week that contains Jan 4th is the first week of the year. @@ -1223,7 +1333,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var months = 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split('_'), @@ -1302,7 +1412,8 @@ weekdaysMin : 'ne_po_út_st_čt_pá_so'.split('_'), longDateFormat : { LT: 'H:mm', - L : 'DD. MM. YYYY', + LTS : 'LT:ss', + L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', LLLL : 'dddd D. MMMM YYYY LT' @@ -1361,6 +1472,7 @@ y : translate, yy : translate }, + ordinalParse : /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -1379,7 +1491,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('cv', { @@ -1390,6 +1502,7 @@ weekdaysMin : 'вр_тн_ыт_юн_кç_эр_шм'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD-MM-YYYY', LL : 'YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ]', LLL : 'YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT', @@ -1421,6 +1534,7 @@ y : 'пĕр çул', yy : '%d çул' }, + ordinalParse: /\d{1,2}-мĕш/, ordinal : '%d-мĕш', week : { dow : 1, // Monday is the first day of the week. @@ -1439,7 +1553,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('cy', { @@ -1451,6 +1565,7 @@ // time formats are the same as en-gb longDateFormat: { LT: 'HH:mm', + LTS : 'LT:ss', L: 'DD/MM/YYYY', LL: 'D MMMM YYYY', LLL: 'D MMMM YYYY LT', @@ -1479,6 +1594,7 @@ y: 'blwyddyn', yy: '%d flynedd' }, + ordinalParse: /\d{1,2}(fed|ain|af|il|ydd|ed|eg)/, // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh ordinal: function (number) { var b = number, @@ -1517,7 +1633,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('da', { @@ -1528,6 +1644,7 @@ weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -1556,6 +1673,7 @@ y : 'et år', yy : '%d år' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -1576,7 +1694,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function processRelativeTime(number, withoutSuffix, key, isFuture) { @@ -1600,19 +1718,20 @@ weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), longDateFormat : { - LT: 'HH:mm [Uhr]', + LT: 'HH:mm', + LTS: 'HH:mm:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', LLLL : 'dddd, D. MMMM YYYY LT' }, calendar : { - sameDay: '[Heute um] LT', + sameDay: '[Heute um] LT [Uhr]', sameElse: 'L', - nextDay: '[Morgen um] LT', - nextWeek: 'dddd [um] LT', - lastDay: '[Gestern um] LT', - lastWeek: '[letzten] dddd [um] LT' + nextDay: '[Morgen um] LT [Uhr]', + nextWeek: 'dddd [um] LT [Uhr]', + lastDay: '[Gestern um] LT [Uhr]', + lastWeek: '[letzten] dddd [um] LT [Uhr]' }, relativeTime : { future : 'in %s', @@ -1629,6 +1748,7 @@ y : processRelativeTime, yy : processRelativeTime }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -1648,7 +1768,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function processRelativeTime(number, withoutSuffix, key, isFuture) { @@ -1672,19 +1792,20 @@ weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), longDateFormat : { - LT: 'HH:mm [Uhr]', + LT: 'HH:mm', + LTS: 'HH:mm:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', LLLL : 'dddd, D. MMMM YYYY LT' }, calendar : { - sameDay: '[Heute um] LT', + sameDay: '[Heute um] LT [Uhr]', sameElse: 'L', - nextDay: '[Morgen um] LT', - nextWeek: 'dddd [um] LT', - lastDay: '[Gestern um] LT', - lastWeek: '[letzten] dddd [um] LT' + nextDay: '[Morgen um] LT [Uhr]', + nextWeek: 'dddd [um] LT [Uhr]', + lastDay: '[Gestern um] LT [Uhr]', + lastWeek: '[letzten] dddd [um] LT [Uhr]' }, relativeTime : { future : 'in %s', @@ -1701,6 +1822,7 @@ y : processRelativeTime, yy : processRelativeTime }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -1719,7 +1841,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('el', { @@ -1749,6 +1871,7 @@ meridiemParse : /[ΠΜ]\.?Μ?\.?/i, longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -1782,7 +1905,7 @@ relativeTime : { future : 'σε %s', past : '%s πριν', - s : 'δευτερόλεπτα', + s : 'λίγα δευτερόλεπτα', m : 'ένα λεπτό', mm : '%d λεπτά', h : 'μία ώρα', @@ -1794,9 +1917,8 @@ y : 'ένας χρόνος', yy : '%d χρόνια' }, - ordinal : function (number) { - return number + 'η'; - }, + ordinalParse: /\d{1,2}η/, + ordinal: '%dη', week : { dow : 1, // Monday is the first day of the week. doy : 4 // The week that contains Jan 4st is the first week of the year. @@ -1813,7 +1935,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('en-au', { @@ -1824,6 +1946,7 @@ weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -1852,6 +1975,7 @@ y : 'a year', yy : '%d years' }, + ordinalParse: /\d{1,2}(st|nd|rd|th)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'th' : @@ -1877,7 +2001,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('en-ca', { @@ -1888,6 +2012,7 @@ weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'YYYY-MM-DD', LL : 'D MMMM, YYYY', LLL : 'D MMMM, YYYY LT', @@ -1916,6 +2041,7 @@ y : 'a year', yy : '%d years' }, + ordinalParse: /\d{1,2}(st|nd|rd|th)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'th' : @@ -1937,7 +2063,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('en-gb', { @@ -1948,6 +2074,7 @@ weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'HH:mm:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -1976,6 +2103,7 @@ y : 'a year', yy : '%d years' }, + ordinalParse: /\d{1,2}(st|nd|rd|th)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'th' : @@ -2003,7 +2131,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('eo', { @@ -2014,11 +2142,16 @@ weekdaysMin : 'Di_Lu_Ma_Me_Ĵa_Ve_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'D[-an de] MMMM, YYYY', LLL : 'D[-an de] MMMM, YYYY LT', LLLL : 'dddd, [la] D[-an de] MMMM, YYYY LT' }, + meridiemParse: /[ap]\.t\.m/i, + isPM: function (input) { + return input.charAt(0).toLowerCase() === 'p'; + }, meridiem : function (hours, minutes, isLower) { if (hours > 11) { return isLower ? 'p.t.m.' : 'P.T.M.'; @@ -2049,6 +2182,7 @@ y : 'jaro', yy : '%d jaroj' }, + ordinalParse: /\d{1,2}a/, ordinal : '%da', week : { dow : 1, // Monday is the first day of the week. @@ -2067,7 +2201,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'), @@ -2087,6 +2221,7 @@ weekdaysMin : 'Do_Lu_Ma_Mi_Ju_Vi_Sá'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [de] MMMM [de] YYYY', LLL : 'D [de] MMMM [de] YYYY LT', @@ -2125,6 +2260,7 @@ y : 'un año', yy : '%d años' }, + ordinalParse : /\d{1,2}º/, ordinal : '%dº', week : { dow : 1, // Monday is the first day of the week. @@ -2144,7 +2280,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function processRelativeTime(number, withoutSuffix, key, isFuture) { @@ -2174,6 +2310,7 @@ weekdaysMin : 'P_E_T_K_N_R_L'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -2202,6 +2339,7 @@ y : processRelativeTime, yy : processRelativeTime }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -2220,7 +2358,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('eu', { @@ -2231,6 +2369,7 @@ weekdaysMin : 'ig_al_ar_az_og_ol_lr'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'YYYY[ko] MMMM[ren] D[a]', LLL : 'YYYY[ko] MMMM[ren] D[a] LT', @@ -2263,6 +2402,7 @@ y : 'urte bat', yy : '%d urte' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -2281,7 +2421,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -2316,11 +2456,16 @@ weekdaysMin : 'ی_د_س_چ_پ_ج_ش'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', LLLL : 'dddd, D MMMM YYYY LT' }, + meridiemParse: /قبل از ظهر|بعد از ظهر/, + isPM: function (input) { + return /بعد از ظهر/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'قبل از ظهر'; @@ -2361,6 +2506,7 @@ return symbolMap[match]; }).replace(/,/g, '،'); }, + ordinalParse: /\d{1,2}م/, ordinal : '%dم', week : { dow : 6, // Saturday is the first day of the week. @@ -2379,7 +2525,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var numbersPast = 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(' '), @@ -2435,6 +2581,7 @@ weekdaysMin : 'su_ma_ti_ke_to_pe_la'.split('_'), longDateFormat : { LT : 'HH.mm', + LTS : 'HH.mm.ss', L : 'DD.MM.YYYY', LL : 'Do MMMM[ta] YYYY', LLL : 'Do MMMM[ta] YYYY, [klo] LT', @@ -2467,6 +2614,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -2485,7 +2633,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('fo', { @@ -2496,6 +2644,7 @@ weekdaysMin : 'su_má_tý_mi_hó_fr_le'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -2524,6 +2673,7 @@ y : 'eitt ár', yy : '%d ár' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -2542,7 +2692,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('fr-ca', { @@ -2553,6 +2703,7 @@ weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -2581,6 +2732,7 @@ y : 'un an', yy : '%d ans' }, + ordinalParse: /\d{1,2}(er|)/, ordinal : function (number) { return number + (number === 1 ? 'er' : ''); } @@ -2597,7 +2749,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('fr', { @@ -2608,6 +2760,7 @@ weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -2636,6 +2789,7 @@ y : 'un an', yy : '%d ans' }, + ordinalParse: /\d{1,2}(er|)/, ordinal : function (number) { return number + (number === 1 ? 'er' : ''); }, @@ -2646,6 +2800,76 @@ }); })); +// moment.js locale configuration +// locale : frisian (fy) +// author : Robin van der Vliet : https://github.com/robin0van0der0v + +(function (factory) { + if (typeof define === 'function' && define.amd) { + define(['moment'], factory); // AMD + } else if (typeof exports === 'object') { + module.exports = factory(require('../moment')); // Node + } else { + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global + } +}(function (moment) { + var monthsShortWithDots = 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'), + monthsShortWithoutDots = 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'); + + return moment.defineLocale('fy', { + months : 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split('_'), + monthsShort : function (m, format) { + if (/-MMM-/.test(format)) { + return monthsShortWithoutDots[m.month()]; + } else { + return monthsShortWithDots[m.month()]; + } + }, + weekdays : 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split('_'), + weekdaysShort : 'si._mo._ti._wo._to._fr._so.'.split('_'), + weekdaysMin : 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'), + longDateFormat : { + LT : 'HH:mm', + LTS : 'LT:ss', + L : 'DD-MM-YYYY', + LL : 'D MMMM YYYY', + LLL : 'D MMMM YYYY LT', + LLLL : 'dddd D MMMM YYYY LT' + }, + calendar : { + sameDay: '[hjoed om] LT', + nextDay: '[moarn om] LT', + nextWeek: 'dddd [om] LT', + lastDay: '[juster om] LT', + lastWeek: '[ôfrûne] dddd [om] LT', + sameElse: 'L' + }, + relativeTime : { + future : 'oer %s', + past : '%s lyn', + s : 'in pear sekonden', + m : 'ien minút', + mm : '%d minuten', + h : 'ien oere', + hh : '%d oeren', + d : 'ien dei', + dd : '%d dagen', + M : 'ien moanne', + MM : '%d moannen', + y : 'ien jier', + yy : '%d jierren' + }, + ordinalParse: /\d{1,2}(ste|de)/, + ordinal : function (number) { + return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); + }, + week : { + dow : 1, // Monday is the first day of the week. + doy : 4 // The week that contains Jan 4th is the first week of the year. + } + }); +})); + // moment.js locale configuration // locale : galician (gl) // author : Juan G. Hurtado : https://github.com/juanghurtado @@ -2656,7 +2880,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('gl', { @@ -2667,6 +2891,7 @@ weekdaysMin : 'Do_Lu_Ma_Mé_Xo_Ve_Sá'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -2710,6 +2935,7 @@ y : 'un ano', yy : '%d anos' }, + ordinalParse : /\d{1,2}º/, ordinal : '%dº', week : { dow : 1, // Monday is the first day of the week. @@ -2730,7 +2956,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('he', { @@ -2741,6 +2967,7 @@ weekdaysMin : 'א_ב_ג_ד_ה_ו_ש'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [ב]MMMM YYYY', LLL : 'D [ב]MMMM YYYY LT', @@ -2789,6 +3016,8 @@ yy : function (number) { if (number === 2) { return 'שנתיים'; + } else if (number % 10 === 0 && number !== 10) { + return number + ' שנה'; } return number + ' שנים'; } @@ -2806,7 +3035,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -2842,6 +3071,7 @@ weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'), longDateFormat : { LT : 'A h:mm बजे', + LTS : 'A h:mm:ss बजे', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -2882,6 +3112,21 @@ }, // Hindi notation for meridiems are quite fuzzy in practice. While there exists // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi. + meridiemParse: /रात|सुबह|दोपहर|शाम/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'रात') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'सुबह') { + return hour; + } else if (meridiem === 'दोपहर') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'शाम') { + return hour + 12; + } + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'रात'; @@ -2914,7 +3159,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function translate(number, withoutSuffix, key) { @@ -2978,6 +3223,7 @@ weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD. MM. YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -3034,6 +3280,7 @@ y : 'godinu', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -3052,7 +3299,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var weekEndings = 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' '); @@ -3101,11 +3348,16 @@ weekdaysMin : 'v_h_k_sze_cs_p_szo'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'YYYY.MM.DD.', LL : 'YYYY. MMMM D.', LLL : 'YYYY. MMMM D., LT', LLLL : 'YYYY. MMMM D., dddd LT' }, + meridiemParse: /de|du/i, + isPM: function (input) { + return input.charAt(1).toLowerCase() === 'u'; + }, meridiem : function (hours, minutes, isLower) { if (hours < 12) { return isLower === true ? 'de' : 'DE'; @@ -3140,6 +3392,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -3158,7 +3411,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function monthsCaseReplace(m, format) { @@ -3194,6 +3447,7 @@ weekdaysMin : 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY թ.', LLL : 'D MMMM YYYY թ., LT', @@ -3227,6 +3481,10 @@ yy : '%d տարի' }, + meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/, + isPM: function (input) { + return /^(ցերեկվա|երեկոյան)$/.test(input); + }, meridiem : function (hour) { if (hour < 4) { return 'գիշերվա'; @@ -3239,6 +3497,7 @@ } }, + ordinalParse: /\d{1,2}|\d{1,2}-(ին|րդ)/, ordinal: function (number, period) { switch (period) { case 'DDD': @@ -3272,7 +3531,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('id', { @@ -3283,11 +3542,25 @@ weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'), longDateFormat : { LT : 'HH.mm', + LTS : 'LT.ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY [pukul] LT', LLLL : 'dddd, D MMMM YYYY [pukul] LT' }, + meridiemParse: /pagi|siang|sore|malam/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'pagi') { + return hour; + } else if (meridiem === 'siang') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'sore' || meridiem === 'malam') { + return hour + 12; + } + }, meridiem : function (hours, minutes, isLower) { if (hours < 11) { return 'pagi'; @@ -3339,7 +3612,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function plural(n) { @@ -3418,6 +3691,7 @@ weekdaysMin : 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY [kl.] LT', @@ -3446,6 +3720,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -3465,7 +3740,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('it', { @@ -3476,6 +3751,7 @@ weekdaysMin : 'D_L_Ma_Me_G_V_S'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -3486,7 +3762,14 @@ nextDay: '[Domani alle] LT', nextWeek: 'dddd [alle] LT', lastDay: '[Ieri alle] LT', - lastWeek: '[lo scorso] dddd [alle] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + return '[la scorsa] dddd [alle] LT'; + default: + return '[lo scorso] dddd [alle] LT'; + } + }, sameElse: 'L' }, relativeTime : { @@ -3506,6 +3789,7 @@ y : 'un anno', yy : '%d anni' }, + ordinalParse : /\d{1,2}º/, ordinal: '%dº', week : { dow : 1, // Monday is the first day of the week. @@ -3524,7 +3808,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ja', { @@ -3535,11 +3819,16 @@ weekdaysMin : '日_月_火_水_木_金_土'.split('_'), longDateFormat : { LT : 'Ah時m分', + LTS : 'LTs秒', L : 'YYYY/MM/DD', LL : 'YYYY年M月D日', LLL : 'YYYY年M月D日LT', LLLL : 'YYYY年M月D日LT dddd' }, + meridiemParse: /午前|午後/i, + isPM : function (input) { + return input === '午後'; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return '午前'; @@ -3583,7 +3872,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function monthsCaseReplace(m, format) { @@ -3620,6 +3909,7 @@ weekdaysMin : 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'), longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -3659,6 +3949,7 @@ y : 'წელი', yy : '%d წელი' }, + ordinalParse: /0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/, ordinal : function (number) { if (number === 0) { return number; @@ -3691,7 +3982,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('km', { @@ -3702,6 +3993,7 @@ weekdaysMin: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'), longDateFormat: { LT: 'HH:mm', + LTS : 'LT:ss', L: 'DD/MM/YYYY', LL: 'D MMMM YYYY', LLL: 'D MMMM YYYY LT', @@ -3750,7 +4042,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ko', { @@ -3761,14 +4053,12 @@ weekdaysMin : '일_월_화_수_목_금_토'.split('_'), longDateFormat : { LT : 'A h시 m분', + LTS : 'A h시 m분 s초', L : 'YYYY.MM.DD', LL : 'YYYY년 MMMM D일', LLL : 'YYYY년 MMMM D일 LT', LLLL : 'YYYY년 MMMM D일 dddd LT' }, - meridiem : function (hour, minute, isUpper) { - return hour < 12 ? '오전' : '오후'; - }, calendar : { sameDay : '오늘 LT', nextDay : '내일 LT', @@ -3793,10 +4083,14 @@ y : '일년', yy : '%d년' }, + ordinalParse : /\d{1,2}일/, ordinal : '%d일', - meridiemParse : /(오전|오후)/, + meridiemParse : /오전|오후/, isPM : function (token) { return token === '오후'; + }, + meridiem : function (hour, minute, isUpper) { + return hour < 12 ? '오전' : '오후'; } }); })); @@ -3815,7 +4109,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function processRelativeTime(number, withoutSuffix, key, isFuture) { @@ -3894,6 +4188,7 @@ weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'), longDateFormat: { LT: 'H:mm [Auer]', + LTS: 'H:mm:ss [Auer]', L: 'DD.MM.YYYY', LL: 'D. MMMM YYYY', LLL: 'D. MMMM YYYY LT', @@ -3931,6 +4226,7 @@ y : processRelativeTime, yy : '%d Joer' }, + ordinalParse: /\d{1,2}\./, ordinal: '%d.', week: { dow: 1, // Monday is the first day of the week. @@ -3949,7 +4245,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var units = { @@ -4016,6 +4312,7 @@ weekdaysMin : 'S_P_A_T_K_Pn_Š'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'YYYY [m.] MMMM D [d.]', LLL : 'YYYY [m.] MMMM D [d.], LT [val.]', @@ -4048,6 +4345,7 @@ y : translateSingular, yy : translate }, + ordinalParse: /\d{1,2}-oji/, ordinal : function (number) { return number + '-oji'; }, @@ -4068,7 +4366,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var units = { @@ -4100,6 +4398,7 @@ weekdaysMin : 'Sv_P_O_T_C_Pk_S'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'YYYY. [gada] D. MMMM', LLL : 'YYYY. [gada] D. MMMM, LT', @@ -4128,6 +4427,7 @@ y : 'gadu', yy : relativeTimeWithPlural }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -4146,7 +4446,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('mk', { @@ -4157,6 +4457,7 @@ weekdaysMin : 'нe_пo_вт_ср_че_пе_сa'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'D.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -4197,6 +4498,7 @@ y : 'година', yy : '%d години' }, + ordinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/, ordinal : function (number) { var lastDigit = number % 10, last2Digits = number % 100; @@ -4233,7 +4535,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ml', { @@ -4244,6 +4546,7 @@ weekdaysMin : 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'), longDateFormat : { LT : 'A h:mm -നു', + LTS : 'A h:mm:ss -നു', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -4272,6 +4575,10 @@ y : 'ഒരു വർഷം', yy : '%d വർഷം' }, + meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i, + isPM : function (input) { + return /^(ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'രാത്രി'; @@ -4298,7 +4605,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -4334,6 +4641,7 @@ weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'), longDateFormat : { LT : 'A h:mm वाजता', + LTS : 'A h:mm:ss वाजता', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -4372,6 +4680,21 @@ return symbolMap[match]; }); }, + meridiemParse: /रात्री|सकाळी|दुपारी|सायंकाळी/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'रात्री') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'सकाळी') { + return hour; + } else if (meridiem === 'दुपारी') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'सायंकाळी') { + return hour + 12; + } + }, meridiem: function (hour, minute, isLower) { if (hour < 4) { @@ -4403,7 +4726,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('ms-my', { @@ -4414,11 +4737,25 @@ weekdaysMin : 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'), longDateFormat : { LT : 'HH.mm', + LTS : 'LT.ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY [pukul] LT', LLLL : 'dddd, D MMMM YYYY [pukul] LT' }, + meridiemParse: /pagi|tengahari|petang|malam/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'pagi') { + return hour; + } else if (meridiem === 'tengahari') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'petang' || meridiem === 'malam') { + return hour + 12; + } + }, meridiem : function (hours, minutes, isLower) { if (hours < 11) { return 'pagi'; @@ -4470,7 +4807,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -4504,6 +4841,7 @@ weekdaysMin: 'နွေ_လာ_င်္ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'), longDateFormat: { LT: 'HH:mm', + LTS: 'HH:mm:ss', L: 'DD/MM/YYYY', LL: 'D MMMM YYYY', LLL: 'D MMMM YYYY LT', @@ -4560,7 +4898,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('nb', { @@ -4571,6 +4909,7 @@ weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'), longDateFormat : { LT : 'H.mm', + LTS : 'LT.ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY [kl.] LT', @@ -4599,6 +4938,7 @@ y : 'ett år', yy : '%d år' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -4617,7 +4957,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var symbolMap = { @@ -4653,6 +4993,7 @@ weekdaysMin : 'आइ._सो._मङ्_बु._बि._शु._श.'.split('_'), longDateFormat : { LT : 'Aको h:mm बजे', + LTS : 'Aको h:mm:ss बजे', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -4668,6 +5009,21 @@ return symbolMap[match]; }); }, + meridiemParse: /राती|बिहान|दिउँसो|बेलुका|साँझ|राती/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'राती') { + return hour < 3 ? hour : hour + 12; + } else if (meridiem === 'बिहान') { + return hour; + } else if (meridiem === 'दिउँसो') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'बेलुका' || meridiem === 'साँझ') { + return hour + 12; + } + }, meridiem : function (hour, minute, isLower) { if (hour < 3) { return 'राती'; @@ -4723,7 +5079,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var monthsShortWithDots = 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'), @@ -4743,6 +5099,7 @@ weekdaysMin : 'Zo_Ma_Di_Wo_Do_Vr_Za'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD-MM-YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -4771,6 +5128,7 @@ y : 'één jaar', yy : '%d jaar' }, + ordinalParse: /\d{1,2}(ste|de)/, ordinal : function (number) { return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); }, @@ -4791,7 +5149,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('nn', { @@ -4802,6 +5160,7 @@ weekdaysMin : 'su_må_ty_on_to_fr_lø'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -4830,6 +5189,7 @@ y : 'eit år', yy : '%d år' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -4848,7 +5208,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var monthsNominative = 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split('_'), @@ -4890,6 +5250,7 @@ weekdaysMin : 'N_Pn_Wt_Śr_Cz_Pt_So'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -4929,6 +5290,7 @@ y : 'rok', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -4947,7 +5309,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('pt-br', { @@ -4958,6 +5320,7 @@ weekdaysMin : 'dom_2ª_3ª_4ª_5ª_6ª_sáb'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [de] MMMM [de] YYYY', LLL : 'D [de] MMMM [de] YYYY [às] LT', @@ -4990,6 +5353,7 @@ y : 'um ano', yy : '%d anos' }, + ordinalParse: /\d{1,2}º/, ordinal : '%dº' }); })); @@ -5004,7 +5368,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('pt', { @@ -5015,6 +5379,7 @@ weekdaysMin : 'dom_2ª_3ª_4ª_5ª_6ª_sáb'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [de] MMMM [de] YYYY', LLL : 'D [de] MMMM [de] YYYY LT', @@ -5047,6 +5412,7 @@ y : 'um ano', yy : '%d anos' }, + ordinalParse: /\d{1,2}º/, ordinal : '%dº', week : { dow : 1, // Monday is the first day of the week. @@ -5066,7 +5432,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function relativeTimeWithPlural(number, withoutSuffix, key) { @@ -5093,6 +5459,7 @@ weekdaysMin : 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY H:mm', @@ -5139,7 +5506,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function plural(word, num) { @@ -5178,7 +5545,7 @@ function monthsShortCaseReplace(m, format) { var monthsShort = { - 'nominative': 'янв_фев_мар_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'), + 'nominative': 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'), 'accusative': 'янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек'.split('_') }, @@ -5195,7 +5562,7 @@ 'accusative': 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split('_') }, - nounCase = (/\[ ?[Вв] ?(?:прошлую|следующую)? ?\] ?dddd/).test(format) ? + nounCase = (/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/).test(format) ? 'accusative' : 'nominative'; @@ -5211,6 +5578,7 @@ monthsParse : [/^янв/i, /^фев/i, /^мар/i, /^апр/i, /^ма[й|я]/i, /^июн/i, /^июл/i, /^авг/i, /^сен/i, /^окт/i, /^ноя/i, /^дек/i], longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY г.', LLL : 'D MMMM YYYY г., LT', @@ -5223,18 +5591,26 @@ nextWeek: function () { return this.day() === 2 ? '[Во] dddd [в] LT' : '[В] dddd [в] LT'; }, - lastWeek: function () { - switch (this.day()) { - case 0: - return '[В прошлое] dddd [в] LT'; - case 1: - case 2: - case 4: - return '[В прошлый] dddd [в] LT'; - case 3: - case 5: - case 6: - return '[В прошлую] dddd [в] LT'; + lastWeek: function (now) { + if (now.week() !== this.week()) { + switch (this.day()) { + case 0: + return '[В прошлое] dddd [в] LT'; + case 1: + case 2: + case 4: + return '[В прошлый] dddd [в] LT'; + case 3: + case 5: + case 6: + return '[В прошлую] dddd [в] LT'; + } + } else { + if (this.day() === 2) { + return '[Во] dddd [в] LT'; + } else { + return '[В] dddd [в] LT'; + } } }, sameElse: 'L' @@ -5272,6 +5648,7 @@ } }, + ordinalParse: /\d{1,2}-(й|го|я)/, ordinal: function (number, period) { switch (period) { case 'M': @@ -5306,7 +5683,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var months = 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split('_'), @@ -5385,6 +5762,7 @@ weekdaysMin : 'ne_po_ut_st_št_pi_so'.split('_'), longDateFormat : { LT: 'H:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -5444,6 +5822,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -5462,7 +5841,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function translate(number, withoutSuffix, key) { @@ -5534,6 +5913,7 @@ weekdaysMin : 'ne_po_to_sr_če_pe_so'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD. MM. YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -5589,6 +5969,7 @@ y : 'eno leto', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -5609,7 +5990,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('sq', { @@ -5618,11 +5999,16 @@ weekdays : 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split('_'), weekdaysShort : 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'), weekdaysMin : 'D_H_Ma_Më_E_P_Sh'.split('_'), + meridiemParse: /PD|MD/, + isPM: function (input) { + return input.charAt(0) === 'M'; + }, meridiem : function (hours, minutes, isLower) { return hours < 12 ? 'PD' : 'MD'; }, longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -5651,6 +6037,7 @@ y : 'një vit', yy : '%d vite' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -5669,7 +6056,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var translator = { @@ -5703,6 +6090,7 @@ weekdaysMin: ['не', 'по', 'ут', 'ср', 'че', 'пе', 'су'], longDateFormat: { LT: 'H:mm', + LTS : 'LT:ss', L: 'DD. MM. YYYY', LL: 'D. MMMM YYYY', LLL: 'D. MMMM YYYY LT', @@ -5757,6 +6145,7 @@ y : 'годину', yy : translator.translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -5775,7 +6164,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var translator = { @@ -5809,6 +6198,7 @@ weekdaysMin: ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'], longDateFormat: { LT: 'H:mm', + LTS : 'LT:ss', L: 'DD. MM. YYYY', LL: 'D. MMMM YYYY', LLL: 'D. MMMM YYYY LT', @@ -5863,6 +6253,7 @@ y : 'godinu', yy : translator.translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -5881,7 +6272,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('sv', { @@ -5892,6 +6283,7 @@ weekdaysMin : 'sö_må_ti_on_to_fr_lö'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -5920,6 +6312,7 @@ y : 'ett år', yy : '%d år' }, + ordinalParse: /\d{1,2}(e|a)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'e' : @@ -5945,7 +6338,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { /*var symbolMap = { @@ -5981,6 +6374,7 @@ weekdaysMin : 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -6019,26 +6413,43 @@ return symbolMap[match]; }); },*/ + ordinalParse: /\d{1,2}வது/, ordinal : function (number) { return number + 'வது'; }, // refer http://ta.wikipedia.org/s/1er1 - + meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/, meridiem : function (hour, minute, isLower) { - if (hour >= 6 && hour <= 10) { - return ' காலை'; - } else if (hour >= 10 && hour <= 14) { - return ' நண்பகல்'; - } else if (hour >= 14 && hour <= 18) { - return ' எற்பாடு'; - } else if (hour >= 18 && hour <= 20) { - return ' மாலை'; - } else if (hour >= 20 && hour <= 24) { - return ' இரவு'; - } else if (hour >= 0 && hour <= 6) { - return ' வைகறை'; + if (hour < 2) { + return ' யாமம்'; + } else if (hour < 6) { + return ' வைகறை'; // வைகறை + } else if (hour < 10) { + return ' காலை'; // காலை + } else if (hour < 14) { + return ' நண்பகல்'; // நண்பகல் + } else if (hour < 18) { + return ' எற்பாடு'; // எற்பாடு + } else if (hour < 22) { + return ' மாலை'; // மாலை + } else { + return ' யாமம்'; + } + }, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'யாமம்') { + return hour < 2 ? hour : hour + 12; + } else if (meridiem === 'வைகறை' || meridiem === 'காலை') { + return hour; + } else if (meridiem === 'நண்பகல்') { + return hour >= 10 ? hour : hour + 12; + } else { + return hour + 12; } }, week : { @@ -6058,7 +6469,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('th', { @@ -6069,11 +6480,16 @@ weekdaysMin : 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'), longDateFormat : { LT : 'H นาฬิกา m นาที', + LTS : 'LT s วินาที', L : 'YYYY/MM/DD', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY เวลา LT', LLLL : 'วันddddที่ D MMMM YYYY เวลา LT' }, + meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/, + isPM: function (input) { + return input === 'หลังเที่ยง'; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'ก่อนเที่ยง'; @@ -6117,7 +6533,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('tl-ph', { @@ -6128,6 +6544,7 @@ weekdaysMin : 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'MM/D/YYYY', LL : 'MMMM D, YYYY', LLL : 'MMMM D, YYYY LT', @@ -6156,6 +6573,7 @@ y : 'isang taon', yy : '%d taon' }, + ordinalParse: /\d{1,2}/, ordinal : function (number) { return number; }, @@ -6177,7 +6595,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { var suffixes = { @@ -6214,6 +6632,7 @@ weekdaysMin : 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -6242,6 +6661,7 @@ y : 'bir yıl', yy : '%d yıl' }, + ordinalParse: /\d{1,2}'(inci|nci|üncü|ncı|uncu|ıncı)/, ordinal : function (number) { if (number === 0) { // special case for zero return number + '\'ıncı'; @@ -6269,7 +6689,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('tzm-latn', { @@ -6280,6 +6700,7 @@ weekdaysMin : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -6325,7 +6746,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('tzm', { @@ -6336,6 +6757,7 @@ weekdaysMin : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS: 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -6382,7 +6804,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { function plural(word, num) { @@ -6452,6 +6874,7 @@ weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY р.', LLL : 'D MMMM YYYY р., LT', @@ -6495,6 +6918,10 @@ // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason + meridiemParse: /ночі|ранку|дня|вечора/, + isPM: function (input) { + return /^(дня|вечора)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'ночі'; @@ -6507,6 +6934,7 @@ } }, + ordinalParse: /\d{1,2}-(й|го)/, ordinal: function (number, period) { switch (period) { case 'M': @@ -6539,7 +6967,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('uz', { @@ -6550,6 +6978,7 @@ weekdaysMin : 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -6595,7 +7024,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('vi', { @@ -6606,6 +7035,7 @@ weekdaysMin : 'CN_T2_T3_T4_T5_T6_T7'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM [năm] YYYY', LLL : 'D MMMM [năm] YYYY LT', @@ -6638,6 +7068,7 @@ y : 'một năm', yy : '%d năm' }, + ordinalParse: /\d{1,2}/, ordinal : function (number) { return number; }, @@ -6659,7 +7090,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('zh-cn', { @@ -6670,6 +7101,7 @@ weekdaysMin : '日_一_二_三_四_五_六'.split('_'), longDateFormat : { LT : 'Ah点mm', + LTS : 'Ah点m分s秒', L : 'YYYY-MM-DD', LL : 'YYYY年MMMD日', LLL : 'YYYY年MMMD日LT', @@ -6679,6 +7111,21 @@ lll : 'YYYY年MMMD日LT', llll : 'YYYY年MMMD日ddddLT' }, + meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === '凌晨' || meridiem === '早上' || + meridiem === '上午') { + return hour; + } else if (meridiem === '下午' || meridiem === '晚上') { + return hour + 12; + } else { + // '中午' + return hour >= 11 ? hour : hour + 12; + } + }, meridiem : function (hour, minute, isLower) { var hm = hour * 100 + minute; if (hm < 600) { @@ -6719,6 +7166,7 @@ }, sameElse : 'LL' }, + ordinalParse: /\d{1,2}(日|月|周)/, ordinal : function (number, period) { switch (period) { case 'd': @@ -6767,7 +7215,7 @@ } else if (typeof exports === 'object') { module.exports = factory(require('../moment')); // Node } else { - factory(window.moment); // Browser global + factory((typeof global !== 'undefined' ? global : this).moment); // node or other global } }(function (moment) { return moment.defineLocale('zh-tw', { @@ -6778,6 +7226,7 @@ weekdaysMin : '日_一_二_三_四_五_六'.split('_'), longDateFormat : { LT : 'Ah點mm', + LTS : 'Ah點m分s秒', L : 'YYYY年MMMD日', LL : 'YYYY年MMMD日', LLL : 'YYYY年MMMD日LT', @@ -6787,6 +7236,19 @@ lll : 'YYYY年MMMD日LT', llll : 'YYYY年MMMD日ddddLT' }, + meridiemParse: /早上|上午|中午|下午|晚上/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === '早上' || meridiem === '上午') { + return hour; + } else if (meridiem === '中午') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === '下午' || meridiem === '晚上') { + return hour + 12; + } + }, meridiem : function (hour, minute, isLower) { var hm = hour * 100 + minute; if (hm < 900) { @@ -6809,6 +7271,7 @@ lastWeek : '[上]ddddLT', sameElse : 'L' }, + ordinalParse: /\d{1,2}(日|月|週)/, ordinal : function (number, period) { switch (period) { case 'd' : diff --git a/public/app/bower_components/moment/min/locales.min.js b/public/app/bower_components/moment/min/locales.min.js index e29a129c..b35ba6d5 100644 --- a/public/app/bower_components/moment/min/locales.min.js +++ b/public/app/bower_components/moment/min/locales.min.js @@ -1,4 +1,4 @@ -!function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiem:function(a,b,c){return 12>a?c?"vm":"VM":c?"nm":"NM"},longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[Môre om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},ordinal:function(a){return a+(1===a||8===a||a>=20?"ste":"de")},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},c={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"};return a.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},meridiem:function(a){return 12>a?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(a){return a.replace(/[۰-۹]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},c={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},d=function(a){return 0===a?0:1===a?1:2===a?2:a%100>=3&&10>=a%100?3:a%100>=11?4:5},e={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},f=function(a){return function(b,c){var f=d(b),g=e[a][d(b)];return 2===f&&(g=g[c?0:1]),g.replace(/%d/i,b)}},g=["كانون الثاني يناير","شباط فبراير","آذار مارس","نيسان أبريل","أيار مايو","حزيران يونيو","تموز يوليو","آب أغسطس","أيلول سبتمبر","تشرين الأول أكتوبر","تشرين الثاني نوفمبر","كانون الأول ديسمبر"];return a.defineLocale("ar",{months:g,monthsShort:g,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},meridiem:function(a){return 12>a?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:f("s"),m:f("m"),mm:f("m"),h:f("h"),hh:f("h"),d:f("d"),dd:f("d"),M:f("M"),MM:f("M"),y:f("y"),yy:f("y")},preparse:function(a){return a.replace(/[۰-۹]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"};return a.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"birneçə saniyyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiem:function(a){return 4>a?"gecə":12>a?"səhər":17>a?"gündüz":"axşam"},ordinal:function(a){if(0===a)return a+"-ıncı";var c=a%10,d=a%100-c,e=a>=100?100:null;return a+(b[c]||b[d]||b[e])},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:c?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:c?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"};return"m"===d?c?"хвіліна":"хвіліну":"h"===d?c?"гадзіна":"гадзіну":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_"),accusative:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),accusative:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_")},d=/\[ ?[Вв] ?(?:мінулую|наступную)? ?\] ?dddd/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("be",{months:d,monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:e,weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., LT",LLLL:"dddd, D MMMM YYYY г., LT"},calendar:{sameDay:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:c,mm:c,h:c,hh:c,d:"дзень",dd:c,M:"месяц",MM:c,y:"год",yy:c},meridiem:function(a){return 4>a?"ночы":12>a?"раніцы":17>a?"дня":"вечара"},ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":case"w":case"W":return a%10!==2&&a%10!==3||a%100===12||a%100===13?a+"-ы":a+"-і";case"D":return a+"-га";default:return a}},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"H:mm",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[В изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[В изминалия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дни",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},ordinal:function(a){var b=a%10,c=a%100;return 0===a?a+"-ев":0===c?a+"-ен":c>10&&20>c?a+"-ти":1===b?a+"-ви":2===b?a+"-ри":7===b||8===b?a+"-ми":a+"-ти"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},c={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"};return a.defineLocale("bn",{months:"জানুয়ারী_ফেবুয়ারী_মার্চ_এপ্রিল_মে_জুন_জুলাই_অগাস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব_মার্চ_এপর_মে_জুন_জুল_অগ_সেপ্ট_অক্টো_নভ_ডিসেম্".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পত্তিবার_শুক্রুবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পত্তি_শুক্রু_শনি".split("_"),weekdaysMin:"রব_সম_মঙ্গ_বু_ব্রিহ_শু_শনি".split("_"),longDateFormat:{LT:"A h:mm সময়",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কএক সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(a){return a.replace(/[১২৩৪৫৬৭৮৯০]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 4>a?"রাত":10>a?"শকাল":17>a?"দুপুর":20>a?"বিকেল":"রাত"},week:{dow:0,doy:6}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={1:"༡",2:"༢",3:"༣",4:"༤",5:"༥",6:"༦",7:"༧",8:"༨",9:"༩",0:"༠"},c={"༡":"1","༢":"2","༣":"3","༤":"4","༥":"5","༦":"6","༧":"7","༨":"8","༩":"9","༠":"0"};return a.defineLocale("bo",{months:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),monthsShort:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),weekdays:"གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),weekdaysShort:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),weekdaysMin:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),longDateFormat:{LT:"A h:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[དི་རིང] LT",nextDay:"[སང་ཉིན] LT",nextWeek:"[བདུན་ཕྲག་རྗེས་མ], LT",lastDay:"[ཁ་སང] LT",lastWeek:"[བདུན་ཕྲག་མཐའ་མ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ལ་",past:"%s སྔན་ལ",s:"ལམ་སང",m:"སྐར་མ་གཅིག",mm:"%d སྐར་མ",h:"ཆུ་ཚོད་གཅིག",hh:"%d ཆུ་ཚོད",d:"ཉིན་གཅིག",dd:"%d ཉིན་",M:"ཟླ་བ་གཅིག",MM:"%d ཟླ་བ",y:"ལོ་གཅིག",yy:"%d ལོ"},preparse:function(a){return a.replace(/[༡༢༣༤༥༦༧༨༩༠]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 4>a?"མཚན་མོ":10>a?"ཞོགས་ཀས":17>a?"ཉིན་གུང":20>a?"དགོང་དག":"མཚན་མོ"},week:{dow:0,doy:6}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c){var d={mm:"munutenn",MM:"miz",dd:"devezh"};return a+" "+e(d[c],a)}function c(a){switch(d(a)){case 1:case 3:case 4:case 5:case 9:return a+" bloaz";default:return a+" vloaz"}}function d(a){return a>9?d(a%10):a}function e(a,b){return 2===b?f(a):a}function f(a){var b={m:"v",b:"v",d:"z"};return void 0===b[a.charAt(0)]?a:b[a.charAt(0)]+a.substring(1)}return a.defineLocale("br",{months:"Genver_C'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc'her_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),longDateFormat:{LT:"h[e]mm A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY LT",LLLL:"dddd, D [a viz] MMMM YYYY LT"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc'hoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec'h da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s 'zo",s:"un nebeud segondennoù",m:"ur vunutenn",mm:b,h:"un eur",hh:"%d eur",d:"un devezh",dd:b,M:"ur miz",MM:b,y:"ur bloaz",yy:c},ordinal:function(a){var b=1===a?"añ":"vet";return a+b},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"jedna minuta":"jedne minute";case"mm":return d+=1===a?"minuta":2===a||3===a||4===a?"minute":"minuta";case"h":return b?"jedan sat":"jednog sata";case"hh":return d+=1===a?"sat":2===a||3===a||4===a?"sata":"sati";case"dd":return d+=1===a?"dan":"dana";case"MM":return d+=1===a?"mjesec":2===a||3===a||4===a?"mjeseca":"mjeseci";case"yy":return d+=1===a?"godina":2===a||3===a||4===a?"godine":"godina"}}return a.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:b,mm:b,h:b,hh:b,d:"dan",dd:b,M:"mjesec",MM:b,y:"godinu",yy:b},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("ca",{months:"gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),monthsShort:"gen._febr._mar._abr._mai._jun._jul._ag._set._oct._nov._des.".split("_"),weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"Dg_Dl_Dt_Dc_Dj_Dv_Ds".split("_"),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[demà a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fa %s",s:"uns segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a){return a>1&&5>a&&1!==~~(a/10)}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"pár sekund":"pár sekundami";case"m":return c?"minuta":e?"minutu":"minutou";case"mm":return c||e?f+(b(a)?"minuty":"minut"):f+"minutami";break;case"h":return c?"hodina":e?"hodinu":"hodinou";case"hh":return c||e?f+(b(a)?"hodiny":"hodin"):f+"hodinami";break;case"d":return c||e?"den":"dnem";case"dd":return c||e?f+(b(a)?"dny":"dní"):f+"dny";break;case"M":return c||e?"měsíc":"měsícem";case"MM":return c||e?f+(b(a)?"měsíce":"měsíců"):f+"měsíci";break;case"y":return c||e?"rok":"rokem";case"yy":return c||e?f+(b(a)?"roky":"let"):f+"lety"}}var d="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),e="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_");return a.defineLocale("cs",{months:d,monthsShort:e,monthsParse:function(a,b){var c,d=[];for(c=0;12>c;c++)d[c]=new RegExp("^"+a[c]+"$|^"+b[c]+"$","i");return d}(d,e),weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("cv",{months:"кăрлач_нарăс_пуш_ака_май_çĕртме_утă_çурла_авăн_юпа_чӳк_раштав".split("_"),monthsShort:"кăр_нар_пуш_ака_май_çĕр_утă_çур_ав_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кĕçнерникун_эрнекун_шăматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кĕç_эрн_шăм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кç_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",L:"DD-MM-YYYY",LL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ]",LLL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT",LLLL:"dddd, YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ĕнер] LT [сехетре]",nextWeek:"[Çитес] dddd LT [сехетре]",lastWeek:"[Иртнĕ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(a){var b=/сехет$/i.exec(a)?"рен":/çул$/i.exec(a)?"тан":"ран";return a+b},past:"%s каялла",s:"пĕр-ик çеккунт",m:"пĕр минут",mm:"%d минут",h:"пĕр сехет",hh:"%d сехет",d:"пĕр кун",dd:"%d кун",M:"пĕр уйăх",MM:"%d уйăх",y:"пĕр çул",yy:"%d çул"},ordinal:"%d-мĕш",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn ôl",s:"ychydig eiliadau",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},ordinal:function(a){var b=a,c="",d=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"];return b>20?c=40===b||50===b||60===b||80===b||100===b?"fed":"ain":b>0&&(c=d[b]),a+c},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd [d.] D. MMMM YYYY LT"},calendar:{sameDay:"[I dag kl.] LT",nextDay:"[I morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[I går kl.] LT",lastWeek:"[sidste] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c){var d={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[a+" Tage",a+" Tagen"],M:["ein Monat","einem Monat"],MM:[a+" Monate",a+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[a+" Jahre",a+" Jahren"]};return b?d[c][0]:d[c][1]}return a.defineLocale("de-at",{months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm [Uhr]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Heute um] LT",sameElse:"L",nextDay:"[Morgen um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gestern um] LT",lastWeek:"[letzten] dddd [um] LT"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:b,mm:"%d Minuten",h:b,hh:"%d Stunden",d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c){var d={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[a+" Tage",a+" Tagen"],M:["ein Monat","einem Monat"],MM:[a+" Monate",a+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[a+" Jahre",a+" Jahren"]};return b?d[c][0]:d[c][1]}return a.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm [Uhr]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Heute um] LT",sameElse:"L",nextDay:"[Morgen um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gestern um] LT",lastWeek:"[letzten] dddd [um] LT"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:b,mm:"%d Minuten",h:b,hh:"%d Stunden",d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(a,b){return/D/.test(b.substring(0,b.indexOf("MMMM")))?this._monthsGenitiveEl[a.month()]:this._monthsNominativeEl[a.month()]},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(a,b,c){return a>11?c?"μμ":"ΜΜ":c?"πμ":"ΠΜ"},isPM:function(a){return"μ"===(a+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/i,longDateFormat:{LT:"h:mm A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendarEl:{sameDay:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(a,b){var c=this._calendarEl[a],d=b&&b.hours();return"function"==typeof c&&(c=c.apply(b)),c.replace("{}",d%12===1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},ordinal:function(a){return a+"η"},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",L:"YYYY-MM-DD",LL:"D MMMM, YYYY",LLL:"D MMMM, YYYY LT",LLLL:"dddd, D MMMM, YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec".split("_"),weekdays:"Dimanĉo_Lundo_Mardo_Merkredo_Ĵaŭdo_Vendredo_Sabato".split("_"),weekdaysShort:"Dim_Lun_Mard_Merk_Ĵaŭ_Ven_Sab".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Ĵa_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D[-an de] MMMM, YYYY",LLL:"D[-an de] MMMM, YYYY LT",LLLL:"dddd, [la] D[-an de] MMMM, YYYY LT"},meridiem:function(a,b,c){return a>11?c?"p.t.m.":"P.T.M.":c?"a.t.m.":"A.T.M." -},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd [je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"je %s",past:"antaŭ %s",s:"sekundoj",m:"minuto",mm:"%d minutoj",h:"horo",hh:"%d horoj",d:"tago",dd:"%d tagoj",M:"monato",MM:"%d monatoj",y:"jaro",yy:"%d jaroj"},ordinal:"%da",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),c="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_");return a.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(a,d){return/-MMM-/.test(d)?c[a.month()]:b[a.month()]},weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"Do_Lu_Ma_Mi_Ju_Vi_Sá".split("_"),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c,d){var e={s:["mõne sekundi","mõni sekund","paar sekundit"],m:["ühe minuti","üks minut"],mm:[a+" minuti",a+" minutit"],h:["ühe tunni","tund aega","üks tund"],hh:[a+" tunni",a+" tundi"],d:["ühe päeva","üks päev"],M:["kuu aja","kuu aega","üks kuu"],MM:[a+" kuu",a+" kuud"],y:["ühe aasta","aasta","üks aasta"],yy:[a+" aasta",a+" aastat"]};return b?e[c][2]?e[c][2]:e[c][1]:d?e[c][0]:e[c][1]}return a.defineLocale("et",{months:"jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Täna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:"%d päeva",M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] LT",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] LT",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] LT",llll:"ddd, YYYY[ko] MMM D[a] LT"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},c={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"};return a.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},meridiem:function(a){return 12>a?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چندین ثانیه",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(a){return a.replace(/[۰-۹]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},ordinal:"%dم",week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,d,e){var f="";switch(d){case"s":return e?"muutaman sekunnin":"muutama sekunti";case"m":return e?"minuutin":"minuutti";case"mm":f=e?"minuutin":"minuuttia";break;case"h":return e?"tunnin":"tunti";case"hh":f=e?"tunnin":"tuntia";break;case"d":return e?"päivän":"päivä";case"dd":f=e?"päivän":"päivää";break;case"M":return e?"kuukauden":"kuukausi";case"MM":f=e?"kuukauden":"kuukautta";break;case"y":return e?"vuoden":"vuosi";case"yy":f=e?"vuoden":"vuotta"}return f=c(a,e)+" "+f}function c(a,b){return 10>a?b?e[a]:d[a]:a}var d="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),e=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",d[7],d[8],d[9]];return a.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] LT",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] LT",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] LT",llll:"ddd, Do MMM YYYY, [klo] LT"},calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("fo",{months:"januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_fr_le".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D. MMMM, YYYY LT"},calendar:{sameDay:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",m:"ein minutt",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaði",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("fr-ca",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinal:function(a){return a+(1===a?"er":"")}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinal:function(a){return a+(1===a?"er":"")},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("gl",{months:"Xaneiro_Febreiro_Marzo_Abril_Maio_Xuño_Xullo_Agosto_Setembro_Outubro_Novembro_Decembro".split("_"),monthsShort:"Xan._Feb._Mar._Abr._Mai._Xuñ._Xul._Ago._Set._Out._Nov._Dec.".split("_"),weekdays:"Domingo_Luns_Martes_Mércores_Xoves_Venres_Sábado".split("_"),weekdaysShort:"Dom._Lun._Mar._Mér._Xov._Ven._Sáb.".split("_"),weekdaysMin:"Do_Lu_Ma_Mé_Xo_Ve_Sá".split("_"),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(a){return"uns segundos"===a?"nuns segundos":"en "+a},past:"hai %s",s:"uns segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},ordinal:"%dº",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("he",{months:"ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),monthsShort:"ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),weekdays:"ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),weekdaysShort:"א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),weekdaysMin:"א_ב_ג_ד_ה_ו_ש".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [ב]MMMM YYYY",LLL:"D [ב]MMMM YYYY LT",LLLL:"dddd, D [ב]MMMM YYYY LT",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY LT",llll:"ddd, D MMM YYYY LT"},calendar:{sameDay:"[היום ב־]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[אתמול ב־]LT",lastWeek:"[ביום] dddd [האחרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"לפני %s",s:"מספר שניות",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(a){return 2===a?"שעתיים":a+" שעות"},d:"יום",dd:function(a){return 2===a?"יומיים":a+" ימים"},M:"חודש",MM:function(a){return 2===a?"חודשיים":a+" חודשים"},y:"שנה",yy:function(a){return 2===a?"שנתיים":a+" שנים"}}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("hi",{months:"जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),monthsShort:"जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),weekdays:"रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कुछ ही क्षण",m:"एक मिनट",mm:"%d मिनट",h:"एक घंटा",hh:"%d घंटे",d:"एक दिन",dd:"%d दिन",M:"एक महीने",MM:"%d महीने",y:"एक वर्ष",yy:"%d वर्ष"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 4>a?"रात":10>a?"सुबह":17>a?"दोपहर":20>a?"शाम":"रात"},week:{dow:0,doy:6}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"jedna minuta":"jedne minute";case"mm":return d+=1===a?"minuta":2===a||3===a||4===a?"minute":"minuta";case"h":return b?"jedan sat":"jednog sata";case"hh":return d+=1===a?"sat":2===a||3===a||4===a?"sata":"sati";case"dd":return d+=1===a?"dan":"dana";case"MM":return d+=1===a?"mjesec":2===a||3===a||4===a?"mjeseca":"mjeseci";case"yy":return d+=1===a?"godina":2===a||3===a||4===a?"godine":"godina"}}return a.defineLocale("hr",{months:"sječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_"),monthsShort:"sje._vel._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:b,mm:b,h:b,hh:b,d:"dan",dd:b,M:"mjesec",MM:b,y:"godinu",yy:b},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c,d){var e=a;switch(c){case"s":return d||b?"néhány másodperc":"néhány másodperce";case"m":return"egy"+(d||b?" perc":" perce");case"mm":return e+(d||b?" perc":" perce");case"h":return"egy"+(d||b?" óra":" órája");case"hh":return e+(d||b?" óra":" órája");case"d":return"egy"+(d||b?" nap":" napja");case"dd":return e+(d||b?" nap":" napja");case"M":return"egy"+(d||b?" hónap":" hónapja");case"MM":return e+(d||b?" hónap":" hónapja");case"y":return"egy"+(d||b?" év":" éve");case"yy":return e+(d||b?" év":" éve")}return""}function c(a){return(a?"":"[múlt] ")+"["+d[this.day()]+"] LT[-kor]"}var d="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");return a.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec".split("_"),weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D., LT",LLLL:"YYYY. MMMM D., dddd LT"},meridiem:function(a,b,c){return 12>a?c===!0?"de":"DE":c===!0?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return c.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return c.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b){var c={nominative:"հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_"),accusative:"հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function c(a){var b="հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_");return b[a.month()]}function d(a){var b="կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_");return b[a.day()]}return a.defineLocale("hy-am",{months:b,monthsShort:c,weekdays:d,weekdaysShort:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),weekdaysMin:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY թ.",LLL:"D MMMM YYYY թ., LT",LLLL:"dddd, D MMMM YYYY թ., LT"},calendar:{sameDay:"[այսօր] LT",nextDay:"[վաղը] LT",lastDay:"[երեկ] LT",nextWeek:function(){return"dddd [օրը ժամը] LT"},lastWeek:function(){return"[անցած] dddd [օրը ժամը] LT"},sameElse:"L"},relativeTime:{future:"%s հետո",past:"%s առաջ",s:"մի քանի վայրկյան",m:"րոպե",mm:"%d րոպե",h:"ժամ",hh:"%d ժամ",d:"օր",dd:"%d օր",M:"ամիս",MM:"%d ամիս",y:"տարի",yy:"%d տարի"},meridiem:function(a){return 4>a?"գիշերվա":12>a?"առավոտվա":17>a?"ցերեկվա":"երեկոյան"},ordinal:function(a,b){switch(b){case"DDD":case"w":case"W":case"DDDo":return 1===a?a+"-ին":a+"-րդ";default:return a}},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiem:function(a){return 11>a?"pagi":15>a?"siang":19>a?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a){return a%100===11?!0:a%10===1?!1:!0}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"nokkrar sekúndur":"nokkrum sekúndum";case"m":return c?"mínúta":"mínútu";case"mm":return b(a)?f+(c||e?"mínútur":"mínútum"):c?f+"mínúta":f+"mínútu";case"hh":return b(a)?f+(c||e?"klukkustundir":"klukkustundum"):f+"klukkustund";case"d":return c?"dagur":e?"dag":"degi";case"dd":return b(a)?c?f+"dagar":f+(e?"daga":"dögum"):c?f+"dagur":f+(e?"dag":"degi");case"M":return c?"mánuður":e?"mánuð":"mánuði";case"MM":return b(a)?c?f+"mánuðir":f+(e?"mánuði":"mánuðum"):c?f+"mánuður":f+(e?"mánuð":"mánuði");case"y":return c||e?"ár":"ári";case"yy":return b(a)?f+(c||e?"ár":"árum"):f+(c||e?"ár":"ári")}}return a.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_La".split("_"),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd, D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:c,m:c,mm:c,h:"klukkustund",hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"Domenica_Lunedì_Martedì_Mercoledì_Giovedì_Venerdì_Sabato".split("_"),weekdaysShort:"Dom_Lun_Mar_Mer_Gio_Ven_Sab".split("_"),weekdaysMin:"D_L_Ma_Me_G_V_S".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:"[lo scorso] dddd [alle] LT",sameElse:"L"},relativeTime:{future:function(a){return(/^[0-9].+$/.test(a)?"tra":"in")+" "+a},past:"%s fa",s:"alcuni secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("ja",{months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"Ah時m分",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日LT",LLLL:"YYYY年M月D日LT dddd"},meridiem:function(a){return 12>a?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:"[来週]dddd LT",lastDay:"[昨日] LT",lastWeek:"[前週]dddd LT",sameElse:"L"},relativeTime:{future:"%s後",past:"%s前",s:"数秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b){var c={nominative:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),accusative:"იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს".split("_")},d=/D[oD] *MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function c(a,b){var c={nominative:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),accusative:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_")},d=/(წინა|შემდეგ)/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("ka",{months:b,monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:c,weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),longDateFormat:{LT:"h:mm A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(a){return/(წამი|წუთი|საათი|წელი)/.test(a)?a.replace(/ი$/,"ში"):a+"ში"},past:function(a){return/(წამი|წუთი|საათი|დღე|თვე)/.test(a)?a.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(a)?a.replace(/წელი$/,"წლის წინ"):void 0},s:"რამდენიმე წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},ordinal:function(a){return 0===a?a:1===a?a+"-ლი":20>a||100>=a&&a%20===0||a%100===0?"მე-"+a:a+"-ე"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("km",{months:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),monthsShort:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),weekdays:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysShort:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysMin:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[ថ្ងៃនៈ ម៉ោង] LT",nextDay:"[ស្អែក ម៉ោង] LT",nextWeek:"dddd [ម៉ោង] LT",lastDay:"[ម្សិលមិញ ម៉ោង] LT",lastWeek:"dddd [សប្តាហ៍មុន] [ម៉ោង] LT",sameElse:"L"},relativeTime:{future:"%sទៀត",past:"%sមុន",s:"ប៉ុន្មានវិនាទី",m:"មួយនាទី",mm:"%d នាទី",h:"មួយម៉ោង",hh:"%d ម៉ោង",d:"មួយថ្ងៃ",dd:"%d ថ្ងៃ",M:"មួយខែ",MM:"%d ខែ",y:"មួយឆ្នាំ",yy:"%d ឆ្នាំ"},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h시 m분",L:"YYYY.MM.DD",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 LT",LLLL:"YYYY년 MMMM D일 dddd LT"},meridiem:function(a){return 12>a?"오전":"오후"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇초",ss:"%d초",m:"일분",mm:"%d분",h:"한시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한달",MM:"%d달",y:"일년",yy:"%d년"},ordinal:"%d일",meridiemParse:/(오전|오후)/,isPM:function(a){return"오후"===a}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c){var d={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return b?d[c][0]:d[c][1]}function c(a){var b=a.substr(0,a.indexOf(" "));return e(b)?"a "+a:"an "+a}function d(a){var b=a.substr(0,a.indexOf(" "));return e(b)?"viru "+a:"virun "+a}function e(a){if(a=parseInt(a,10),isNaN(a))return!1;if(0>a)return!0;if(10>a)return a>=4&&7>=a?!0:!1;if(100>a){var b=a%10,c=a/10;return e(0===b?c:b)}if(1e4>a){for(;a>=10;)a/=10;return e(a)}return a/=1e3,e(a)}return a.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_Do_Fr_Sa".split("_"),longDateFormat:{LT:"H:mm [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gëschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:c,past:d,s:"e puer Sekonnen",m:b,mm:"%d Minutten",h:b,hh:"%d Stonnen",d:b,dd:"%d Deeg",M:b,MM:"%d Méint",y:b,yy:"%d Joer"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c,d){return b?"kelios sekundės":d?"kelių sekundžių":"kelias sekundes"}function c(a,b,c,d){return b?e(c)[0]:d?e(c)[1]:e(c)[2]}function d(a){return a%10===0||a>10&&20>a}function e(a){return h[a].split("_")}function f(a,b,f,g){var h=a+" ";return 1===a?h+c(a,b,f[0],g):b?h+(d(a)?e(f)[1]:e(f)[0]):g?h+e(f)[1]:h+(d(a)?e(f)[1]:e(f)[2])}function g(a,b){var c=-1===b.indexOf("dddd HH:mm"),d=i[a.day()];return c?d:d.substring(0,d.length-2)+"į"}var h={m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"},i="sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_");return a.defineLocale("lt",{months:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:g,weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".split("_"),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], LT [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, LT [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], LT [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, LT [val.]"},calendar:{sameDay:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:b,m:c,mm:f,h:c,hh:f,d:c,dd:f,M:c,MM:f,y:c,yy:f},ordinal:function(a){return a+"-oji" -},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c){var d=a.split("_");return c?b%10===1&&11!==b?d[2]:d[3]:b%10===1&&11!==b?d[0]:d[1]}function c(a,c,e){return a+" "+b(d[e],a,c)}var d={mm:"minūti_minūtes_minūte_minūtes",hh:"stundu_stundas_stunda_stundas",dd:"dienu_dienas_diena_dienas",MM:"mēnesi_mēnešus_mēnesis_mēneši",yy:"gadu_gadus_gads_gadi"};return a.defineLocale("lv",{months:"janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),weekdays:"svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, LT",LLLL:"YYYY. [gada] D. MMMM, dddd, LT"},calendar:{sameDay:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pagājušā] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"%s vēlāk",past:"%s agrāk",s:"dažas sekundes",m:"minūti",mm:c,h:"stundu",hh:c,d:"dienu",dd:c,M:"mēnesi",MM:c,y:"gadu",yy:c},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".split("_"),longDateFormat:{LT:"H:mm",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Во изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Во изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"после %s",past:"пред %s",s:"неколку секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",M:"месец",MM:"%d месеци",y:"година",yy:"%d години"},ordinal:function(a){var b=a%10,c=a%100;return 0===a?a+"-ев":0===c?a+"-ен":c>10&&20>c?a+"-ти":1===b?a+"-ви":2===b?a+"-ри":7===b||8===b?a+"-ми":a+"-ти"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".split("_"),longDateFormat:{LT:"A h:mm -നു",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiem:function(a){return 4>a?"രാത്രി":12>a?"രാവിലെ":17>a?"ഉച്ച കഴിഞ്ഞ്":20>a?"വൈകുന്നേരം":"രാത്രി"}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%s नंतर",past:"%s पूर्वी",s:"सेकंद",m:"एक मिनिट",mm:"%d मिनिटे",h:"एक तास",hh:"%d तास",d:"एक दिवस",dd:"%d दिवस",M:"एक महिना",MM:"%d महिने",y:"एक वर्ष",yy:"%d वर्षे"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 4>a?"रात्री":10>a?"सकाळी":17>a?"दुपारी":20>a?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiem:function(a){return 11>a?"pagi":15>a?"tengahari":19>a?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},c={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"};return a.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_င်္ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_င်္ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(a){return a.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tirs_ons_tors_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"H.mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s siden",s:"noen sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en måned",MM:"%d måneder",y:"ett år",yy:"%d år"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आइ._सो._मङ्_बु._बि._शु._श.".split("_"),longDateFormat:{LT:"Aको h:mm बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 3>a?"राती":10>a?"बिहान":15>a?"दिउँसो":18>a?"बेलुका":20>a?"साँझ":"राती"},calendar:{sameDay:"[आज] LT",nextDay:"[भोली] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडी",s:"केही समय",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),c="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_");return a.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(a,d){return/-MMM-/.test(d)?c[a.month()]:b[a.month()]},weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"Zo_Ma_Di_Wo_Do_Vr_Za".split("_"),longDateFormat:{LT:"HH:mm",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},ordinal:function(a){return a+(1===a||8===a||a>=20?"ste":"de")},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"sun_mån_tys_ons_tor_fre_lau".split("_"),weekdaysMin:"su_må_ty_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I går klokka] LT",lastWeek:"[Føregåande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s sidan",s:"nokre sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",M:"ein månad",MM:"%d månader",y:"eit år",yy:"%d år"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a){return 5>a%10&&a%10>1&&~~(a/10)%10!==1}function c(a,c,d){var e=a+" ";switch(d){case"m":return c?"minuta":"minutę";case"mm":return e+(b(a)?"minuty":"minut");case"h":return c?"godzina":"godzinę";case"hh":return e+(b(a)?"godziny":"godzin");case"MM":return e+(b(a)?"miesiące":"miesięcy");case"yy":return e+(b(a)?"lata":"lat")}}var d="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),e="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_");return a.defineLocale("pl",{months:function(a,b){return/D MMMM/.test(b)?e[a.month()]:d[a.month()]},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"nie_pon_wt_śr_czw_pt_sb".split("_"),weekdaysMin:"N_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek:"[W] dddd [o] LT",lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",m:c,mm:c,h:c,hh:c,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:c,y:"rok",yy:c},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("pt-br",{months:"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_sáb".split("_"),weekdaysMin:"dom_2ª_3ª_4ª_5ª_6ª_sáb".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [às] LT",LLLL:"dddd, D [de] MMMM [de] YYYY [às] LT"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinal:"%dº"})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("pt",{months:"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_sáb".split("_"),weekdaysMin:"dom_2ª_3ª_4ª_5ª_6ª_sáb".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c){var d={mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"},e=" ";return(a%100>=20||a>=100&&a%100===0)&&(e=" de "),a+e+d[c]}return a.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),weekdays:"duminică_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_Sâ".split("_"),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[mâine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",m:"un minut",mm:b,h:"o oră",hh:b,d:"o zi",dd:b,M:"o lună",MM:b,y:"un an",yy:b},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:c?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",MM:"месяц_месяца_месяцев",yy:"год_года_лет"};return"m"===d?c?"минута":"минуту":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),accusative:"января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"янв_фев_мар_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_"),accusative:"янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function f(a,b){var c={nominative:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),accusative:"воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу".split("_")},d=/\[ ?[Вв] ?(?:прошлую|следующую)? ?\] ?dddd/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("ru",{months:d,monthsShort:e,weekdays:f,weekdaysShort:"вс_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),monthsParse:[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[й|я]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i],longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., LT",LLLL:"dddd, D MMMM YYYY г., LT"},calendar:{sameDay:"[Сегодня в] LT",nextDay:"[Завтра в] LT",lastDay:"[Вчера в] LT",nextWeek:function(){return 2===this.day()?"[Во] dddd [в] LT":"[В] dddd [в] LT"},lastWeek:function(){switch(this.day()){case 0:return"[В прошлое] dddd [в] LT";case 1:case 2:case 4:return"[В прошлый] dddd [в] LT";case 3:case 5:case 6:return"[В прошлую] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",m:c,mm:c,h:"час",hh:c,d:"день",dd:c,M:"месяц",MM:c,y:"год",yy:c},meridiemParse:/ночи|утра|дня|вечера/i,isPM:function(a){return/^(дня|вечера)$/.test(a)},meridiem:function(a){return 4>a?"ночи":12>a?"утра":17>a?"дня":"вечера"},ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":return a+"-й";case"D":return a+"-го";case"w":case"W":return a+"-я";default:return a}},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a){return a>1&&5>a}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"pár sekúnd":"pár sekundami";case"m":return c?"minúta":e?"minútu":"minútou";case"mm":return c||e?f+(b(a)?"minúty":"minút"):f+"minútami";break;case"h":return c?"hodina":e?"hodinu":"hodinou";case"hh":return c||e?f+(b(a)?"hodiny":"hodín"):f+"hodinami";break;case"d":return c||e?"deň":"dňom";case"dd":return c||e?f+(b(a)?"dni":"dní"):f+"dňami";break;case"M":return c||e?"mesiac":"mesiacom";case"MM":return c||e?f+(b(a)?"mesiace":"mesiacov"):f+"mesiacmi";break;case"y":return c||e?"rok":"rokom";case"yy":return c||e?f+(b(a)?"roky":"rokov"):f+"rokmi"}}var d="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),e="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_");return a.defineLocale("sk",{months:d,monthsShort:e,monthsParse:function(a,b){var c,d=[];for(c=0;12>c;c++)d[c]=new RegExp("^"+a[c]+"$|^"+b[c]+"$","i");return d}(d,e),weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_pi_so".split("_"),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"ena minuta":"eno minuto";case"mm":return d+=1===a?"minuta":2===a?"minuti":3===a||4===a?"minute":"minut";case"h":return b?"ena ura":"eno uro";case"hh":return d+=1===a?"ura":2===a?"uri":3===a||4===a?"ure":"ur";case"dd":return d+=1===a?"dan":"dni";case"MM":return d+=1===a?"mesec":2===a?"meseca":3===a||4===a?"mesece":"mesecev";case"yy":return d+=1===a?"leto":2===a?"leti":3===a||4===a?"leta":"let"}}return a.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),weekdays:"nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_pe_so".split("_"),longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[včeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[prejšnja] dddd [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"%s nazaj",s:"nekaj sekund",m:b,mm:b,h:b,hh:b,d:"en dan",dd:b,M:"en mesec",MM:b,y:"eno leto",yy:b},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),weekdays:"E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),weekdaysShort:"Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_Më_E_P_Sh".split("_"),meridiem:function(a){return 12>a?"PD":"MD"},longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Sot në] LT",nextDay:"[Nesër në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s më parë",s:"disa sekonda",m:"një minutë",mm:"%d minuta",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={words:{m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(a,b){return 1===a?b[0]:a>=2&&4>=a?b[1]:b[2]},translate:function(a,c,d){var e=b.words[d];return 1===d.length?c?e[0]:e[1]:a+" "+b.correctGrammaticalCase(a,e)}};return a.defineLocale("sr-cyrl",{months:["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар"],monthsShort:["јан.","феб.","мар.","апр.","мај","јун","јул","авг.","сеп.","окт.","нов.","дец."],weekdays:["недеља","понедељак","уторак","среда","четвртак","петак","субота"],weekdaysShort:["нед.","пон.","уто.","сре.","чет.","пет.","суб."],weekdaysMin:["не","по","ут","ср","че","пе","су"],longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){var a=["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"];return a[this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",m:b.translate,mm:b.translate,h:b.translate,hh:b.translate,d:"дан",dd:b.translate,M:"месец",MM:b.translate,y:"годину",yy:b.translate},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={words:{m:["jedan minut","jedne minute"],mm:["minut","minute","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mesec","meseca","meseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(a,b){return 1===a?b[0]:a>=2&&4>=a?b[1]:b[2]},translate:function(a,c,d){var e=b.words[d];return 1===d.length?c?e[0]:e[1]:a+" "+b.correctGrammaticalCase(a,e)}};return a.defineLocale("sr",{months:["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar"],monthsShort:["jan.","feb.","mar.","apr.","maj","jun","jul","avg.","sep.","okt.","nov.","dec."],weekdays:["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],weekdaysShort:["ned.","pon.","uto.","sre.","čet.","pet.","sub."],weekdaysMin:["ne","po","ut","sr","če","pe","su"],longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){var a=["[prošle] [nedelje] [u] LT","[prošlog] [ponedeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"];return a[this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",m:b.translate,mm:b.translate,h:b.translate,hh:b.translate,d:"dan",dd:b.translate,M:"mesec",MM:b.translate,y:"godinu",yy:b.translate},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".split("_"),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"dddd LT",lastWeek:"[Förra] dddd[en] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"e":1===b?"a":2===b?"a":3===b?"e":"e";return a+c},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},ordinal:function(a){return a+"வது"},meridiem:function(a){return a>=6&&10>=a?" காலை":a>=10&&14>=a?" நண்பகல்":a>=14&&18>=a?" எற்பாடு":a>=18&&20>=a?" மாலை":a>=20&&24>=a?" இரவு":a>=0&&6>=a?" வைகறை":void 0},week:{dow:0,doy:6}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"มกรา_กุมภา_มีนา_เมษา_พฤษภา_มิถุนา_กรกฎา_สิงหา_กันยา_ตุลา_พฤศจิกา_ธันวา".split("_"),weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),longDateFormat:{LT:"H นาฬิกา m นาที",L:"YYYY/MM/DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา LT",LLLL:"วันddddที่ D MMMM YYYY เวลา LT"},meridiem:function(a){return 12>a?"ก่อนเที่ยง":"หลังเที่ยง" -},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM DD, YYYY LT"},calendar:{sameDay:"[Ngayon sa] LT",nextDay:"[Bukas sa] LT",nextWeek:"dddd [sa] LT",lastDay:"[Kahapon sa] LT",lastWeek:"dddd [huling linggo] LT",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},ordinal:function(a){return a},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){var b={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"};return a.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[haftaya] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen hafta] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(a){if(0===a)return a+"'ıncı";var c=a%10,d=a%100-c,e=a>=100?100:null;return a+(b[c]||b[d]||b[e])},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("tzm-latn",{months:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",m:"minuḍ",mm:"%d minuḍ",h:"saɛa",hh:"%d tassaɛin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("tzm",{months:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),monthsShort:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),weekdays:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysMin:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[ⴰⵙⴷⵅ ⴴ] LT",nextDay:"[ⴰⵙⴽⴰ ⴴ] LT",nextWeek:"dddd [ⴴ] LT",lastDay:"[ⴰⵚⴰⵏⵜ ⴴ] LT",lastWeek:"dddd [ⴴ] LT",sameElse:"L"},relativeTime:{future:"ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",past:"ⵢⴰⵏ %s",s:"ⵉⵎⵉⴽ",m:"ⵎⵉⵏⵓⴺ",mm:"%d ⵎⵉⵏⵓⴺ",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉⵏ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰⵏ",M:"ⴰⵢoⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔⵏ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙⵏ"},week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:"хвилина_хвилини_хвилин",hh:"година_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"};return"m"===d?c?"хвилина":"хвилину":"h"===d?c?"година":"годину":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_"),accusative:"січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_")},d=/D[oD]? *MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),accusative:"неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),genitive:"неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")},d=/(\[[ВвУу]\]) ?dddd/.test(b)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(b)?"genitive":"nominative";return c[d][a.day()]}function f(a){return function(){return a+"о"+(11===this.hours()?"б":"")+"] LT"}}return a.defineLocale("uk",{months:d,monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekdays:e,weekdaysShort:"нд_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY р.",LLL:"D MMMM YYYY р., LT",LLLL:"dddd, D MMMM YYYY р., LT"},calendar:{sameDay:f("[Сьогодні "),nextDay:f("[Завтра "),lastDay:f("[Вчора "),nextWeek:f("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return f("[Минулої] dddd [").call(this);case 1:case 2:case 4:return f("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",m:c,mm:c,h:"годину",hh:c,d:"день",dd:c,M:"місяць",MM:c,y:"рік",yy:c},meridiem:function(a){return 4>a?"ночі":12>a?"ранку":17>a?"дня":"вечора"},ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":case"w":case"W":return a+"-й";case"D":return a+"-го";default:return a}},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("uz",{months:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"D MMMM YYYY, dddd LT"},calendar:{sameDay:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY LT",LLLL:"dddd, D MMMM [năm] YYYY LT",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY LT",llll:"ddd, D MMM YYYY LT"},calendar:{sameDay:"[Hôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần rồi lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},ordinal:function(a){return a},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(window.moment)}(function(a){return a.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"Ah点mm",L:"YYYY-MM-DD",LL:"YYYY年MMMD日",LLL:"YYYY年MMMD日LT",LLLL:"YYYY年MMMD日ddddLT",l:"YYYY-MM-DD",ll:"YYYY年MMMD日",lll:"YYYY年MMMD日LT",llll:"YYYY年MMMD日ddddLT"},meridiem:function(a,b){var c=100*a+b;return 600>c?"凌晨":900>c?"早上":1130>c?"上午":1230>c?"中午":1800>c?"下午":"晚上"},calendar:{sameDay:function(){return 0===this.minutes()?"[今天]Ah[点整]":"[今天]LT"},nextDay:function(){return 0===this.minutes()?"[明天]Ah[点整]":"[明天]LT"},lastDay:function(){return 0===this.minutes()?"[昨天]Ah[点整]":"[昨天]LT"},nextWeek:function(){var b,c;return b=a().startOf("week"),c=this.unix()-b.unix()>=604800?"[下]":"[本]",0===this.minutes()?c+"dddAh点整":c+"dddAh点mm"},lastWeek:function(){var b,c;return b=a().startOf("week"),c=this.unix()c?"早上":1130>c?"上午":1230>c?"中午":1800>c?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},ordinal:function(a,b){switch(b){case"d":case"D":case"DDD":return a+"日";case"M":return a+"月";case"w":case"W":return a+"週";default:return a}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",m:"一分鐘",mm:"%d分鐘",h:"一小時",hh:"%d小時",d:"一天",dd:"%d天",M:"一個月",MM:"%d個月",y:"一年",yy:"%d年"}})}); \ No newline at end of file +!function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(a){return/^nm$/i.test(a)},meridiem:function(a,b,c){return 12>a?c?"vm":"VM":c?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[Môre om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(a){return a+(1===a||8===a||a>=20?"ste":"de")},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},c={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"};return a.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},meridiemParse:/ص|م/,isPM:function(a){return"م"===a},meridiem:function(a){return 12>a?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(a){return a.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("ar-tn",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},c={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},d=function(a){return 0===a?0:1===a?1:2===a?2:a%100>=3&&10>=a%100?3:a%100>=11?4:5},e={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},f=function(a){return function(b,c){var f=d(b),g=e[a][d(b)];return 2===f&&(g=g[c?0:1]),g.replace(/%d/i,b)}},g=["كانون الثاني يناير","شباط فبراير","آذار مارس","نيسان أبريل","أيار مايو","حزيران يونيو","تموز يوليو","آب أغسطس","أيلول سبتمبر","تشرين الأول أكتوبر","تشرين الثاني نوفمبر","كانون الأول ديسمبر"];return a.defineLocale("ar",{months:g,monthsShort:g,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},meridiemParse:/ص|م/,isPM:function(a){return"م"===a},meridiem:function(a){return 12>a?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:f("s"),m:f("m"),mm:f("m"),h:f("h"),hh:f("h"),d:f("d"),dd:f("d"),M:f("M"),MM:f("M"),y:f("y"),yy:f("y")},preparse:function(a){return a.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"};return a.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"birneçə saniyyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gecə|səhər|gündüz|axşam/,isPM:function(a){return/^(gündüz|axşam)$/.test(a)},meridiem:function(a){return 4>a?"gecə":12>a?"səhər":17>a?"gündüz":"axşam"},ordinalParse:/\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,ordinal:function(a){if(0===a)return a+"-ıncı";var c=a%10,d=a%100-c,e=a>=100?100:null;return a+(b[c]||b[d]||b[e])},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:c?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:c?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"};return"m"===d?c?"хвіліна":"хвіліну":"h"===d?c?"гадзіна":"гадзіну":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_"),accusative:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),accusative:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_")},d=/\[ ?[Вв] ?(?:мінулую|наступную)? ?\] ?dddd/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("be",{months:d,monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:e,weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., LT",LLLL:"dddd, D MMMM YYYY г., LT"},calendar:{sameDay:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:c,mm:c,h:c,hh:c,d:"дзень",dd:c,M:"месяц",MM:c,y:"год",yy:c},meridiemParse:/ночы|раніцы|дня|вечара/,isPM:function(a){return/^(дня|вечара)$/.test(a)},meridiem:function(a){return 4>a?"ночы":12>a?"раніцы":17>a?"дня":"вечара"},ordinalParse:/\d{1,2}-(і|ы|га)/,ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":case"w":case"W":return a%10!==2&&a%10!==3||a%100===12||a%100===13?a+"-ы":a+"-і";case"D":return a+"-га";default:return a}},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[В изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[В изминалия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дни",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},ordinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(a){var b=a%10,c=a%100;return 0===a?a+"-ев":0===c?a+"-ен":c>10&&20>c?a+"-ти":1===b?a+"-ви":2===b?a+"-ри":7===b||8===b?a+"-ми":a+"-ти"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},c={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"};return a.defineLocale("bn",{months:"জানুয়ারী_ফেবুয়ারী_মার্চ_এপ্রিল_মে_জুন_জুলাই_অগাস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব_মার্চ_এপর_মে_জুন_জুল_অগ_সেপ্ট_অক্টো_নভ_ডিসেম্".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পত্তিবার_শুক্রুবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পত্তি_শুক্রু_শনি".split("_"),weekdaysMin:"রব_সম_মঙ্গ_বু_ব্রিহ_শু_শনি".split("_"),longDateFormat:{LT:"A h:mm সময়",LTS:"A h:mm:ss সময়",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কএক সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(a){return a.replace(/[১২৩৪৫৬৭৮৯০]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiemParse:/রাত|শকাল|দুপুর|বিকেল|রাত/,isPM:function(a){return/^(দুপুর|বিকেল|রাত)$/.test(a)},meridiem:function(a){return 4>a?"রাত":10>a?"শকাল":17>a?"দুপুর":20>a?"বিকেল":"রাত"},week:{dow:0,doy:6}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={1:"༡",2:"༢",3:"༣",4:"༤",5:"༥",6:"༦",7:"༧",8:"༨",9:"༩",0:"༠"},c={"༡":"1","༢":"2","༣":"3","༤":"4","༥":"5","༦":"6","༧":"7","༨":"8","༩":"9","༠":"0"};return a.defineLocale("bo",{months:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),monthsShort:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),weekdays:"གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),weekdaysShort:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),weekdaysMin:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),longDateFormat:{LT:"A h:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[དི་རིང] LT",nextDay:"[སང་ཉིན] LT",nextWeek:"[བདུན་ཕྲག་རྗེས་མ], LT",lastDay:"[ཁ་སང] LT",lastWeek:"[བདུན་ཕྲག་མཐའ་མ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ལ་",past:"%s སྔན་ལ",s:"ལམ་སང",m:"སྐར་མ་གཅིག",mm:"%d སྐར་མ",h:"ཆུ་ཚོད་གཅིག",hh:"%d ཆུ་ཚོད",d:"ཉིན་གཅིག",dd:"%d ཉིན་",M:"ཟླ་བ་གཅིག",MM:"%d ཟླ་བ",y:"ལོ་གཅིག",yy:"%d ལོ"},preparse:function(a){return a.replace(/[༡༢༣༤༥༦༧༨༩༠]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiemParse:/མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,isPM:function(a){return/^(ཉིན་གུང|དགོང་དག|མཚན་མོ)$/.test(a)},meridiem:function(a){return 4>a?"མཚན་མོ":10>a?"ཞོགས་ཀས":17>a?"ཉིན་གུང":20>a?"དགོང་དག":"མཚན་མོ"},week:{dow:0,doy:6}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c){var d={mm:"munutenn",MM:"miz",dd:"devezh"};return a+" "+e(d[c],a)}function c(a){switch(d(a)){case 1:case 3:case 4:case 5:case 9:return a+" bloaz";default:return a+" vloaz"}}function d(a){return a>9?d(a%10):a}function e(a,b){return 2===b?f(a):a}function f(a){var b={m:"v",b:"v",d:"z"};return void 0===b[a.charAt(0)]?a:b[a.charAt(0)]+a.substring(1)}return a.defineLocale("br",{months:"Genver_C'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc'her_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),longDateFormat:{LT:"h[e]mm A",LTS:"h[e]mm:ss A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY LT",LLLL:"dddd, D [a viz] MMMM YYYY LT"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc'hoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec'h da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s 'zo",s:"un nebeud segondennoù",m:"ur vunutenn",mm:b,h:"un eur",hh:"%d eur",d:"un devezh",dd:b,M:"ur miz",MM:b,y:"ur bloaz",yy:c},ordinalParse:/\d{1,2}(añ|vet)/,ordinal:function(a){var b=1===a?"añ":"vet";return a+b},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"jedna minuta":"jedne minute";case"mm":return d+=1===a?"minuta":2===a||3===a||4===a?"minute":"minuta";case"h":return b?"jedan sat":"jednog sata";case"hh":return d+=1===a?"sat":2===a||3===a||4===a?"sata":"sati";case"dd":return d+=1===a?"dan":"dana";case"MM":return d+=1===a?"mjesec":2===a||3===a||4===a?"mjeseca":"mjeseci";case"yy":return d+=1===a?"godina":2===a||3===a||4===a?"godine":"godina"}}return a.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:b,mm:b,h:b,hh:b,d:"dan",dd:b,M:"mjesec",MM:b,y:"godinu",yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("ca",{months:"gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),monthsShort:"gen._febr._mar._abr._mai._jun._jul._ag._set._oct._nov._des.".split("_"),weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"Dg_Dl_Dt_Dc_Dj_Dv_Ds".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[demà a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fa %s",s:"uns segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},ordinalParse:/\d{1,2}(r|n|t|è|a)/,ordinal:function(a,b){var c=1===a?"r":2===a?"n":3===a?"r":4===a?"t":"è";return("w"===b||"W"===b)&&(c="a"),a+c},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a){return a>1&&5>a&&1!==~~(a/10)}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"pár sekund":"pár sekundami";case"m":return c?"minuta":e?"minutu":"minutou";case"mm":return c||e?f+(b(a)?"minuty":"minut"):f+"minutami";break;case"h":return c?"hodina":e?"hodinu":"hodinou";case"hh":return c||e?f+(b(a)?"hodiny":"hodin"):f+"hodinami";break;case"d":return c||e?"den":"dnem";case"dd":return c||e?f+(b(a)?"dny":"dní"):f+"dny";break;case"M":return c||e?"měsíc":"měsícem";case"MM":return c||e?f+(b(a)?"měsíce":"měsíců"):f+"měsíci";break;case"y":return c||e?"rok":"rokem";case"yy":return c||e?f+(b(a)?"roky":"let"):f+"lety"}}var d="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),e="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_");return a.defineLocale("cs",{months:d,monthsShort:e,monthsParse:function(a,b){var c,d=[];for(c=0;12>c;c++)d[c]=new RegExp("^"+a[c]+"$|^"+b[c]+"$","i");return d}(d,e),weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("cv",{months:"кăрлач_нарăс_пуш_ака_май_çĕртме_утă_çурла_авăн_юпа_чӳк_раштав".split("_"),monthsShort:"кăр_нар_пуш_ака_май_çĕр_утă_çур_ав_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кĕçнерникун_эрнекун_шăматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кĕç_эрн_шăм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кç_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD-MM-YYYY",LL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ]",LLL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT",LLLL:"dddd, YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ĕнер] LT [сехетре]",nextWeek:"[Çитес] dddd LT [сехетре]",lastWeek:"[Иртнĕ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(a){var b=/сехет$/i.exec(a)?"рен":/çул$/i.exec(a)?"тан":"ран";return a+b},past:"%s каялла",s:"пĕр-ик çеккунт",m:"пĕр минут",mm:"%d минут",h:"пĕр сехет",hh:"%d сехет",d:"пĕр кун",dd:"%d кун",M:"пĕр уйăх",MM:"%d уйăх",y:"пĕр çул",yy:"%d çул"},ordinalParse:/\d{1,2}-мĕш/,ordinal:"%d-мĕш",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn ôl",s:"ychydig eiliadau",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},ordinalParse:/\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,ordinal:function(a){var b=a,c="",d=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"];return b>20?c=40===b||50===b||60===b||80===b||100===b?"fed":"ain":b>0&&(c=d[b]),a+c},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd [d.] D. MMMM YYYY LT"},calendar:{sameDay:"[I dag kl.] LT",nextDay:"[I morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[I går kl.] LT",lastWeek:"[sidste] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c){var d={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[a+" Tage",a+" Tagen"],M:["ein Monat","einem Monat"],MM:[a+" Monate",a+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[a+" Jahre",a+" Jahren"]};return b?d[c][0]:d[c][1]}return a.defineLocale("de-at",{months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Heute um] LT [Uhr]",sameElse:"L",nextDay:"[Morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[Gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:b,mm:"%d Minuten",h:b,hh:"%d Stunden",d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c){var d={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[a+" Tage",a+" Tagen"],M:["ein Monat","einem Monat"],MM:[a+" Monate",a+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[a+" Jahre",a+" Jahren"]};return b?d[c][0]:d[c][1]}return a.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Heute um] LT [Uhr]",sameElse:"L",nextDay:"[Morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[Gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:b,mm:"%d Minuten",h:b,hh:"%d Stunden",d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(a,b){return/D/.test(b.substring(0,b.indexOf("MMMM")))?this._monthsGenitiveEl[a.month()]:this._monthsNominativeEl[a.month()]},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(a,b,c){return a>11?c?"μμ":"ΜΜ":c?"πμ":"ΠΜ"},isPM:function(a){return"μ"===(a+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendarEl:{sameDay:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(a,b){var c=this._calendarEl[a],d=b&&b.hours();return"function"==typeof c&&(c=c.apply(b)),c.replace("{}",d%12===1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"λίγα δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},ordinalParse:/\d{1,2}η/,ordinal:"%dη",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th"; +return a+c},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"D MMMM, YYYY",LLL:"D MMMM, YYYY LT",LLLL:"dddd, D MMMM, YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec".split("_"),weekdays:"Dimanĉo_Lundo_Mardo_Merkredo_Ĵaŭdo_Vendredo_Sabato".split("_"),weekdaysShort:"Dim_Lun_Mard_Merk_Ĵaŭ_Ven_Sab".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Ĵa_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"YYYY-MM-DD",LL:"D[-an de] MMMM, YYYY",LLL:"D[-an de] MMMM, YYYY LT",LLLL:"dddd, [la] D[-an de] MMMM, YYYY LT"},meridiemParse:/[ap]\.t\.m/i,isPM:function(a){return"p"===a.charAt(0).toLowerCase()},meridiem:function(a,b,c){return a>11?c?"p.t.m.":"P.T.M.":c?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd [je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"je %s",past:"antaŭ %s",s:"sekundoj",m:"minuto",mm:"%d minutoj",h:"horo",hh:"%d horoj",d:"tago",dd:"%d tagoj",M:"monato",MM:"%d monatoj",y:"jaro",yy:"%d jaroj"},ordinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),c="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_");return a.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(a,d){return/-MMM-/.test(d)?c[a.month()]:b[a.month()]},weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"Do_Lu_Ma_Mi_Ju_Vi_Sá".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c,d){var e={s:["mõne sekundi","mõni sekund","paar sekundit"],m:["ühe minuti","üks minut"],mm:[a+" minuti",a+" minutit"],h:["ühe tunni","tund aega","üks tund"],hh:[a+" tunni",a+" tundi"],d:["ühe päeva","üks päev"],M:["kuu aja","kuu aega","üks kuu"],MM:[a+" kuu",a+" kuud"],y:["ühe aasta","aasta","üks aasta"],yy:[a+" aasta",a+" aastat"]};return b?e[c][2]?e[c][2]:e[c][1]:d?e[c][0]:e[c][1]}return a.defineLocale("et",{months:"jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Täna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:"%d päeva",M:b,MM:b,y:b,yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] LT",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] LT",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] LT",llll:"ddd, YYYY[ko] MMM D[a] LT"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},c={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"};return a.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},meridiemParse:/قبل از ظهر|بعد از ظهر/,isPM:function(a){return/بعد از ظهر/.test(a)},meridiem:function(a){return 12>a?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چندین ثانیه",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(a){return a.replace(/[۰-۹]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},ordinalParse:/\d{1,2}م/,ordinal:"%dم",week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,d,e){var f="";switch(d){case"s":return e?"muutaman sekunnin":"muutama sekunti";case"m":return e?"minuutin":"minuutti";case"mm":f=e?"minuutin":"minuuttia";break;case"h":return e?"tunnin":"tunti";case"hh":f=e?"tunnin":"tuntia";break;case"d":return e?"päivän":"päivä";case"dd":f=e?"päivän":"päivää";break;case"M":return e?"kuukauden":"kuukausi";case"MM":f=e?"kuukauden":"kuukautta";break;case"y":return e?"vuoden":"vuosi";case"yy":f=e?"vuoden":"vuotta"}return f=c(a,e)+" "+f}function c(a,b){return 10>a?b?e[a]:d[a]:a}var d="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),e=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",d[7],d[8],d[9]];return a.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] LT",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] LT",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] LT",llll:"ddd, Do MMM YYYY, [klo] LT"},calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("fo",{months:"januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D. MMMM, YYYY LT"},calendar:{sameDay:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",m:"ein minutt",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaði",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("fr-ca",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinalParse:/\d{1,2}(er|)/,ordinal:function(a){return a+(1===a?"er":"")}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinalParse:/\d{1,2}(er|)/,ordinal:function(a){return a+(1===a?"er":"")},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),c="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_");return a.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(a,d){return/-MMM-/.test(d)?c[a.month()]:b[a.month()]},weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[ôfrûne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",m:"ien minút",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(a){return a+(1===a||8===a||a>=20?"ste":"de")},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("gl",{months:"Xaneiro_Febreiro_Marzo_Abril_Maio_Xuño_Xullo_Agosto_Setembro_Outubro_Novembro_Decembro".split("_"),monthsShort:"Xan._Feb._Mar._Abr._Mai._Xuñ._Xul._Ago._Set._Out._Nov._Dec.".split("_"),weekdays:"Domingo_Luns_Martes_Mércores_Xoves_Venres_Sábado".split("_"),weekdaysShort:"Dom._Lun._Mar._Mér._Xov._Ven._Sáb.".split("_"),weekdaysMin:"Do_Lu_Ma_Mé_Xo_Ve_Sá".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(a){return"uns segundos"===a?"nuns segundos":"en "+a},past:"hai %s",s:"uns segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("he",{months:"ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),monthsShort:"ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),weekdays:"ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),weekdaysShort:"א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),weekdaysMin:"א_ב_ג_ד_ה_ו_ש".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D [ב]MMMM YYYY",LLL:"D [ב]MMMM YYYY LT",LLLL:"dddd, D [ב]MMMM YYYY LT",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY LT",llll:"ddd, D MMM YYYY LT"},calendar:{sameDay:"[היום ב־]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[אתמול ב־]LT",lastWeek:"[ביום] dddd [האחרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"לפני %s",s:"מספר שניות",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(a){return 2===a?"שעתיים":a+" שעות"},d:"יום",dd:function(a){return 2===a?"יומיים":a+" ימים"},M:"חודש",MM:function(a){return 2===a?"חודשיים":a+" חודשים"},y:"שנה",yy:function(a){return 2===a?"שנתיים":a%10===0&&10!==a?a+" שנה":a+" שנים"}}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("hi",{months:"जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),monthsShort:"जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),weekdays:"रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm बजे",LTS:"A h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कुछ ही क्षण",m:"एक मिनट",mm:"%d मिनट",h:"एक घंटा",hh:"%d घंटे",d:"एक दिन",dd:"%d दिन",M:"एक महीने",MM:"%d महीने",y:"एक वर्ष",yy:"%d वर्ष"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiemParse:/रात|सुबह|दोपहर|शाम/,meridiemHour:function(a,b){return 12===a&&(a=0),"रात"===b?4>a?a:a+12:"सुबह"===b?a:"दोपहर"===b?a>=10?a:a+12:"शाम"===b?a+12:void 0},meridiem:function(a){return 4>a?"रात":10>a?"सुबह":17>a?"दोपहर":20>a?"शाम":"रात"},week:{dow:0,doy:6}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"jedna minuta":"jedne minute";case"mm":return d+=1===a?"minuta":2===a||3===a||4===a?"minute":"minuta";case"h":return b?"jedan sat":"jednog sata";case"hh":return d+=1===a?"sat":2===a||3===a||4===a?"sata":"sati";case"dd":return d+=1===a?"dan":"dana";case"MM":return d+=1===a?"mjesec":2===a||3===a||4===a?"mjeseca":"mjeseci";case"yy":return d+=1===a?"godina":2===a||3===a||4===a?"godine":"godina"}}return a.defineLocale("hr",{months:"sječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_"),monthsShort:"sje._vel._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:b,mm:b,h:b,hh:b,d:"dan",dd:b,M:"mjesec",MM:b,y:"godinu",yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c,d){var e=a;switch(c){case"s":return d||b?"néhány másodperc":"néhány másodperce";case"m":return"egy"+(d||b?" perc":" perce");case"mm":return e+(d||b?" perc":" perce");case"h":return"egy"+(d||b?" óra":" órája");case"hh":return e+(d||b?" óra":" órája");case"d":return"egy"+(d||b?" nap":" napja");case"dd":return e+(d||b?" nap":" napja");case"M":return"egy"+(d||b?" hónap":" hónapja");case"MM":return e+(d||b?" hónap":" hónapja");case"y":return"egy"+(d||b?" év":" éve");case"yy":return e+(d||b?" év":" éve")}return""}function c(a){return(a?"":"[múlt] ")+"["+d[this.day()]+"] LT[-kor]"}var d="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");return a.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec".split("_"),weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D., LT",LLLL:"YYYY. MMMM D., dddd LT"},meridiemParse:/de|du/i,isPM:function(a){return"u"===a.charAt(1).toLowerCase()},meridiem:function(a,b,c){return 12>a?c===!0?"de":"DE":c===!0?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return c.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return c.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b){var c={nominative:"հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_"),accusative:"հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function c(a){var b="հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_");return b[a.month()]}function d(a){var b="կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_");return b[a.day()]}return a.defineLocale("hy-am",{months:b,monthsShort:c,weekdays:d,weekdaysShort:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),weekdaysMin:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY թ.",LLL:"D MMMM YYYY թ., LT",LLLL:"dddd, D MMMM YYYY թ., LT"},calendar:{sameDay:"[այսօր] LT",nextDay:"[վաղը] LT",lastDay:"[երեկ] LT",nextWeek:function(){return"dddd [օրը ժամը] LT"},lastWeek:function(){return"[անցած] dddd [օրը ժամը] LT"},sameElse:"L"},relativeTime:{future:"%s հետո",past:"%s առաջ",s:"մի քանի վայրկյան",m:"րոպե",mm:"%d րոպե",h:"ժամ",hh:"%d ժամ",d:"օր",dd:"%d օր",M:"ամիս",MM:"%d ամիս",y:"տարի",yy:"%d տարի"},meridiemParse:/գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,isPM:function(a){return/^(ցերեկվա|երեկոյան)$/.test(a)},meridiem:function(a){return 4>a?"գիշերվա":12>a?"առավոտվա":17>a?"ցերեկվա":"երեկոյան"},ordinalParse:/\d{1,2}|\d{1,2}-(ին|րդ)/,ordinal:function(a,b){switch(b){case"DDD":case"w":case"W":case"DDDo":return 1===a?a+"-ին":a+"-րդ";default:return a}},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"LT.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(a,b){return 12===a&&(a=0),"pagi"===b?a:"siang"===b?a>=11?a:a+12:"sore"===b||"malam"===b?a+12:void 0},meridiem:function(a){return 11>a?"pagi":15>a?"siang":19>a?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a){return a%100===11?!0:a%10===1?!1:!0}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"nokkrar sekúndur":"nokkrum sekúndum";case"m":return c?"mínúta":"mínútu";case"mm":return b(a)?f+(c||e?"mínútur":"mínútum"):c?f+"mínúta":f+"mínútu";case"hh":return b(a)?f+(c||e?"klukkustundir":"klukkustundum"):f+"klukkustund";case"d":return c?"dagur":e?"dag":"degi";case"dd":return b(a)?c?f+"dagar":f+(e?"daga":"dögum"):c?f+"dagur":f+(e?"dag":"degi");case"M":return c?"mánuður":e?"mánuð":"mánuði";case"MM":return b(a)?c?f+"mánuðir":f+(e?"mánuði":"mánuðum"):c?f+"mánuður":f+(e?"mánuð":"mánuði");case"y":return c||e?"ár":"ári";case"yy":return b(a)?f+(c||e?"ár":"árum"):f+(c||e?"ár":"ári")}}return a.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd, D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:c,m:c,mm:c,h:"klukkustund",hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"Domenica_Lunedì_Martedì_Mercoledì_Giovedì_Venerdì_Sabato".split("_"),weekdaysShort:"Dom_Lun_Mar_Mer_Gio_Ven_Sab".split("_"),weekdaysMin:"D_L_Ma_Me_G_V_S".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(a){return(/^[0-9].+$/.test(a)?"tra":"in")+" "+a},past:"%s fa",s:"alcuni secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("ja",{months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"Ah時m分",LTS:"LTs秒",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日LT",LLLL:"YYYY年M月D日LT dddd"},meridiemParse:/午前|午後/i,isPM:function(a){return"午後"===a},meridiem:function(a){return 12>a?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:"[来週]dddd LT",lastDay:"[昨日] LT",lastWeek:"[前週]dddd LT",sameElse:"L"},relativeTime:{future:"%s後",past:"%s前",s:"数秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b){var c={nominative:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),accusative:"იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს".split("_")},d=/D[oD] *MMMM?/.test(b)?"accusative":"nominative"; +return c[d][a.month()]}function c(a,b){var c={nominative:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),accusative:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_")},d=/(წინა|შემდეგ)/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("ka",{months:b,monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:c,weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(a){return/(წამი|წუთი|საათი|წელი)/.test(a)?a.replace(/ი$/,"ში"):a+"ში"},past:function(a){return/(წამი|წუთი|საათი|დღე|თვე)/.test(a)?a.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(a)?a.replace(/წელი$/,"წლის წინ"):void 0},s:"რამდენიმე წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},ordinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal:function(a){return 0===a?a:1===a?a+"-ლი":20>a||100>=a&&a%20===0||a%100===0?"მე-"+a:a+"-ე"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("km",{months:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),monthsShort:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),weekdays:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysShort:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysMin:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[ថ្ងៃនៈ ម៉ោង] LT",nextDay:"[ស្អែក ម៉ោង] LT",nextWeek:"dddd [ម៉ោង] LT",lastDay:"[ម្សិលមិញ ម៉ោង] LT",lastWeek:"dddd [សប្តាហ៍មុន] [ម៉ោង] LT",sameElse:"L"},relativeTime:{future:"%sទៀត",past:"%sមុន",s:"ប៉ុន្មានវិនាទី",m:"មួយនាទី",mm:"%d នាទី",h:"មួយម៉ោង",hh:"%d ម៉ោង",d:"មួយថ្ងៃ",dd:"%d ថ្ងៃ",M:"មួយខែ",MM:"%d ខែ",y:"មួយឆ្នាំ",yy:"%d ឆ្នាំ"},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h시 m분",LTS:"A h시 m분 s초",L:"YYYY.MM.DD",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 LT",LLLL:"YYYY년 MMMM D일 dddd LT"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇초",ss:"%d초",m:"일분",mm:"%d분",h:"한시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한달",MM:"%d달",y:"일년",yy:"%d년"},ordinalParse:/\d{1,2}일/,ordinal:"%d일",meridiemParse:/오전|오후/,isPM:function(a){return"오후"===a},meridiem:function(a){return 12>a?"오전":"오후"}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c){var d={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return b?d[c][0]:d[c][1]}function c(a){var b=a.substr(0,a.indexOf(" "));return e(b)?"a "+a:"an "+a}function d(a){var b=a.substr(0,a.indexOf(" "));return e(b)?"viru "+a:"virun "+a}function e(a){if(a=parseInt(a,10),isNaN(a))return!1;if(0>a)return!0;if(10>a)return a>=4&&7>=a?!0:!1;if(100>a){var b=a%10,c=a/10;return e(0===b?c:b)}if(1e4>a){for(;a>=10;)a/=10;return e(a)}return a/=1e3,e(a)}return a.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_Do_Fr_Sa".split("_"),longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gëschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:c,past:d,s:"e puer Sekonnen",m:b,mm:"%d Minutten",h:b,hh:"%d Stonnen",d:b,dd:"%d Deeg",M:b,MM:"%d Méint",y:b,yy:"%d Joer"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c,d){return b?"kelios sekundės":d?"kelių sekundžių":"kelias sekundes"}function c(a,b,c,d){return b?e(c)[0]:d?e(c)[1]:e(c)[2]}function d(a){return a%10===0||a>10&&20>a}function e(a){return h[a].split("_")}function f(a,b,f,g){var h=a+" ";return 1===a?h+c(a,b,f[0],g):b?h+(d(a)?e(f)[1]:e(f)[0]):g?h+e(f)[1]:h+(d(a)?e(f)[1]:e(f)[2])}function g(a,b){var c=-1===b.indexOf("dddd HH:mm"),d=i[a.day()];return c?d:d.substring(0,d.length-2)+"į"}var h={m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"},i="sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_");return a.defineLocale("lt",{months:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:g,weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], LT [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, LT [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], LT [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, LT [val.]"},calendar:{sameDay:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:b,m:c,mm:f,h:c,hh:f,d:c,dd:f,M:c,MM:f,y:c,yy:f},ordinalParse:/\d{1,2}-oji/,ordinal:function(a){return a+"-oji"},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c){var d=a.split("_");return c?b%10===1&&11!==b?d[2]:d[3]:b%10===1&&11!==b?d[0]:d[1]}function c(a,c,e){return a+" "+b(d[e],a,c)}var d={mm:"minūti_minūtes_minūte_minūtes",hh:"stundu_stundas_stunda_stundas",dd:"dienu_dienas_diena_dienas",MM:"mēnesi_mēnešus_mēnesis_mēneši",yy:"gadu_gadus_gads_gadi"};return a.defineLocale("lv",{months:"janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),weekdays:"svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, LT",LLLL:"YYYY. [gada] D. MMMM, dddd, LT"},calendar:{sameDay:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pagājušā] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"%s vēlāk",past:"%s agrāk",s:"dažas sekundes",m:"minūti",mm:c,h:"stundu",hh:c,d:"dienu",dd:c,M:"mēnesi",MM:c,y:"gadu",yy:c},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Во изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Во изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"после %s",past:"пред %s",s:"неколку секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",M:"месец",MM:"%d месеци",y:"година",yy:"%d години"},ordinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(a){var b=a%10,c=a%100;return 0===a?a+"-ев":0===c?a+"-ен":c>10&&20>c?a+"-ти":1===b?a+"-ви":2===b?a+"-ри":7===b||8===b?a+"-ми":a+"-ти"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".split("_"),longDateFormat:{LT:"A h:mm -നു",LTS:"A h:mm:ss -നു",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiemParse:/രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,isPM:function(a){return/^(ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി)$/.test(a)},meridiem:function(a){return 4>a?"രാത്രി":12>a?"രാവിലെ":17>a?"ഉച്ച കഴിഞ്ഞ്":20>a?"വൈകുന്നേരം":"രാത്രി"}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm वाजता",LTS:"A h:mm:ss वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%s नंतर",past:"%s पूर्वी",s:"सेकंद",m:"एक मिनिट",mm:"%d मिनिटे",h:"एक तास",hh:"%d तास",d:"एक दिवस",dd:"%d दिवस",M:"एक महिना",MM:"%d महिने",y:"एक वर्ष",yy:"%d वर्षे"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiemParse:/रात्री|सकाळी|दुपारी|सायंकाळी/,meridiemHour:function(a,b){return 12===a&&(a=0),"रात्री"===b?4>a?a:a+12:"सकाळी"===b?a:"दुपारी"===b?a>=10?a:a+12:"सायंकाळी"===b?a+12:void 0},meridiem:function(a){return 4>a?"रात्री":10>a?"सकाळी":17>a?"दुपारी":20>a?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"LT.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(a,b){return 12===a&&(a=0),"pagi"===b?a:"tengahari"===b?a>=11?a:a+12:"petang"===b||"malam"===b?a+12:void 0},meridiem:function(a){return 11>a?"pagi":15>a?"tengahari":19>a?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},c={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"};return a.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_င်္ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_င်္ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(a){return a.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tirs_ons_tors_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"H.mm",LTS:"LT.ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s siden",s:"noen sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en måned",MM:"%d måneder",y:"ett år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आइ._सो._मङ्_बु._बि._शु._श.".split("_"),longDateFormat:{LT:"Aको h:mm बजे",LTS:"Aको h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiemParse:/राती|बिहान|दिउँसो|बेलुका|साँझ|राती/,meridiemHour:function(a,b){return 12===a&&(a=0),"राती"===b?3>a?a:a+12:"बिहान"===b?a:"दिउँसो"===b?a>=10?a:a+12:"बेलुका"===b||"साँझ"===b?a+12:void 0},meridiem:function(a){return 3>a?"राती":10>a?"बिहान":15>a?"दिउँसो":18>a?"बेलुका":20>a?"साँझ":"राती"},calendar:{sameDay:"[आज] LT",nextDay:"[भोली] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडी",s:"केही समय",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),c="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_");return a.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(a,d){return/-MMM-/.test(d)?c[a.month()]:b[a.month()]},weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"Zo_Ma_Di_Wo_Do_Vr_Za".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(a){return a+(1===a||8===a||a>=20?"ste":"de")},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"sun_mån_tys_ons_tor_fre_lau".split("_"),weekdaysMin:"su_må_ty_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I går klokka] LT",lastWeek:"[Føregåande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s sidan",s:"nokre sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",M:"ein månad",MM:"%d månader",y:"eit år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a){return 5>a%10&&a%10>1&&~~(a/10)%10!==1}function c(a,c,d){var e=a+" ";switch(d){case"m":return c?"minuta":"minutę";case"mm":return e+(b(a)?"minuty":"minut");case"h":return c?"godzina":"godzinę";case"hh":return e+(b(a)?"godziny":"godzin");case"MM":return e+(b(a)?"miesiące":"miesięcy");case"yy":return e+(b(a)?"lata":"lat")}}var d="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),e="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_");return a.defineLocale("pl",{months:function(a,b){return/D MMMM/.test(b)?e[a.month()]:d[a.month()]},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"nie_pon_wt_śr_czw_pt_sb".split("_"),weekdaysMin:"N_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek:"[W] dddd [o] LT",lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",m:c,mm:c,h:c,hh:c,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:c,y:"rok",yy:c},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("pt-br",{months:"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_sáb".split("_"),weekdaysMin:"dom_2ª_3ª_4ª_5ª_6ª_sáb".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [às] LT",LLLL:"dddd, D [de] MMMM [de] YYYY [às] LT"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº"})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("pt",{months:"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_sáb".split("_"),weekdaysMin:"dom_2ª_3ª_4ª_5ª_6ª_sáb".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c){var d={mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"},e=" ";return(a%100>=20||a>=100&&a%100===0)&&(e=" de "),a+e+d[c]}return a.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),weekdays:"duminică_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_Sâ".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[mâine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",m:"un minut",mm:b,h:"o oră",hh:b,d:"o zi",dd:b,M:"o lună",MM:b,y:"un an",yy:b},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:c?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",MM:"месяц_месяца_месяцев",yy:"год_года_лет"};return"m"===d?c?"минута":"минуту":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),accusative:"января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_"),accusative:"янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function f(a,b){var c={nominative:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),accusative:"воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу".split("_")},d=/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("ru",{months:d,monthsShort:e,weekdays:f,weekdaysShort:"вс_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),monthsParse:[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[й|я]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i],longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., LT",LLLL:"dddd, D MMMM YYYY г., LT"},calendar:{sameDay:"[Сегодня в] LT",nextDay:"[Завтра в] LT",lastDay:"[Вчера в] LT",nextWeek:function(){return 2===this.day()?"[Во] dddd [в] LT":"[В] dddd [в] LT"},lastWeek:function(a){if(a.week()===this.week())return 2===this.day()?"[Во] dddd [в] LT":"[В] dddd [в] LT";switch(this.day()){case 0:return"[В прошлое] dddd [в] LT";case 1:case 2:case 4:return"[В прошлый] dddd [в] LT";case 3:case 5:case 6:return"[В прошлую] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",m:c,mm:c,h:"час",hh:c,d:"день",dd:c,M:"месяц",MM:c,y:"год",yy:c},meridiemParse:/ночи|утра|дня|вечера/i,isPM:function(a){return/^(дня|вечера)$/.test(a)},meridiem:function(a){return 4>a?"ночи":12>a?"утра":17>a?"дня":"вечера"},ordinalParse:/\d{1,2}-(й|го|я)/,ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":return a+"-й";case"D":return a+"-го";case"w":case"W":return a+"-я";default:return a}},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a){return a>1&&5>a}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"pár sekúnd":"pár sekundami";case"m":return c?"minúta":e?"minútu":"minútou";case"mm":return c||e?f+(b(a)?"minúty":"minút"):f+"minútami";break;case"h":return c?"hodina":e?"hodinu":"hodinou";case"hh":return c||e?f+(b(a)?"hodiny":"hodín"):f+"hodinami";break;case"d":return c||e?"deň":"dňom";case"dd":return c||e?f+(b(a)?"dni":"dní"):f+"dňami";break;case"M":return c||e?"mesiac":"mesiacom";case"MM":return c||e?f+(b(a)?"mesiace":"mesiacov"):f+"mesiacmi";break;case"y":return c||e?"rok":"rokom";case"yy":return c||e?f+(b(a)?"roky":"rokov"):f+"rokmi"}}var d="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),e="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_");return a.defineLocale("sk",{months:d,monthsShort:e,monthsParse:function(a,b){var c,d=[];for(c=0;12>c;c++)d[c]=new RegExp("^"+a[c]+"$|^"+b[c]+"$","i");return d}(d,e),weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"ena minuta":"eno minuto";case"mm":return d+=1===a?"minuta":2===a?"minuti":3===a||4===a?"minute":"minut";case"h":return b?"ena ura":"eno uro";case"hh":return d+=1===a?"ura":2===a?"uri":3===a||4===a?"ure":"ur";case"dd":return d+=1===a?"dan":"dni"; +case"MM":return d+=1===a?"mesec":2===a?"meseca":3===a||4===a?"mesece":"mesecev";case"yy":return d+=1===a?"leto":2===a?"leti":3===a||4===a?"leta":"let"}}return a.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),weekdays:"nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_pe_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[včeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[prejšnja] dddd [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"%s nazaj",s:"nekaj sekund",m:b,mm:b,h:b,hh:b,d:"en dan",dd:b,M:"en mesec",MM:b,y:"eno leto",yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),weekdays:"E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),weekdaysShort:"Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_Më_E_P_Sh".split("_"),meridiemParse:/PD|MD/,isPM:function(a){return"M"===a.charAt(0)},meridiem:function(a){return 12>a?"PD":"MD"},longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Sot në] LT",nextDay:"[Nesër në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s më parë",s:"disa sekonda",m:"një minutë",mm:"%d minuta",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={words:{m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(a,b){return 1===a?b[0]:a>=2&&4>=a?b[1]:b[2]},translate:function(a,c,d){var e=b.words[d];return 1===d.length?c?e[0]:e[1]:a+" "+b.correctGrammaticalCase(a,e)}};return a.defineLocale("sr-cyrl",{months:["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар"],monthsShort:["јан.","феб.","мар.","апр.","мај","јун","јул","авг.","сеп.","окт.","нов.","дец."],weekdays:["недеља","понедељак","уторак","среда","четвртак","петак","субота"],weekdaysShort:["нед.","пон.","уто.","сре.","чет.","пет.","суб."],weekdaysMin:["не","по","ут","ср","че","пе","су"],longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){var a=["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"];return a[this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",m:b.translate,mm:b.translate,h:b.translate,hh:b.translate,d:"дан",dd:b.translate,M:"месец",MM:b.translate,y:"годину",yy:b.translate},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={words:{m:["jedan minut","jedne minute"],mm:["minut","minute","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mesec","meseca","meseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(a,b){return 1===a?b[0]:a>=2&&4>=a?b[1]:b[2]},translate:function(a,c,d){var e=b.words[d];return 1===d.length?c?e[0]:e[1]:a+" "+b.correctGrammaticalCase(a,e)}};return a.defineLocale("sr",{months:["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar"],monthsShort:["jan.","feb.","mar.","apr.","maj","jun","jul","avg.","sep.","okt.","nov.","dec."],weekdays:["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],weekdaysShort:["ned.","pon.","uto.","sre.","čet.","pet.","sub."],weekdaysMin:["ne","po","ut","sr","če","pe","su"],longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){var a=["[prošle] [nedelje] [u] LT","[prošlog] [ponedeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"];return a[this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",m:b.translate,mm:b.translate,h:b.translate,hh:b.translate,d:"dan",dd:b.translate,M:"mesec",MM:b.translate,y:"godinu",yy:b.translate},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"dddd LT",lastWeek:"[Förra] dddd[en] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},ordinalParse:/\d{1,2}(e|a)/,ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"e":1===b?"a":2===b?"a":"e";return a+c},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},ordinalParse:/\d{1,2}வது/,ordinal:function(a){return a+"வது"},meridiemParse:/யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,meridiem:function(a){return 2>a?" யாமம்":6>a?" வைகறை":10>a?" காலை":14>a?" நண்பகல்":18>a?" எற்பாடு":22>a?" மாலை":" யாமம்"},meridiemHour:function(a,b){return 12===a&&(a=0),"யாமம்"===b?2>a?a:a+12:"வைகறை"===b||"காலை"===b?a:"நண்பகல்"===b&&a>=10?a:a+12},week:{dow:0,doy:6}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"มกรา_กุมภา_มีนา_เมษา_พฤษภา_มิถุนา_กรกฎา_สิงหา_กันยา_ตุลา_พฤศจิกา_ธันวา".split("_"),weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),longDateFormat:{LT:"H นาฬิกา m นาที",LTS:"LT s วินาที",L:"YYYY/MM/DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา LT",LLLL:"วันddddที่ D MMMM YYYY เวลา LT"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM:function(a){return"หลังเที่ยง"===a},meridiem:function(a){return 12>a?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM DD, YYYY LT"},calendar:{sameDay:"[Ngayon sa] LT",nextDay:"[Bukas sa] LT",nextWeek:"dddd [sa] LT",lastDay:"[Kahapon sa] LT",lastWeek:"dddd [huling linggo] LT",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},ordinalParse:/\d{1,2}/,ordinal:function(a){return a},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){var b={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"};return a.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[haftaya] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen hafta] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinalParse:/\d{1,2}'(inci|nci|üncü|ncı|uncu|ıncı)/,ordinal:function(a){if(0===a)return a+"'ıncı";var c=a%10,d=a%100-c,e=a>=100?100:null;return a+(b[c]||b[d]||b[e])},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("tzm-latn",{months:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",m:"minuḍ",mm:"%d minuḍ",h:"saɛa",hh:"%d tassaɛin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("tzm",{months:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),monthsShort:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),weekdays:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysMin:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[ⴰⵙⴷⵅ ⴴ] LT",nextDay:"[ⴰⵙⴽⴰ ⴴ] LT",nextWeek:"dddd [ⴴ] LT",lastDay:"[ⴰⵚⴰⵏⵜ ⴴ] LT",lastWeek:"dddd [ⴴ] LT",sameElse:"L"},relativeTime:{future:"ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",past:"ⵢⴰⵏ %s",s:"ⵉⵎⵉⴽ",m:"ⵎⵉⵏⵓⴺ",mm:"%d ⵎⵉⵏⵓⴺ",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉⵏ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰⵏ",M:"ⴰⵢoⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔⵏ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙⵏ"},week:{dow:6,doy:12}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:"хвилина_хвилини_хвилин",hh:"година_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"};return"m"===d?c?"хвилина":"хвилину":"h"===d?c?"година":"годину":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_"),accusative:"січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_")},d=/D[oD]? *MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),accusative:"неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),genitive:"неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")},d=/(\[[ВвУу]\]) ?dddd/.test(b)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(b)?"genitive":"nominative";return c[d][a.day()]}function f(a){return function(){return a+"о"+(11===this.hours()?"б":"")+"] LT"}}return a.defineLocale("uk",{months:d,monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekdays:e,weekdaysShort:"нд_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY р.",LLL:"D MMMM YYYY р., LT",LLLL:"dddd, D MMMM YYYY р., LT"},calendar:{sameDay:f("[Сьогодні "),nextDay:f("[Завтра "),lastDay:f("[Вчора "),nextWeek:f("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return f("[Минулої] dddd [").call(this);case 1:case 2:case 4:return f("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",m:c,mm:c,h:"годину",hh:c,d:"день",dd:c,M:"місяць",MM:c,y:"рік",yy:c},meridiemParse:/ночі|ранку|дня|вечора/,isPM:function(a){return/^(дня|вечора)$/.test(a)},meridiem:function(a){return 4>a?"ночі":12>a?"ранку":17>a?"дня":"вечора"},ordinalParse:/\d{1,2}-(й|го)/,ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":case"w":case"W":return a+"-й";case"D":return a+"-го";default:return a}},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("uz",{months:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"D MMMM YYYY, dddd LT"},calendar:{sameDay:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY LT",LLLL:"dddd, D MMMM [năm] YYYY LT",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY LT",llll:"ddd, D MMM YYYY LT"},calendar:{sameDay:"[Hôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần rồi lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},ordinalParse:/\d{1,2}/,ordinal:function(a){return a},week:{dow:1,doy:4}})}),function(a){"function"==typeof define&&define.amd?define(["moment"],a):"object"==typeof exports?module.exports=a(require("../moment")):a(("undefined"!=typeof global?global:this).moment)}(function(a){return a.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"Ah点mm",LTS:"Ah点m分s秒",L:"YYYY-MM-DD",LL:"YYYY年MMMD日",LLL:"YYYY年MMMD日LT",LLLL:"YYYY年MMMD日ddddLT",l:"YYYY-MM-DD",ll:"YYYY年MMMD日",lll:"YYYY年MMMD日LT",llll:"YYYY年MMMD日ddddLT"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(a,b){return 12===a&&(a=0),"凌晨"===b||"早上"===b||"上午"===b?a:"下午"===b||"晚上"===b?a+12:a>=11?a:a+12},meridiem:function(a,b){var c=100*a+b;return 600>c?"凌晨":900>c?"早上":1130>c?"上午":1230>c?"中午":1800>c?"下午":"晚上"},calendar:{sameDay:function(){return 0===this.minutes()?"[今天]Ah[点整]":"[今天]LT"},nextDay:function(){return 0===this.minutes()?"[明天]Ah[点整]":"[明天]LT"},lastDay:function(){return 0===this.minutes()?"[昨天]Ah[点整]":"[昨天]LT"},nextWeek:function(){var b,c;return b=a().startOf("week"),c=this.unix()-b.unix()>=604800?"[下]":"[本]",0===this.minutes()?c+"dddAh点整":c+"dddAh点mm"},lastWeek:function(){var b,c;return b=a().startOf("week"),c=this.unix()=11?a:a+12:"下午"===b||"晚上"===b?a+12:void 0},meridiem:function(a,b){var c=100*a+b;return 900>c?"早上":1130>c?"上午":1230>c?"中午":1800>c?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},ordinalParse:/\d{1,2}(日|月|週)/,ordinal:function(a,b){switch(b){case"d":case"D":case"DDD":return a+"日";case"M":return a+"月";case"w":case"W":return a+"週";default:return a}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",m:"一分鐘",mm:"%d分鐘",h:"一小時",hh:"%d小時",d:"一天",dd:"%d天",M:"一個月",MM:"%d個月",y:"一年",yy:"%d年"}})}); \ No newline at end of file diff --git a/public/app/bower_components/moment/min/moment-with-locales.js b/public/app/bower_components/moment/min/moment-with-locales.js index 23d06ef3..202450ae 100644 --- a/public/app/bower_components/moment/min/moment-with-locales.js +++ b/public/app/bower_components/moment/min/moment-with-locales.js @@ -1,5 +1,5 @@ //! moment.js -//! version : 2.8.3 +//! version : 2.9.0 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT //! momentjs.com @@ -10,9 +10,9 @@ ************************************/ var moment, - VERSION = '2.8.3', + VERSION = '2.9.0', // the global-scope this is NOT the global object in Node.js - globalScope = typeof global !== 'undefined' ? global : this, + globalScope = (typeof global !== 'undefined' && (typeof window === 'undefined' || window === global.window)) ? global : this, oldGlobalMoment, round = Math.round, hasOwnProperty = Object.prototype.hasOwnProperty, @@ -33,7 +33,7 @@ momentProperties = [], // check for nodeJS - hasModule = (typeof module !== 'undefined' && module.exports), + hasModule = (typeof module !== 'undefined' && module && module.exports), // ASP.NET json date format regex aspNetJsonRegex = /^\/?Date\((\-?\d+)/i, @@ -44,8 +44,8 @@ isoDurationRegex = /^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/, // format tokens - formattingTokens = /(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|X|zz?|ZZ?|.)/g, - localFormattingTokens = /(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g, + formattingTokens = /(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|x|X|zz?|ZZ?|.)/g, + localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, // parsing token regexes parseTokenOneOrTwoDigits = /\d\d?/, // 0 - 99 @@ -56,8 +56,8 @@ parseTokenWord = /[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i, // any word (or two) characters or numbers including two/three word month in arabic. parseTokenTimezone = /Z|[\+\-]\d\d:?\d\d/gi, // +00:00 -00:00 +0000 -0000 or Z parseTokenT = /T/i, // T (ISO separator) + parseTokenOffsetMs = /[\+\-]?\d+/, // 1234567890123 parseTokenTimestampMs = /[\+\-]?\d+(\.\d{1,3})?/, // 123456789 123456789.123 - parseTokenOrdinal = /\d{1,2}/, //strict parsing regexes parseTokenOneDigit = /\d/, // 0 - 9 @@ -89,7 +89,7 @@ ['HH', /(T| )\d\d/] ], - // timezone chunker '+10:00' > ['10', '00'] or '-1530' > ['-15', '30'] + // timezone chunker '+10:00' > ['10', '00'] or '-1530' > ['-', '15', '30'] parseTimezoneChunker = /([\+\-]|\d\d)/gi, // getter and setter names @@ -249,7 +249,7 @@ return leftZeroFill(this.milliseconds(), 3); }, Z : function () { - var a = -this.zone(), + var a = this.utcOffset(), b = '+'; if (a < 0) { a = -a; @@ -258,7 +258,7 @@ return b + leftZeroFill(toInt(a / 60), 2) + ':' + leftZeroFill(toInt(a) % 60, 2); }, ZZ : function () { - var a = -this.zone(), + var a = this.utcOffset(), b = '+'; if (a < 0) { a = -a; @@ -272,6 +272,9 @@ zz : function () { return this.zoneName(); }, + x : function () { + return this.valueOf(); + }, X : function () { return this.unix(); }, @@ -282,7 +285,9 @@ deprecations = {}, - lists = ['months', 'monthsShort', 'weekdays', 'weekdaysShort', 'weekdaysMin']; + lists = ['months', 'monthsShort', 'weekdays', 'weekdaysShort', 'weekdaysMin'], + + updateInProgress = false; // Pick the first defined of two or three arguments. dfl comes from // default. @@ -351,6 +356,26 @@ }; } + function monthDiff(a, b) { + // difference in months + var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()), + // b is in (anchor - 1 month, anchor + 1 month) + anchor = a.clone().add(wholeMonthDiff, 'months'), + anchor2, adjust; + + if (b - anchor < 0) { + anchor2 = a.clone().add(wholeMonthDiff - 1, 'months'); + // linear across the month + adjust = (b - anchor) / (anchor - anchor2); + } else { + anchor2 = a.clone().add(wholeMonthDiff + 1, 'months'); + // linear across the month + adjust = (b - anchor) / (anchor2 - anchor); + } + + return -(wholeMonthDiff + adjust); + } + while (ordinalizeTokens.length) { i = ordinalizeTokens.pop(); formatTokenFunctions[i + 'o'] = ordinalizeToken(formatTokenFunctions[i], i); @@ -362,6 +387,31 @@ formatTokenFunctions.DDDD = padToken(formatTokenFunctions.DDD, 3); + function meridiemFixWrap(locale, hour, meridiem) { + var isPm; + + if (meridiem == null) { + // nothing to do + return hour; + } + if (locale.meridiemHour != null) { + return locale.meridiemHour(hour, meridiem); + } else if (locale.isPM != null) { + // Fallback + isPm = locale.isPM(meridiem); + if (isPm && hour < 12) { + hour += 12; + } + if (!isPm && hour === 12) { + hour = 0; + } + return hour; + } else { + // thie is not supposed to happen + return hour; + } + } + /************************************ Constructors ************************************/ @@ -376,6 +426,13 @@ } copyConfig(this, config); this._d = new Date(+config._d); + // Prevent infinite loop in case updateOffset creates new moment + // objects. + if (updateInProgress === false) { + updateInProgress = true; + moment.updateOffset(this); + updateInProgress = false; + } } // Duration Constructor @@ -698,7 +755,10 @@ overflow = m._a[MONTH] < 0 || m._a[MONTH] > 11 ? MONTH : m._a[DATE] < 1 || m._a[DATE] > daysInMonth(m._a[YEAR], m._a[MONTH]) ? DATE : - m._a[HOUR] < 0 || m._a[HOUR] > 23 ? HOUR : + m._a[HOUR] < 0 || m._a[HOUR] > 24 || + (m._a[HOUR] === 24 && (m._a[MINUTE] !== 0 || + m._a[SECOND] !== 0 || + m._a[MILLISECOND] !== 0)) ? HOUR : m._a[MINUTE] < 0 || m._a[MINUTE] > 59 ? MINUTE : m._a[SECOND] < 0 || m._a[SECOND] > 59 ? SECOND : m._a[MILLISECOND] < 0 || m._a[MILLISECOND] > 999 ? MILLISECOND : @@ -725,7 +785,8 @@ if (m._strict) { m._isValid = m._isValid && m._pf.charsLeftOver === 0 && - m._pf.unusedTokens.length === 0; + m._pf.unusedTokens.length === 0 && + m._pf.bigHour === undefined; } } return m._isValid; @@ -775,10 +836,21 @@ return locales[name]; } - // Return a moment from input, that is local/utc/zone equivalent to model. + // Return a moment from input, that is local/utc/utcOffset equivalent to + // model. function makeAs(input, model) { - return model._isUTC ? moment(input).zone(model._offset || 0) : - moment(input).local(); + var res, diff; + if (model._isUTC) { + res = model.clone(); + diff = (moment.isMoment(input) || isDate(input) ? + +input : +moment(input)) - (+res); + // Use low-level api, because this fn is low-level api. + res._d.setTime(+res._d + diff); + moment.updateOffset(res, false); + return res; + } else { + return moment(input).local(); + } } /************************************ @@ -798,6 +870,9 @@ this['_' + i] = prop; } } + // Lenient ordinal parsing accepts just a number in addition to + // number + (possibly) stuff coming from _ordinalParseLenient. + this._ordinalParseLenient = new RegExp(this._ordinalParse.source + '|' + /\d{1,2}/.source); }, _months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'), @@ -810,22 +885,32 @@ return this._monthsShort[m.month()]; }, - monthsParse : function (monthName) { + monthsParse : function (monthName, format, strict) { var i, mom, regex; if (!this._monthsParse) { this._monthsParse = []; + this._longMonthsParse = []; + this._shortMonthsParse = []; } for (i = 0; i < 12; i++) { // make the regex if we don't have it already - if (!this._monthsParse[i]) { - mom = moment.utc([2000, i]); + mom = moment.utc([2000, i]); + if (strict && !this._longMonthsParse[i]) { + this._longMonthsParse[i] = new RegExp('^' + this.months(mom, '').replace('.', '') + '$', 'i'); + this._shortMonthsParse[i] = new RegExp('^' + this.monthsShort(mom, '').replace('.', '') + '$', 'i'); + } + if (!strict && !this._monthsParse[i]) { regex = '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, ''); this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i'); } // test the regex - if (this._monthsParse[i].test(monthName)) { + if (strict && format === 'MMMM' && this._longMonthsParse[i].test(monthName)) { + return i; + } else if (strict && format === 'MMM' && this._shortMonthsParse[i].test(monthName)) { + return i; + } else if (!strict && this._monthsParse[i].test(monthName)) { return i; } } @@ -868,6 +953,7 @@ }, _longDateFormat : { + LTS : 'h:mm:ss A', LT : 'h:mm A', L : 'MM/DD/YYYY', LL : 'MMMM D, YYYY', @@ -900,6 +986,7 @@ } }, + _calendar : { sameDay : '[Today at] LT', nextDay : '[Tomorrow at] LT', @@ -908,9 +995,9 @@ lastWeek : '[Last] dddd [at] LT', sameElse : 'L' }, - calendar : function (key, mom) { + calendar : function (key, mom, now) { var output = this._calendar[key]; - return typeof output === 'function' ? output.apply(mom) : output; + return typeof output === 'function' ? output.apply(mom, [now]) : output; }, _relativeTime : { @@ -945,6 +1032,7 @@ return this._ordinal.replace('%d', number); }, _ordinal : '%d', + _ordinalParse : /\d{1,2}/, preparse : function (string) { return string; @@ -963,6 +1051,14 @@ doy : 6 // The week that contains Jan 1st is the first week of the year. }, + firstDayOfWeek : function () { + return this._week.dow; + }, + + firstDayOfYear : function () { + return this._week.doy; + }, + _invalidDate: 'Invalid date', invalidDate: function () { return this._invalidDate; @@ -1086,6 +1182,8 @@ case 'a': case 'A': return config._locale._meridiemParse; + case 'x': + return parseTokenOffsetMs; case 'X': return parseTokenTimestampMs; case 'Z': @@ -1120,21 +1218,21 @@ case 'E': return parseTokenOneOrTwoDigits; case 'Do': - return parseTokenOrdinal; + return strict ? config._locale._ordinalParse : config._locale._ordinalParseLenient; default : a = new RegExp(regexpEscape(unescapeFormat(token.replace('\\', '')), 'i')); return a; } } - function timezoneMinutesFromString(string) { + function utcOffsetFromString(string) { string = string || ''; var possibleTzMatches = (string.match(parseTokenTimezone) || []), tzChunk = possibleTzMatches[possibleTzMatches.length - 1] || [], parts = (tzChunk + '').match(parseTimezoneChunker) || ['-', 0, 0], minutes = +(parts[1] * 60) + toInt(parts[2]); - return parts[0] === '+' ? -minutes : minutes; + return parts[0] === '+' ? minutes : -minutes; } // function to convert string input to date @@ -1157,7 +1255,7 @@ break; case 'MMM' : // fall through to MMMM case 'MMMM' : - a = config._locale.monthsParse(input); + a = config._locale.monthsParse(input, token, config._strict); // if we didn't find a month name, mark the date as invalid. if (a != null) { datePartArray[MONTH] = a; @@ -1174,7 +1272,8 @@ break; case 'Do' : if (input != null) { - datePartArray[DATE] = toInt(parseInt(input, 10)); + datePartArray[DATE] = toInt(parseInt( + input.match(/\d{1,2}/)[0], 10)); } break; // DAY OF YEAR @@ -1197,13 +1296,16 @@ // AM / PM case 'a' : // fall through to A case 'A' : - config._isPm = config._locale.isPM(input); + config._meridiem = input; + // config._isPm = config._locale.isPM(input); break; - // 24 HOUR - case 'H' : // fall through to hh - case 'HH' : // fall through to hh + // HOUR case 'h' : // fall through to hh case 'hh' : + config._pf.bigHour = true; + /* falls through */ + case 'H' : // fall through to HH + case 'HH' : datePartArray[HOUR] = toInt(input); break; // MINUTE @@ -1223,6 +1325,10 @@ case 'SSSS' : datePartArray[MILLISECOND] = toInt(('0.' + input) * 1000); break; + // UNIX OFFSET (MILLISECONDS) + case 'x': + config._d = new Date(toInt(input)); + break; // UNIX TIMESTAMP WITH MS case 'X': config._d = new Date(parseFloat(input) * 1000); @@ -1231,7 +1337,7 @@ case 'Z' : // fall through to ZZ case 'ZZ' : config._useUTC = true; - config._tzm = timezoneMinutesFromString(input); + config._tzm = utcOffsetFromString(input); break; // WEEKDAY - human case 'dd': @@ -1359,11 +1465,24 @@ config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i]; } + // Check for 24:00:00.000 + if (config._a[HOUR] === 24 && + config._a[MINUTE] === 0 && + config._a[SECOND] === 0 && + config._a[MILLISECOND] === 0) { + config._nextDay = true; + config._a[HOUR] = 0; + } + config._d = (config._useUTC ? makeUTCDate : makeDate).apply(null, input); - // Apply timezone offset from input. The actual zone can be changed + // Apply timezone offset from input. The actual utcOffset can be changed // with parseZone. if (config._tzm != null) { - config._d.setUTCMinutes(config._d.getUTCMinutes() + config._tzm); + config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm); + } + + if (config._nextDay) { + config._a[HOUR] = 24; } } @@ -1378,7 +1497,7 @@ config._a = [ normalizedInput.year, normalizedInput.month, - normalizedInput.day, + normalizedInput.day || normalizedInput.date, normalizedInput.hour, normalizedInput.minute, normalizedInput.second, @@ -1451,15 +1570,13 @@ config._pf.unusedInput.push(string); } - // handle am pm - if (config._isPm && config._a[HOUR] < 12) { - config._a[HOUR] += 12; + // clear _12h flag if hour is <= 12 + if (config._pf.bigHour === true && config._a[HOUR] <= 12) { + config._pf.bigHour = undefined; } - // if is 12 am, change hours to 0 - if (config._isPm === false && config._a[HOUR] === 12) { - config._a[HOUR] = 0; - } - + // handle meridiem + config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], + config._meridiem); dateFromConfig(config); checkOverflow(config); } @@ -1719,7 +1836,8 @@ function makeMoment(config) { var input = config._i, - format = config._f; + format = config._f, + res; config._locale = config._locale || moment.localeData(config._l); @@ -1743,7 +1861,14 @@ makeDateFromInput(config); } - return new Moment(config); + res = new Moment(config); + if (res._nextDay) { + // Adding is smart enough around DST + res.add(1, 'd'); + res._nextDay = undefined; + } + + return res; } moment = function (input, format, locale, strict) { @@ -1775,7 +1900,7 @@ 'release. Please refer to ' + 'https://github.com/moment/moment/issues/1407 for more info.', function (config) { - config._d = new Date(config._i); + config._d = new Date(config._i + (config._useUTC ? ' UTC' : '')); } ); @@ -1893,6 +2018,8 @@ s: parseIso(match[7]), w: parseIso(match[8]) }; + } else if (duration == null) {// checks for null or undefined + duration = {}; } else if (typeof duration === 'object' && ('from' in duration || 'to' in duration)) { diffRes = momentsDifference(moment(duration.from), moment(duration.to)); @@ -2057,6 +2184,8 @@ return toInt(input) + (toInt(input) > 68 ? 1900 : 2000); }; + moment.isDate = isDate; + /************************************ Moment Prototype ************************************/ @@ -2069,7 +2198,7 @@ }, valueOf : function () { - return +this._d + ((this._offset || 0) * 60000); + return +this._d - ((this._offset || 0) * 60000); }, unix : function () { @@ -2087,7 +2216,12 @@ toISOString : function () { var m = moment(this).utc(); if (0 < m.year() && m.year() <= 9999) { - return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]'); + if ('function' === typeof Date.prototype.toISOString) { + // native implementation is ~50x faster, use it when we can + return this.toDate().toISOString(); + } else { + return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]'); + } } else { return formatMoment(m, 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'); } @@ -2127,16 +2261,16 @@ }, utc : function (keepLocalTime) { - return this.zone(0, keepLocalTime); + return this.utcOffset(0, keepLocalTime); }, local : function (keepLocalTime) { if (this._isUTC) { - this.zone(0, keepLocalTime); + this.utcOffset(0, keepLocalTime); this._isUTC = false; if (keepLocalTime) { - this.add(this._dateTzOffset(), 'm'); + this.subtract(this._dateUtcOffset(), 'm'); } } return this; @@ -2153,29 +2287,20 @@ diff : function (input, units, asFloat) { var that = makeAs(input, this), - zoneDiff = (this.zone() - that.zone()) * 6e4, - diff, output, daysAdjust; + zoneDiff = (that.utcOffset() - this.utcOffset()) * 6e4, + anchor, diff, output, daysAdjust; units = normalizeUnits(units); - if (units === 'year' || units === 'month') { - // average number of days in the months in the given dates - diff = (this.daysInMonth() + that.daysInMonth()) * 432e5; // 24 * 60 * 60 * 1000 / 2 - // difference in months - output = ((this.year() - that.year()) * 12) + (this.month() - that.month()); - // adjust by taking difference in days, average number of days - // and dst in the given months. - daysAdjust = (this - moment(this).startOf('month')) - - (that - moment(that).startOf('month')); - // same as above but with zones, to negate all dst - daysAdjust -= ((this.zone() - moment(this).startOf('month').zone()) - - (that.zone() - moment(that).startOf('month').zone())) * 6e4; - output += daysAdjust / diff; - if (units === 'year') { + if (units === 'year' || units === 'month' || units === 'quarter') { + output = monthDiff(this, that); + if (units === 'quarter') { + output = output / 3; + } else if (units === 'year') { output = output / 12; } } else { - diff = (this - that); + diff = this - that; output = units === 'second' ? diff / 1e3 : // 1000 units === 'minute' ? diff / 6e4 : // 1000 * 60 units === 'hour' ? diff / 36e5 : // 1000 * 60 * 60 @@ -2196,7 +2321,8 @@ calendar : function (time) { // We want to compare the start of today, vs this. - // Getting start-of-today depends on whether we're zone'd or not. + // Getting start-of-today depends on whether we're locat/utc/offset + // or not. var now = time || moment(), sod = makeAs(now, this).startOf('day'), diff = this.diff(sod, 'days', true), @@ -2206,7 +2332,7 @@ diff < 1 ? 'sameDay' : diff < 2 ? 'nextDay' : diff < 7 ? 'nextWeek' : 'sameElse'; - return this.format(this.localeData().calendar(format, this)); + return this.format(this.localeData().calendar(format, this, moment(now))); }, isLeapYear : function () { @@ -2214,8 +2340,8 @@ }, isDST : function () { - return (this.zone() < this.clone().month(0).zone() || - this.zone() < this.clone().month(5).zone()); + return (this.utcOffset() > this.clone().month(0).utcOffset() || + this.utcOffset() > this.clone().month(5).utcOffset()); }, day : function (input) { @@ -2275,36 +2401,49 @@ endOf: function (units) { units = normalizeUnits(units); + if (units === undefined || units === 'millisecond') { + return this; + } return this.startOf(units).add(1, (units === 'isoWeek' ? 'week' : units)).subtract(1, 'ms'); }, isAfter: function (input, units) { + var inputMs; units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond'); if (units === 'millisecond') { input = moment.isMoment(input) ? input : moment(input); return +this > +input; } else { - return +this.clone().startOf(units) > +moment(input).startOf(units); + inputMs = moment.isMoment(input) ? +input : +moment(input); + return inputMs < +this.clone().startOf(units); } }, isBefore: function (input, units) { + var inputMs; units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond'); if (units === 'millisecond') { input = moment.isMoment(input) ? input : moment(input); return +this < +input; } else { - return +this.clone().startOf(units) < +moment(input).startOf(units); + inputMs = moment.isMoment(input) ? +input : +moment(input); + return +this.clone().endOf(units) < inputMs; } }, + isBetween: function (from, to, units) { + return this.isAfter(from, units) && this.isBefore(to, units); + }, + isSame: function (input, units) { + var inputMs; units = normalizeUnits(units || 'millisecond'); if (units === 'millisecond') { input = moment.isMoment(input) ? input : moment(input); return +this === +input; } else { - return +this.clone().startOf(units) === +makeAs(input, this).startOf(units); + inputMs = +moment(input); + return +(this.clone().startOf(units)) <= inputMs && inputMs <= +(this.clone().endOf(units)); } }, @@ -2324,9 +2463,27 @@ } ), + zone : deprecate( + 'moment().zone is deprecated, use moment().utcOffset instead. ' + + 'https://github.com/moment/moment/issues/1779', + function (input, keepLocalTime) { + if (input != null) { + if (typeof input !== 'string') { + input = -input; + } + + this.utcOffset(input, keepLocalTime); + + return this; + } else { + return -this.utcOffset(); + } + } + ), + // keepLocalTime = true means only change the timezone, without - // affecting the local hour. So 5:31:26 +0300 --[zone(2, true)]--> - // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist int zone + // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]--> + // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset // +0200, so we adjust the time as needed, to be valid. // // Keeping the time actually adds/subtracts (one hour) @@ -2334,38 +2491,51 @@ // a second time. In case it wants us to change the offset again // _changeInProgress == true case, then we have to adjust, because // there is no such time in the given timezone. - zone : function (input, keepLocalTime) { + utcOffset : function (input, keepLocalTime) { var offset = this._offset || 0, localAdjust; if (input != null) { if (typeof input === 'string') { - input = timezoneMinutesFromString(input); + input = utcOffsetFromString(input); } if (Math.abs(input) < 16) { input = input * 60; } if (!this._isUTC && keepLocalTime) { - localAdjust = this._dateTzOffset(); + localAdjust = this._dateUtcOffset(); } this._offset = input; this._isUTC = true; if (localAdjust != null) { - this.subtract(localAdjust, 'm'); + this.add(localAdjust, 'm'); } if (offset !== input) { if (!keepLocalTime || this._changeInProgress) { addOrSubtractDurationFromMoment(this, - moment.duration(offset - input, 'm'), 1, false); + moment.duration(input - offset, 'm'), 1, false); } else if (!this._changeInProgress) { this._changeInProgress = true; moment.updateOffset(this, true); this._changeInProgress = null; } } + + return this; } else { - return this._isUTC ? offset : this._dateTzOffset(); + return this._isUTC ? offset : this._dateUtcOffset(); } - return this; + }, + + isLocal : function () { + return !this._isUTC; + }, + + isUtcOffset : function () { + return this._isUTC; + }, + + isUtc : function () { + return this._isUTC && this._offset === 0; }, zoneAbbr : function () { @@ -2378,9 +2548,9 @@ parseZone : function () { if (this._tzm) { - this.zone(this._tzm); + this.utcOffset(this._tzm); } else if (typeof this._i === 'string') { - this.zone(this._i); + this.utcOffset(utcOffsetFromString(this._i)); } return this; }, @@ -2390,10 +2560,10 @@ input = 0; } else { - input = moment(input).zone(); + input = moment(input).utcOffset(); } - return (this.zone() - input) % 60 === 0; + return (this.utcOffset() - input) % 60 === 0; }, daysInMonth : function () { @@ -2456,9 +2626,17 @@ }, set : function (units, value) { - units = normalizeUnits(units); - if (typeof this[units] === 'function') { - this[units](value); + var unit; + if (typeof units === 'object') { + for (unit in units) { + this.set(unit, units[unit]); + } + } + else { + units = normalizeUnits(units); + if (typeof this[units] === 'function') { + this[units](value); + } } return this; }, @@ -2481,7 +2659,7 @@ }, lang : deprecate( - 'moment().lang() is deprecated. Use moment().localeData() instead.', + 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.', function (key) { if (key === undefined) { return this.localeData(); @@ -2495,11 +2673,12 @@ return this._locale; }, - _dateTzOffset : function () { + _dateUtcOffset : function () { // On Firefox.24 Date#getTimezoneOffset returns a floating point. // https://github.com/moment/moment/pull/1871 - return Math.round(this._d.getTimezoneOffset() / 15) * 15; + return -Math.round(this._d.getTimezoneOffset() / 15) * 15; } + }); function rawMonthSetter(mom, value) { @@ -2568,6 +2747,9 @@ // add aliased format methods moment.fn.toJSON = moment.fn.toISOString; + // alias isUtc for dev-friendliness + moment.fn.isUTC = moment.fn.isUtc; + /************************************ Duration Prototype ************************************/ @@ -2702,7 +2884,7 @@ return units === 'month' ? months : months / 12; } else { // handle milliseconds separately because of floating point math errors (issue #1867) - days = this._days + yearsToDays(this._months / 12); + days = this._days + Math.round(yearsToDays(this._months / 12)); switch (units) { case 'week': return days / 7 + this._milliseconds / 6048e5; case 'day': return days + this._milliseconds / 864e5; @@ -2755,6 +2937,10 @@ localeData : function () { return this._locale; + }, + + toJSON : function () { + return this.toISOString(); } }); @@ -2804,6 +2990,7 @@ // Set default locale, other locale will inherit from English. moment.locale('en', { + ordinalParse: /\d{1,2}(th|st|nd|rd)/, ordinal : function (number) { var b = number % 10, output = (toInt(number % 100 / 10) === 1) ? 'th' : @@ -2827,6 +3014,10 @@ weekdays : 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split('_'), weekdaysShort : 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'), weekdaysMin : 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'), + meridiemParse: /vm|nm/i, + isPM : function (input) { + return /^nm$/i.test(input); + }, meridiem : function (hours, minutes, isLower) { if (hours < 12) { return isLower ? 'vm' : 'VM'; @@ -2836,6 +3027,7 @@ }, longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -2864,6 +3056,7 @@ y : '\'n jaar', yy : '%d jaar' }, + ordinalParse: /\d{1,2}(ste|de)/, ordinal : function (number) { return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); // Thanks to Joris Röling : https://github.com/jjupiter }, @@ -2889,6 +3082,7 @@ weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -2962,11 +3156,16 @@ weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'HH:mm:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', LLLL : 'dddd D MMMM YYYY LT' }, + meridiemParse: /ص|م/, + isPM : function (input) { + return 'م' === input; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'ص'; @@ -2998,7 +3197,7 @@ yy : '%d سنوات' }, preparse: function (string) { - return string.replace(/[۰-۹]/g, function (match) { + return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { return numberMap[match]; }).replace(/،/g, ','); }, @@ -3014,6 +3213,55 @@ }); })); // moment.js locale configuration +// locale : Tunisian Arabic (ar-tn) + +(function (factory) { + factory(moment); +}(function (moment) { + return moment.defineLocale('ar-tn', { + months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'), + monthsShort: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'), + weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), + weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), + weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'LT:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY LT', + LLLL: 'dddd D MMMM YYYY LT' + }, + calendar: { + sameDay: '[اليوم على الساعة] LT', + nextDay: '[غدا على الساعة] LT', + nextWeek: 'dddd [على الساعة] LT', + lastDay: '[أمس على الساعة] LT', + lastWeek: 'dddd [على الساعة] LT', + sameElse: 'L' + }, + relativeTime: { + future: 'في %s', + past: 'منذ %s', + s: 'ثوان', + m: 'دقيقة', + mm: '%d دقائق', + h: 'ساعة', + hh: '%d ساعات', + d: 'يوم', + dd: '%d أيام', + M: 'شهر', + MM: '%d أشهر', + y: 'سنة', + yy: '%d سنوات' + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4 // The week that contains Jan 4th is the first week of the year. + } + }); +})); +// moment.js locale configuration // Locale: Arabic (ar) // Author: Abdel Said: https://github.com/abdelsaid // Changes in months, weekdays: Ahmed Elkhatib @@ -3085,11 +3333,16 @@ weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'HH:mm:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', LLLL : 'dddd D MMMM YYYY LT' }, + meridiemParse: /ص|م/, + isPM : function (input) { + return 'م' === input; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'ص'; @@ -3121,7 +3374,7 @@ yy : pluralize('y') }, preparse: function (string) { - return string.replace(/[۰-۹]/g, function (match) { + return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { return numberMap[match]; }).replace(/،/g, ','); }, @@ -3176,6 +3429,7 @@ weekdaysMin : 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -3204,6 +3458,10 @@ y : 'bir il', yy : '%d il' }, + meridiemParse: /gecə|səhər|gündüz|axşam/, + isPM : function (input) { + return /^(gündüz|axşam)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'gecə'; @@ -3215,6 +3473,7 @@ return 'axşam'; } }, + ordinalParse: /\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/, ordinal : function (number) { if (number === 0) { // special case for zero return number + '-ıncı'; @@ -3298,6 +3557,7 @@ weekdaysMin : 'нд_пн_ат_ср_чц_пт_сб'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY г.', LLL : 'D MMMM YYYY г., LT', @@ -3340,8 +3600,10 @@ y : 'год', yy : relativeTimeWithPlural }, - - + meridiemParse: /ночы|раніцы|дня|вечара/, + isPM : function (input) { + return /^(дня|вечара)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'ночы'; @@ -3354,6 +3616,7 @@ } }, + ordinalParse: /\d{1,2}-(і|ы|га)/, ordinal: function (number, period) { switch (period) { case 'M': @@ -3390,6 +3653,7 @@ weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'D.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -3430,6 +3694,7 @@ y : 'година', yy : '%d години' }, + ordinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/, ordinal : function (number) { var lastDigit = number % 10, last2Digits = number % 100; @@ -3495,6 +3760,7 @@ weekdaysMin : 'রব_সম_মঙ্গ_বু_ব্রিহ_শু_শনি'.split('_'), longDateFormat : { LT : 'A h:mm সময়', + LTS : 'A h:mm:ss সময়', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -3533,6 +3799,10 @@ return symbolMap[match]; }); }, + meridiemParse: /রাত|শকাল|দুপুর|বিকেল|রাত/, + isPM: function (input) { + return /^(দুপুর|বিকেল|রাত)$/.test(input); + }, //Bengali is a vast language its spoken //in different forms in various parts of the world. //I have just generalized with most common one used @@ -3595,6 +3865,7 @@ weekdaysMin : 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split('_'), longDateFormat : { LT : 'A h:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -3633,6 +3904,10 @@ return symbolMap[match]; }); }, + meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/, + isPM: function (input) { + return /^(ཉིན་གུང|དགོང་དག|མཚན་མོ)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'མཚན་མོ'; @@ -3715,6 +3990,7 @@ weekdaysMin : 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'), longDateFormat : { LT : 'h[e]mm A', + LTS : 'h[e]mm:ss A', L : 'DD/MM/YYYY', LL : 'D [a viz] MMMM YYYY', LLL : 'D [a viz] MMMM YYYY LT', @@ -3743,6 +4019,7 @@ y : 'ur bloaz', yy : specialMutationForYears }, + ordinalParse: /\d{1,2}(añ|vet)/, ordinal : function (number) { var output = (number === 1) ? 'añ' : 'vet'; return number + output; @@ -3815,13 +4092,14 @@ } return moment.defineLocale('bs', { - months : 'januar_februar_mart_april_maj_juni_juli_avgust_septembar_oktobar_novembar_decembar'.split('_'), - monthsShort : 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split('_'), + months : 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split('_'), + monthsShort : 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split('_'), weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'), weekdaysShort : 'ned._pon._uto._sri._čet._pet._sub.'.split('_'), weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD. MM. YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -3878,6 +4156,7 @@ y : 'godinu', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -3900,6 +4179,7 @@ weekdaysMin : 'Dg_Dl_Dt_Dc_Dj_Dv_Ds'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -3938,7 +4218,17 @@ y : 'un any', yy : '%d anys' }, - ordinal : '%dº', + ordinalParse: /\d{1,2}(r|n|t|è|a)/, + ordinal : function (number, period) { + var output = (number === 1) ? 'r' : + (number === 2) ? 'n' : + (number === 3) ? 'r' : + (number === 4) ? 't' : 'è'; + if (period === 'w' || period === 'W') { + output = 'a'; + } + return number + output; + }, week : { dow : 1, // Monday is the first day of the week. doy : 4 // The week that contains Jan 4th is the first week of the year. @@ -4028,7 +4318,8 @@ weekdaysMin : 'ne_po_út_st_čt_pá_so'.split('_'), longDateFormat : { LT: 'H:mm', - L : 'DD. MM. YYYY', + LTS : 'LT:ss', + L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', LLLL : 'dddd D. MMMM YYYY LT' @@ -4087,6 +4378,7 @@ y : translate, yy : translate }, + ordinalParse : /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -4109,6 +4401,7 @@ weekdaysMin : 'вр_тн_ыт_юн_кç_эр_шм'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD-MM-YYYY', LL : 'YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ]', LLL : 'YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT', @@ -4140,6 +4433,7 @@ y : 'пĕр çул', yy : '%d çул' }, + ordinalParse: /\d{1,2}-мĕш/, ordinal : '%d-мĕш', week : { dow : 1, // Monday is the first day of the week. @@ -4163,6 +4457,7 @@ // time formats are the same as en-gb longDateFormat: { LT: 'HH:mm', + LTS : 'LT:ss', L: 'DD/MM/YYYY', LL: 'D MMMM YYYY', LLL: 'D MMMM YYYY LT', @@ -4191,6 +4486,7 @@ y: 'blwyddyn', yy: '%d flynedd' }, + ordinalParse: /\d{1,2}(fed|ain|af|il|ydd|ed|eg)/, // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh ordinal: function (number) { var b = number, @@ -4233,6 +4529,7 @@ weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -4261,6 +4558,7 @@ y : 'et år', yy : '%d år' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -4298,19 +4596,20 @@ weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), longDateFormat : { - LT: 'HH:mm [Uhr]', + LT: 'HH:mm', + LTS: 'HH:mm:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', LLLL : 'dddd, D. MMMM YYYY LT' }, calendar : { - sameDay: '[Heute um] LT', + sameDay: '[Heute um] LT [Uhr]', sameElse: 'L', - nextDay: '[Morgen um] LT', - nextWeek: 'dddd [um] LT', - lastDay: '[Gestern um] LT', - lastWeek: '[letzten] dddd [um] LT' + nextDay: '[Morgen um] LT [Uhr]', + nextWeek: 'dddd [um] LT [Uhr]', + lastDay: '[Gestern um] LT [Uhr]', + lastWeek: '[letzten] dddd [um] LT [Uhr]' }, relativeTime : { future : 'in %s', @@ -4327,6 +4626,7 @@ y : processRelativeTime, yy : processRelativeTime }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -4363,19 +4663,20 @@ weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), longDateFormat : { - LT: 'HH:mm [Uhr]', + LT: 'HH:mm', + LTS: 'HH:mm:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', LLLL : 'dddd, D. MMMM YYYY LT' }, calendar : { - sameDay: '[Heute um] LT', + sameDay: '[Heute um] LT [Uhr]', sameElse: 'L', - nextDay: '[Morgen um] LT', - nextWeek: 'dddd [um] LT', - lastDay: '[Gestern um] LT', - lastWeek: '[letzten] dddd [um] LT' + nextDay: '[Morgen um] LT [Uhr]', + nextWeek: 'dddd [um] LT [Uhr]', + lastDay: '[Gestern um] LT [Uhr]', + lastWeek: '[letzten] dddd [um] LT [Uhr]' }, relativeTime : { future : 'in %s', @@ -4392,6 +4693,7 @@ y : processRelativeTime, yy : processRelativeTime }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -4433,6 +4735,7 @@ meridiemParse : /[ΠΜ]\.?Μ?\.?/i, longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -4466,7 +4769,7 @@ relativeTime : { future : 'σε %s', past : '%s πριν', - s : 'δευτερόλεπτα', + s : 'λίγα δευτερόλεπτα', m : 'ένα λεπτό', mm : '%d λεπτά', h : 'μία ώρα', @@ -4478,9 +4781,8 @@ y : 'ένας χρόνος', yy : '%d χρόνια' }, - ordinal : function (number) { - return number + 'η'; - }, + ordinalParse: /\d{1,2}η/, + ordinal: '%dη', week : { dow : 1, // Monday is the first day of the week. doy : 4 // The week that contains Jan 4st is the first week of the year. @@ -4501,6 +4803,7 @@ weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -4529,6 +4832,7 @@ y : 'a year', yy : '%d years' }, + ordinalParse: /\d{1,2}(st|nd|rd|th)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'th' : @@ -4558,6 +4862,7 @@ weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'YYYY-MM-DD', LL : 'D MMMM, YYYY', LLL : 'D MMMM, YYYY LT', @@ -4586,6 +4891,7 @@ y : 'a year', yy : '%d years' }, + ordinalParse: /\d{1,2}(st|nd|rd|th)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'th' : @@ -4611,6 +4917,7 @@ weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'HH:mm:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -4639,6 +4946,7 @@ y : 'a year', yy : '%d years' }, + ordinalParse: /\d{1,2}(st|nd|rd|th)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'th' : @@ -4670,11 +4978,16 @@ weekdaysMin : 'Di_Lu_Ma_Me_Ĵa_Ve_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'D[-an de] MMMM, YYYY', LLL : 'D[-an de] MMMM, YYYY LT', LLLL : 'dddd, [la] D[-an de] MMMM, YYYY LT' }, + meridiemParse: /[ap]\.t\.m/i, + isPM: function (input) { + return input.charAt(0).toLowerCase() === 'p'; + }, meridiem : function (hours, minutes, isLower) { if (hours > 11) { return isLower ? 'p.t.m.' : 'P.T.M.'; @@ -4705,6 +5018,7 @@ y : 'jaro', yy : '%d jaroj' }, + ordinalParse: /\d{1,2}a/, ordinal : '%da', week : { dow : 1, // Monday is the first day of the week. @@ -4736,6 +5050,7 @@ weekdaysMin : 'Do_Lu_Ma_Mi_Ju_Vi_Sá'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [de] MMMM [de] YYYY', LLL : 'D [de] MMMM [de] YYYY LT', @@ -4774,6 +5089,7 @@ y : 'un año', yy : '%d años' }, + ordinalParse : /\d{1,2}º/, ordinal : '%dº', week : { dow : 1, // Monday is the first day of the week. @@ -4816,6 +5132,7 @@ weekdaysMin : 'P_E_T_K_N_R_L'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -4844,6 +5161,7 @@ y : processRelativeTime, yy : processRelativeTime }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -4866,6 +5184,7 @@ weekdaysMin : 'ig_al_ar_az_og_ol_lr'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'YYYY[ko] MMMM[ren] D[a]', LLL : 'YYYY[ko] MMMM[ren] D[a] LT', @@ -4898,6 +5217,7 @@ y : 'urte bat', yy : '%d urte' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -4944,11 +5264,16 @@ weekdaysMin : 'ی_د_س_چ_پ_ج_ش'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', LLLL : 'dddd, D MMMM YYYY LT' }, + meridiemParse: /قبل از ظهر|بعد از ظهر/, + isPM: function (input) { + return /بعد از ظهر/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'قبل از ظهر'; @@ -4989,6 +5314,7 @@ return symbolMap[match]; }).replace(/,/g, '،'); }, + ordinalParse: /\d{1,2}م/, ordinal : '%dم', week : { dow : 6, // Saturday is the first day of the week. @@ -5056,6 +5382,7 @@ weekdaysMin : 'su_ma_ti_ke_to_pe_la'.split('_'), longDateFormat : { LT : 'HH.mm', + LTS : 'HH.mm.ss', L : 'DD.MM.YYYY', LL : 'Do MMMM[ta] YYYY', LLL : 'Do MMMM[ta] YYYY, [klo] LT', @@ -5088,6 +5415,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -5110,6 +5438,7 @@ weekdaysMin : 'su_má_tý_mi_hó_fr_le'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -5138,6 +5467,7 @@ y : 'eitt ár', yy : '%d ár' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -5160,6 +5490,7 @@ weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -5188,6 +5519,7 @@ y : 'un an', yy : '%d ans' }, + ordinalParse: /\d{1,2}(er|)/, ordinal : function (number) { return number + (number === 1 ? 'er' : ''); } @@ -5208,6 +5540,7 @@ weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -5236,6 +5569,7 @@ y : 'un an', yy : '%d ans' }, + ordinalParse: /\d{1,2}(er|)/, ordinal : function (number) { return number + (number === 1 ? 'er' : ''); }, @@ -5246,6 +5580,69 @@ }); })); // moment.js locale configuration +// locale : frisian (fy) +// author : Robin van der Vliet : https://github.com/robin0van0der0v + +(function (factory) { + factory(moment); +}(function (moment) { + var monthsShortWithDots = 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'), + monthsShortWithoutDots = 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'); + + return moment.defineLocale('fy', { + months : 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split('_'), + monthsShort : function (m, format) { + if (/-MMM-/.test(format)) { + return monthsShortWithoutDots[m.month()]; + } else { + return monthsShortWithDots[m.month()]; + } + }, + weekdays : 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split('_'), + weekdaysShort : 'si._mo._ti._wo._to._fr._so.'.split('_'), + weekdaysMin : 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'), + longDateFormat : { + LT : 'HH:mm', + LTS : 'LT:ss', + L : 'DD-MM-YYYY', + LL : 'D MMMM YYYY', + LLL : 'D MMMM YYYY LT', + LLLL : 'dddd D MMMM YYYY LT' + }, + calendar : { + sameDay: '[hjoed om] LT', + nextDay: '[moarn om] LT', + nextWeek: 'dddd [om] LT', + lastDay: '[juster om] LT', + lastWeek: '[ôfrûne] dddd [om] LT', + sameElse: 'L' + }, + relativeTime : { + future : 'oer %s', + past : '%s lyn', + s : 'in pear sekonden', + m : 'ien minút', + mm : '%d minuten', + h : 'ien oere', + hh : '%d oeren', + d : 'ien dei', + dd : '%d dagen', + M : 'ien moanne', + MM : '%d moannen', + y : 'ien jier', + yy : '%d jierren' + }, + ordinalParse: /\d{1,2}(ste|de)/, + ordinal : function (number) { + return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); + }, + week : { + dow : 1, // Monday is the first day of the week. + doy : 4 // The week that contains Jan 4th is the first week of the year. + } + }); +})); +// moment.js locale configuration // locale : galician (gl) // author : Juan G. Hurtado : https://github.com/juanghurtado @@ -5260,6 +5657,7 @@ weekdaysMin : 'Do_Lu_Ma_Mé_Xo_Ve_Sá'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -5303,6 +5701,7 @@ y : 'un ano', yy : '%d anos' }, + ordinalParse : /\d{1,2}º/, ordinal : '%dº', week : { dow : 1, // Monday is the first day of the week. @@ -5327,6 +5726,7 @@ weekdaysMin : 'א_ב_ג_ד_ה_ו_ש'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [ב]MMMM YYYY', LLL : 'D [ב]MMMM YYYY LT', @@ -5375,6 +5775,8 @@ yy : function (number) { if (number === 2) { return 'שנתיים'; + } else if (number % 10 === 0 && number !== 10) { + return number + ' שנה'; } return number + ' שנים'; } @@ -5421,6 +5823,7 @@ weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'), longDateFormat : { LT : 'A h:mm बजे', + LTS : 'A h:mm:ss बजे', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -5461,6 +5864,21 @@ }, // Hindi notation for meridiems are quite fuzzy in practice. While there exists // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi. + meridiemParse: /रात|सुबह|दोपहर|शाम/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'रात') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'सुबह') { + return hour; + } else if (meridiem === 'दोपहर') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'शाम') { + return hour + 12; + } + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'रात'; @@ -5550,6 +5968,7 @@ weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD. MM. YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -5606,6 +6025,7 @@ y : 'godinu', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -5666,11 +6086,16 @@ weekdaysMin : 'v_h_k_sze_cs_p_szo'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'YYYY.MM.DD.', LL : 'YYYY. MMMM D.', LLL : 'YYYY. MMMM D., LT', LLLL : 'YYYY. MMMM D., dddd LT' }, + meridiemParse: /de|du/i, + isPM: function (input) { + return input.charAt(1).toLowerCase() === 'u'; + }, meridiem : function (hours, minutes, isLower) { if (hours < 12) { return isLower === true ? 'de' : 'DE'; @@ -5705,6 +6130,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -5752,6 +6178,7 @@ weekdaysMin : 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY թ.', LLL : 'D MMMM YYYY թ., LT', @@ -5785,6 +6212,10 @@ yy : '%d տարի' }, + meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/, + isPM: function (input) { + return /^(ցերեկվա|երեկոյան)$/.test(input); + }, meridiem : function (hour) { if (hour < 4) { return 'գիշերվա'; @@ -5797,6 +6228,7 @@ } }, + ordinalParse: /\d{1,2}|\d{1,2}-(ին|րդ)/, ordinal: function (number, period) { switch (period) { case 'DDD': @@ -5834,11 +6266,25 @@ weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'), longDateFormat : { LT : 'HH.mm', + LTS : 'LT.ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY [pukul] LT', LLLL : 'dddd, D MMMM YYYY [pukul] LT' }, + meridiemParse: /pagi|siang|sore|malam/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'pagi') { + return hour; + } else if (meridiem === 'siang') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'sore' || meridiem === 'malam') { + return hour + 12; + } + }, meridiem : function (hours, minutes, isLower) { if (hours < 11) { return 'pagi'; @@ -5962,6 +6408,7 @@ weekdaysMin : 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY [kl.] LT', @@ -5990,6 +6437,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -6013,6 +6461,7 @@ weekdaysMin : 'D_L_Ma_Me_G_V_S'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -6023,7 +6472,14 @@ nextDay: '[Domani alle] LT', nextWeek: 'dddd [alle] LT', lastDay: '[Ieri alle] LT', - lastWeek: '[lo scorso] dddd [alle] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + return '[la scorsa] dddd [alle] LT'; + default: + return '[lo scorso] dddd [alle] LT'; + } + }, sameElse: 'L' }, relativeTime : { @@ -6043,6 +6499,7 @@ y : 'un anno', yy : '%d anni' }, + ordinalParse : /\d{1,2}º/, ordinal: '%dº', week : { dow : 1, // Monday is the first day of the week. @@ -6065,11 +6522,16 @@ weekdaysMin : '日_月_火_水_木_金_土'.split('_'), longDateFormat : { LT : 'Ah時m分', + LTS : 'LTs秒', L : 'YYYY/MM/DD', LL : 'YYYY年M月D日', LLL : 'YYYY年M月D日LT', LLLL : 'YYYY年M月D日LT dddd' }, + meridiemParse: /午前|午後/i, + isPM : function (input) { + return input === '午後'; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return '午前'; @@ -6143,6 +6605,7 @@ weekdaysMin : 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'), longDateFormat : { LT : 'h:mm A', + LTS : 'h:mm:ss A', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -6182,6 +6645,7 @@ y : 'წელი', yy : '%d წელი' }, + ordinalParse: /0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/, ordinal : function (number) { if (number === 0) { return number; @@ -6218,6 +6682,7 @@ weekdaysMin: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'), longDateFormat: { LT: 'HH:mm', + LTS : 'LT:ss', L: 'DD/MM/YYYY', LL: 'D MMMM YYYY', LLL: 'D MMMM YYYY LT', @@ -6270,14 +6735,12 @@ weekdaysMin : '일_월_화_수_목_금_토'.split('_'), longDateFormat : { LT : 'A h시 m분', + LTS : 'A h시 m분 s초', L : 'YYYY.MM.DD', LL : 'YYYY년 MMMM D일', LLL : 'YYYY년 MMMM D일 LT', LLLL : 'YYYY년 MMMM D일 dddd LT' }, - meridiem : function (hour, minute, isUpper) { - return hour < 12 ? '오전' : '오후'; - }, calendar : { sameDay : '오늘 LT', nextDay : '내일 LT', @@ -6302,10 +6765,14 @@ y : '일년', yy : '%d년' }, + ordinalParse : /\d{1,2}일/, ordinal : '%d일', - meridiemParse : /(오전|오후)/, + meridiemParse : /오전|오후/, isPM : function (token) { return token === '오후'; + }, + meridiem : function (hour, minute, isUpper) { + return hour < 12 ? '오전' : '오후'; } }); })); @@ -6396,6 +6863,7 @@ weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'), longDateFormat: { LT: 'H:mm [Auer]', + LTS: 'H:mm:ss [Auer]', L: 'DD.MM.YYYY', LL: 'D. MMMM YYYY', LLL: 'D. MMMM YYYY LT', @@ -6433,6 +6901,7 @@ y : processRelativeTime, yy : '%d Joer' }, + ordinalParse: /\d{1,2}\./, ordinal: '%d.', week: { dow: 1, // Monday is the first day of the week. @@ -6511,6 +6980,7 @@ weekdaysMin : 'S_P_A_T_K_Pn_Š'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'YYYY [m.] MMMM D [d.]', LLL : 'YYYY [m.] MMMM D [d.], LT [val.]', @@ -6543,6 +7013,7 @@ y : translateSingular, yy : translate }, + ordinalParse: /\d{1,2}-oji/, ordinal : function (number) { return number + '-oji'; }, @@ -6588,6 +7059,7 @@ weekdaysMin : 'Sv_P_O_T_C_Pk_S'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'YYYY. [gada] D. MMMM', LLL : 'YYYY. [gada] D. MMMM, LT', @@ -6616,6 +7088,7 @@ y : 'gadu', yy : relativeTimeWithPlural }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -6638,6 +7111,7 @@ weekdaysMin : 'нe_пo_вт_ср_че_пе_сa'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'D.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -6678,6 +7152,7 @@ y : 'година', yy : '%d години' }, + ordinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/, ordinal : function (number) { var lastDigit = number % 10, last2Digits = number % 100; @@ -6718,6 +7193,7 @@ weekdaysMin : 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'), longDateFormat : { LT : 'A h:mm -നു', + LTS : 'A h:mm:ss -നു', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -6746,6 +7222,10 @@ y : 'ഒരു വർഷം', yy : '%d വർഷം' }, + meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i, + isPM : function (input) { + return /^(ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'രാത്രി'; @@ -6801,6 +7281,7 @@ weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'), longDateFormat : { LT : 'A h:mm वाजता', + LTS : 'A h:mm:ss वाजता', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -6839,6 +7320,21 @@ return symbolMap[match]; }); }, + meridiemParse: /रात्री|सकाळी|दुपारी|सायंकाळी/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'रात्री') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'सकाळी') { + return hour; + } else if (meridiem === 'दुपारी') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'सायंकाळी') { + return hour + 12; + } + }, meridiem: function (hour, minute, isLower) { if (hour < 4) { @@ -6874,11 +7370,25 @@ weekdaysMin : 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'), longDateFormat : { LT : 'HH.mm', + LTS : 'LT.ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY [pukul] LT', LLLL : 'dddd, D MMMM YYYY [pukul] LT' }, + meridiemParse: /pagi|tengahari|petang|malam/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'pagi') { + return hour; + } else if (meridiem === 'tengahari') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'petang' || meridiem === 'malam') { + return hour + 12; + } + }, meridiem : function (hours, minutes, isLower) { if (hours < 11) { return 'pagi'; @@ -6957,6 +7467,7 @@ weekdaysMin: 'နွေ_လာ_င်္ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'), longDateFormat: { LT: 'HH:mm', + LTS: 'HH:mm:ss', L: 'DD/MM/YYYY', LL: 'D MMMM YYYY', LLL: 'D MMMM YYYY LT', @@ -7017,6 +7528,7 @@ weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'), longDateFormat : { LT : 'H.mm', + LTS : 'LT.ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY [kl.] LT', @@ -7045,6 +7557,7 @@ y : 'ett år', yy : '%d år' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -7092,6 +7605,7 @@ weekdaysMin : 'आइ._सो._मङ्_बु._बि._शु._श.'.split('_'), longDateFormat : { LT : 'Aको h:mm बजे', + LTS : 'Aको h:mm:ss बजे', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -7107,6 +7621,21 @@ return symbolMap[match]; }); }, + meridiemParse: /राती|बिहान|दिउँसो|बेलुका|साँझ|राती/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'राती') { + return hour < 3 ? hour : hour + 12; + } else if (meridiem === 'बिहान') { + return hour; + } else if (meridiem === 'दिउँसो') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'बेलुका' || meridiem === 'साँझ') { + return hour + 12; + } + }, meridiem : function (hour, minute, isLower) { if (hour < 3) { return 'राती'; @@ -7175,6 +7704,7 @@ weekdaysMin : 'Zo_Ma_Di_Wo_Do_Vr_Za'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD-MM-YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -7203,6 +7733,7 @@ y : 'één jaar', yy : '%d jaar' }, + ordinalParse: /\d{1,2}(ste|de)/, ordinal : function (number) { return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); }, @@ -7227,6 +7758,7 @@ weekdaysMin : 'su_må_ty_on_to_fr_lø'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -7255,6 +7787,7 @@ y : 'eit år', yy : '%d år' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -7308,6 +7841,7 @@ weekdaysMin : 'N_Pn_Wt_Śr_Cz_Pt_So'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -7347,6 +7881,7 @@ y : 'rok', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -7369,6 +7904,7 @@ weekdaysMin : 'dom_2ª_3ª_4ª_5ª_6ª_sáb'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [de] MMMM [de] YYYY', LLL : 'D [de] MMMM [de] YYYY [às] LT', @@ -7401,6 +7937,7 @@ y : 'um ano', yy : '%d anos' }, + ordinalParse: /\d{1,2}º/, ordinal : '%dº' }); })); @@ -7419,6 +7956,7 @@ weekdaysMin : 'dom_2ª_3ª_4ª_5ª_6ª_sáb'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D [de] MMMM [de] YYYY', LLL : 'D [de] MMMM [de] YYYY LT', @@ -7451,6 +7989,7 @@ y : 'um ano', yy : '%d anos' }, + ordinalParse: /\d{1,2}º/, ordinal : '%dº', week : { dow : 1, // Monday is the first day of the week. @@ -7490,6 +8029,7 @@ weekdaysMin : 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY H:mm', @@ -7568,7 +8108,7 @@ function monthsShortCaseReplace(m, format) { var monthsShort = { - 'nominative': 'янв_фев_мар_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'), + 'nominative': 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'), 'accusative': 'янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек'.split('_') }, @@ -7585,7 +8125,7 @@ 'accusative': 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split('_') }, - nounCase = (/\[ ?[Вв] ?(?:прошлую|следующую)? ?\] ?dddd/).test(format) ? + nounCase = (/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/).test(format) ? 'accusative' : 'nominative'; @@ -7601,6 +8141,7 @@ monthsParse : [/^янв/i, /^фев/i, /^мар/i, /^апр/i, /^ма[й|я]/i, /^июн/i, /^июл/i, /^авг/i, /^сен/i, /^окт/i, /^ноя/i, /^дек/i], longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY г.', LLL : 'D MMMM YYYY г., LT', @@ -7613,18 +8154,26 @@ nextWeek: function () { return this.day() === 2 ? '[Во] dddd [в] LT' : '[В] dddd [в] LT'; }, - lastWeek: function () { - switch (this.day()) { - case 0: - return '[В прошлое] dddd [в] LT'; - case 1: - case 2: - case 4: - return '[В прошлый] dddd [в] LT'; - case 3: - case 5: - case 6: - return '[В прошлую] dddd [в] LT'; + lastWeek: function (now) { + if (now.week() !== this.week()) { + switch (this.day()) { + case 0: + return '[В прошлое] dddd [в] LT'; + case 1: + case 2: + case 4: + return '[В прошлый] dddd [в] LT'; + case 3: + case 5: + case 6: + return '[В прошлую] dddd [в] LT'; + } + } else { + if (this.day() === 2) { + return '[Во] dddd [в] LT'; + } else { + return '[В] dddd [в] LT'; + } } }, sameElse: 'L' @@ -7662,6 +8211,7 @@ } }, + ordinalParse: /\d{1,2}-(й|го|я)/, ordinal: function (number, period) { switch (period) { case 'M': @@ -7768,6 +8318,7 @@ weekdaysMin : 'ne_po_ut_st_št_pi_so'.split('_'), longDateFormat : { LT: 'H:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -7827,6 +8378,7 @@ y : translate, yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -7910,6 +8462,7 @@ weekdaysMin : 'ne_po_to_sr_če_pe_so'.split('_'), longDateFormat : { LT : 'H:mm', + LTS : 'LT:ss', L : 'DD. MM. YYYY', LL : 'D. MMMM YYYY', LLL : 'D. MMMM YYYY LT', @@ -7965,6 +8518,7 @@ y : 'eno leto', yy : translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -7987,11 +8541,16 @@ weekdays : 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split('_'), weekdaysShort : 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'), weekdaysMin : 'D_H_Ma_Më_E_P_Sh'.split('_'), + meridiemParse: /PD|MD/, + isPM: function (input) { + return input.charAt(0) === 'M'; + }, meridiem : function (hours, minutes, isLower) { return hours < 12 ? 'PD' : 'MD'; }, longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -8020,6 +8579,7 @@ y : 'një vit', yy : '%d vite' }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -8065,6 +8625,7 @@ weekdaysMin: ['не', 'по', 'ут', 'ср', 'че', 'пе', 'су'], longDateFormat: { LT: 'H:mm', + LTS : 'LT:ss', L: 'DD. MM. YYYY', LL: 'D. MMMM YYYY', LLL: 'D. MMMM YYYY LT', @@ -8119,6 +8680,7 @@ y : 'годину', yy : translator.translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -8164,6 +8726,7 @@ weekdaysMin: ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'], longDateFormat: { LT: 'H:mm', + LTS : 'LT:ss', L: 'DD. MM. YYYY', LL: 'D. MMMM YYYY', LLL: 'D. MMMM YYYY LT', @@ -8218,6 +8781,7 @@ y : 'godinu', yy : translator.translate }, + ordinalParse: /\d{1,2}\./, ordinal : '%d.', week : { dow : 1, // Monday is the first day of the week. @@ -8240,6 +8804,7 @@ weekdaysMin : 'sö_må_ti_on_to_fr_lö'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'YYYY-MM-DD', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -8268,6 +8833,7 @@ y : 'ett år', yy : '%d år' }, + ordinalParse: /\d{1,2}(e|a)/, ordinal : function (number) { var b = number % 10, output = (~~(number % 100 / 10) === 1) ? 'e' : @@ -8322,6 +8888,7 @@ weekdaysMin : 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY, LT', @@ -8360,26 +8927,43 @@ return symbolMap[match]; }); },*/ + ordinalParse: /\d{1,2}வது/, ordinal : function (number) { return number + 'வது'; }, // refer http://ta.wikipedia.org/s/1er1 - + meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/, meridiem : function (hour, minute, isLower) { - if (hour >= 6 && hour <= 10) { - return ' காலை'; - } else if (hour >= 10 && hour <= 14) { - return ' நண்பகல்'; - } else if (hour >= 14 && hour <= 18) { - return ' எற்பாடு'; - } else if (hour >= 18 && hour <= 20) { - return ' மாலை'; - } else if (hour >= 20 && hour <= 24) { - return ' இரவு'; - } else if (hour >= 0 && hour <= 6) { - return ' வைகறை'; + if (hour < 2) { + return ' யாமம்'; + } else if (hour < 6) { + return ' வைகறை'; // வைகறை + } else if (hour < 10) { + return ' காலை'; // காலை + } else if (hour < 14) { + return ' நண்பகல்'; // நண்பகல் + } else if (hour < 18) { + return ' எற்பாடு'; // எற்பாடு + } else if (hour < 22) { + return ' மாலை'; // மாலை + } else { + return ' யாமம்'; + } + }, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'யாமம்') { + return hour < 2 ? hour : hour + 12; + } else if (meridiem === 'வைகறை' || meridiem === 'காலை') { + return hour; + } else if (meridiem === 'நண்பகல்') { + return hour >= 10 ? hour : hour + 12; + } else { + return hour + 12; } }, week : { @@ -8403,11 +8987,16 @@ weekdaysMin : 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'), longDateFormat : { LT : 'H นาฬิกา m นาที', + LTS : 'LT s วินาที', L : 'YYYY/MM/DD', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY เวลา LT', LLLL : 'วันddddที่ D MMMM YYYY เวลา LT' }, + meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/, + isPM: function (input) { + return input === 'หลังเที่ยง'; + }, meridiem : function (hour, minute, isLower) { if (hour < 12) { return 'ก่อนเที่ยง'; @@ -8455,6 +9044,7 @@ weekdaysMin : 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'MM/D/YYYY', LL : 'MMMM D, YYYY', LLL : 'MMMM D, YYYY LT', @@ -8483,6 +9073,7 @@ y : 'isang taon', yy : '%d taon' }, + ordinalParse: /\d{1,2}/, ordinal : function (number) { return number; }, @@ -8534,6 +9125,7 @@ weekdaysMin : 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -8562,6 +9154,7 @@ y : 'bir yıl', yy : '%d yıl' }, + ordinalParse: /\d{1,2}'(inci|nci|üncü|ncı|uncu|ıncı)/, ordinal : function (number) { if (number === 0) { // special case for zero return number + '\'ıncı'; @@ -8593,6 +9186,7 @@ weekdaysMin : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -8642,6 +9236,7 @@ weekdaysMin : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS: 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -8751,6 +9346,7 @@ weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD.MM.YYYY', LL : 'D MMMM YYYY р.', LLL : 'D MMMM YYYY р., LT', @@ -8794,6 +9390,10 @@ // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason + meridiemParse: /ночі|ранку|дня|вечора/, + isPM: function (input) { + return /^(дня|вечора)$/.test(input); + }, meridiem : function (hour, minute, isLower) { if (hour < 4) { return 'ночі'; @@ -8806,6 +9406,7 @@ } }, + ordinalParse: /\d{1,2}-(й|го)/, ordinal: function (number, period) { switch (period) { case 'M': @@ -8842,6 +9443,7 @@ weekdaysMin : 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM YYYY', LLL : 'D MMMM YYYY LT', @@ -8891,6 +9493,7 @@ weekdaysMin : 'CN_T2_T3_T4_T5_T6_T7'.split('_'), longDateFormat : { LT : 'HH:mm', + LTS : 'LT:ss', L : 'DD/MM/YYYY', LL : 'D MMMM [năm] YYYY', LLL : 'D MMMM [năm] YYYY LT', @@ -8923,6 +9526,7 @@ y : 'một năm', yy : '%d năm' }, + ordinalParse: /\d{1,2}/, ordinal : function (number) { return number; }, @@ -8948,6 +9552,7 @@ weekdaysMin : '日_一_二_三_四_五_六'.split('_'), longDateFormat : { LT : 'Ah点mm', + LTS : 'Ah点m分s秒', L : 'YYYY-MM-DD', LL : 'YYYY年MMMD日', LLL : 'YYYY年MMMD日LT', @@ -8957,6 +9562,21 @@ lll : 'YYYY年MMMD日LT', llll : 'YYYY年MMMD日ddddLT' }, + meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === '凌晨' || meridiem === '早上' || + meridiem === '上午') { + return hour; + } else if (meridiem === '下午' || meridiem === '晚上') { + return hour + 12; + } else { + // '中午' + return hour >= 11 ? hour : hour + 12; + } + }, meridiem : function (hour, minute, isLower) { var hm = hour * 100 + minute; if (hm < 600) { @@ -8997,6 +9617,7 @@ }, sameElse : 'LL' }, + ordinalParse: /\d{1,2}(日|月|周)/, ordinal : function (number, period) { switch (period) { case 'd': @@ -9049,6 +9670,7 @@ weekdaysMin : '日_一_二_三_四_五_六'.split('_'), longDateFormat : { LT : 'Ah點mm', + LTS : 'Ah點m分s秒', L : 'YYYY年MMMD日', LL : 'YYYY年MMMD日', LLL : 'YYYY年MMMD日LT', @@ -9058,6 +9680,19 @@ lll : 'YYYY年MMMD日LT', llll : 'YYYY年MMMD日ddddLT' }, + meridiemParse: /早上|上午|中午|下午|晚上/, + meridiemHour : function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === '早上' || meridiem === '上午') { + return hour; + } else if (meridiem === '中午') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === '下午' || meridiem === '晚上') { + return hour + 12; + } + }, meridiem : function (hour, minute, isLower) { var hm = hour * 100 + minute; if (hm < 900) { @@ -9080,6 +9715,7 @@ lastWeek : '[上]ddddLT', sameElse : 'L' }, + ordinalParse: /\d{1,2}(日|月|週)/, ordinal : function (number, period) { switch (period) { case 'd' : @@ -9141,7 +9777,7 @@ if (hasModule) { module.exports = moment; } else if (typeof define === 'function' && define.amd) { - define('moment', function (require, exports, module) { + define(function (require, exports, module) { if (module.config && module.config() && module.config().noGlobal === true) { // release the global variable globalScope.moment = oldGlobalMoment; diff --git a/public/app/bower_components/moment/min/moment-with-locales.min.js b/public/app/bower_components/moment/min/moment-with-locales.min.js index 87d16209..f6043488 100644 --- a/public/app/bower_components/moment/min/moment-with-locales.min.js +++ b/public/app/bower_components/moment/min/moment-with-locales.min.js @@ -1,10 +1,10 @@ //! moment.js -//! version : 2.8.3 +//! version : 2.9.0 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT //! momentjs.com -(function(a){function b(a,b,c){switch(arguments.length){case 2:return null!=a?a:b;case 3:return null!=a?a:null!=b?b:c;default:throw new Error("Implement me")}}function c(a,b){return zb.call(a,b)}function d(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1}}function e(a){tb.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+a)}function f(a,b){var c=!0;return m(function(){return c&&(e(a),c=!1),b.apply(this,arguments)},b)}function g(a,b){qc[a]||(e(b),qc[a]=!0)}function h(a,b){return function(c){return p(a.call(this,c),b)}}function i(a,b){return function(c){return this.localeData().ordinal(a.call(this,c),b)}}function j(){}function k(a,b){b!==!1&&F(a),n(this,a),this._d=new Date(+a._d)}function l(a){var b=y(a),c=b.year||0,d=b.quarter||0,e=b.month||0,f=b.week||0,g=b.day||0,h=b.hour||0,i=b.minute||0,j=b.second||0,k=b.millisecond||0;this._milliseconds=+k+1e3*j+6e4*i+36e5*h,this._days=+g+7*f,this._months=+e+3*d+12*c,this._data={},this._locale=tb.localeData(),this._bubble()}function m(a,b){for(var d in b)c(b,d)&&(a[d]=b[d]);return c(b,"toString")&&(a.toString=b.toString),c(b,"valueOf")&&(a.valueOf=b.valueOf),a}function n(a,b){var c,d,e;if("undefined"!=typeof b._isAMomentObject&&(a._isAMomentObject=b._isAMomentObject),"undefined"!=typeof b._i&&(a._i=b._i),"undefined"!=typeof b._f&&(a._f=b._f),"undefined"!=typeof b._l&&(a._l=b._l),"undefined"!=typeof b._strict&&(a._strict=b._strict),"undefined"!=typeof b._tzm&&(a._tzm=b._tzm),"undefined"!=typeof b._isUTC&&(a._isUTC=b._isUTC),"undefined"!=typeof b._offset&&(a._offset=b._offset),"undefined"!=typeof b._pf&&(a._pf=b._pf),"undefined"!=typeof b._locale&&(a._locale=b._locale),Ib.length>0)for(c in Ib)d=Ib[c],e=b[d],"undefined"!=typeof e&&(a[d]=e);return a}function o(a){return 0>a?Math.ceil(a):Math.floor(a)}function p(a,b,c){for(var d=""+Math.abs(a),e=a>=0;d.lengthd;d++)(c&&a[d]!==b[d]||!c&&A(a[d])!==A(b[d]))&&g++;return g+f}function x(a){if(a){var b=a.toLowerCase().replace(/(.)s$/,"$1");a=jc[a]||kc[b]||b}return a}function y(a){var b,d,e={};for(d in a)c(a,d)&&(b=x(d),b&&(e[b]=a[d]));return e}function z(b){var c,d;if(0===b.indexOf("week"))c=7,d="day";else{if(0!==b.indexOf("month"))return;c=12,d="month"}tb[b]=function(e,f){var g,h,i=tb._locale[b],j=[];if("number"==typeof e&&(f=e,e=a),h=function(a){var b=tb().utc().set(d,a);return i.call(tb._locale,b,e||"")},null!=f)return h(f);for(g=0;c>g;g++)j.push(h(g));return j}}function A(a){var b=+a,c=0;return 0!==b&&isFinite(b)&&(c=b>=0?Math.floor(b):Math.ceil(b)),c}function B(a,b){return new Date(Date.UTC(a,b+1,0)).getUTCDate()}function C(a,b,c){return hb(tb([a,11,31+b-c]),b,c).week}function D(a){return E(a)?366:365}function E(a){return a%4===0&&a%100!==0||a%400===0}function F(a){var b;a._a&&-2===a._pf.overflow&&(b=a._a[Bb]<0||a._a[Bb]>11?Bb:a._a[Cb]<1||a._a[Cb]>B(a._a[Ab],a._a[Bb])?Cb:a._a[Db]<0||a._a[Db]>23?Db:a._a[Eb]<0||a._a[Eb]>59?Eb:a._a[Fb]<0||a._a[Fb]>59?Fb:a._a[Gb]<0||a._a[Gb]>999?Gb:-1,a._pf._overflowDayOfYear&&(Ab>b||b>Cb)&&(b=Cb),a._pf.overflow=b)}function G(a){return null==a._isValid&&(a._isValid=!isNaN(a._d.getTime())&&a._pf.overflow<0&&!a._pf.empty&&!a._pf.invalidMonth&&!a._pf.nullInput&&!a._pf.invalidFormat&&!a._pf.userInvalidated,a._strict&&(a._isValid=a._isValid&&0===a._pf.charsLeftOver&&0===a._pf.unusedTokens.length)),a._isValid}function H(a){return a?a.toLowerCase().replace("_","-"):a}function I(a){for(var b,c,d,e,f=0;f0;){if(d=J(e.slice(0,b).join("-")))return d;if(c&&c.length>=b&&w(e,c,!0)>=b-1)break;b--}f++}return null}function J(a){var b=null;if(!Hb[a]&&Jb)try{b=tb.locale(),require("./locale/"+a),tb.locale(b)}catch(c){}return Hb[a]}function K(a,b){return b._isUTC?tb(a).zone(b._offset||0):tb(a).local()}function L(a){return a.match(/\[[\s\S]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"")}function M(a){var b,c,d=a.match(Nb);for(b=0,c=d.length;c>b;b++)d[b]=pc[d[b]]?pc[d[b]]:L(d[b]);return function(e){var f="";for(b=0;c>b;b++)f+=d[b]instanceof Function?d[b].call(e,a):d[b];return f}}function N(a,b){return a.isValid()?(b=O(b,a.localeData()),lc[b]||(lc[b]=M(b)),lc[b](a)):a.localeData().invalidDate()}function O(a,b){function c(a){return b.longDateFormat(a)||a}var d=5;for(Ob.lastIndex=0;d>=0&&Ob.test(a);)a=a.replace(Ob,c),Ob.lastIndex=0,d-=1;return a}function P(a,b){var c,d=b._strict;switch(a){case"Q":return Zb;case"DDDD":return _b;case"YYYY":case"GGGG":case"gggg":return d?ac:Rb;case"Y":case"G":case"g":return cc;case"YYYYYY":case"YYYYY":case"GGGGG":case"ggggg":return d?bc:Sb;case"S":if(d)return Zb;case"SS":if(d)return $b;case"SSS":if(d)return _b;case"DDD":return Qb;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":return Ub;case"a":case"A":return b._locale._meridiemParse;case"X":return Xb;case"Z":case"ZZ":return Vb;case"T":return Wb;case"SSSS":return Tb;case"MM":case"DD":case"YY":case"GG":case"gg":case"HH":case"hh":case"mm":case"ss":case"ww":case"WW":return d?$b:Pb;case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"W":case"e":case"E":return Pb;case"Do":return Yb;default:return c=new RegExp(Y(X(a.replace("\\","")),"i"))}}function Q(a){a=a||"";var b=a.match(Vb)||[],c=b[b.length-1]||[],d=(c+"").match(hc)||["-",0,0],e=+(60*d[1])+A(d[2]);return"+"===d[0]?-e:e}function R(a,b,c){var d,e=c._a;switch(a){case"Q":null!=b&&(e[Bb]=3*(A(b)-1));break;case"M":case"MM":null!=b&&(e[Bb]=A(b)-1);break;case"MMM":case"MMMM":d=c._locale.monthsParse(b),null!=d?e[Bb]=d:c._pf.invalidMonth=b;break;case"D":case"DD":null!=b&&(e[Cb]=A(b));break;case"Do":null!=b&&(e[Cb]=A(parseInt(b,10)));break;case"DDD":case"DDDD":null!=b&&(c._dayOfYear=A(b));break;case"YY":e[Ab]=tb.parseTwoDigitYear(b);break;case"YYYY":case"YYYYY":case"YYYYYY":e[Ab]=A(b);break;case"a":case"A":c._isPm=c._locale.isPM(b);break;case"H":case"HH":case"h":case"hh":e[Db]=A(b);break;case"m":case"mm":e[Eb]=A(b);break;case"s":case"ss":e[Fb]=A(b);break;case"S":case"SS":case"SSS":case"SSSS":e[Gb]=A(1e3*("0."+b));break;case"X":c._d=new Date(1e3*parseFloat(b));break;case"Z":case"ZZ":c._useUTC=!0,c._tzm=Q(b);break;case"dd":case"ddd":case"dddd":d=c._locale.weekdaysParse(b),null!=d?(c._w=c._w||{},c._w.d=d):c._pf.invalidWeekday=b;break;case"w":case"ww":case"W":case"WW":case"d":case"e":case"E":a=a.substr(0,1);case"gggg":case"GGGG":case"GGGGG":a=a.substr(0,2),b&&(c._w=c._w||{},c._w[a]=A(b));break;case"gg":case"GG":c._w=c._w||{},c._w[a]=tb.parseTwoDigitYear(b)}}function S(a){var c,d,e,f,g,h,i;c=a._w,null!=c.GG||null!=c.W||null!=c.E?(g=1,h=4,d=b(c.GG,a._a[Ab],hb(tb(),1,4).year),e=b(c.W,1),f=b(c.E,1)):(g=a._locale._week.dow,h=a._locale._week.doy,d=b(c.gg,a._a[Ab],hb(tb(),g,h).year),e=b(c.w,1),null!=c.d?(f=c.d,g>f&&++e):f=null!=c.e?c.e+g:g),i=ib(d,e,f,h,g),a._a[Ab]=i.year,a._dayOfYear=i.dayOfYear}function T(a){var c,d,e,f,g=[];if(!a._d){for(e=V(a),a._w&&null==a._a[Cb]&&null==a._a[Bb]&&S(a),a._dayOfYear&&(f=b(a._a[Ab],e[Ab]),a._dayOfYear>D(f)&&(a._pf._overflowDayOfYear=!0),d=db(f,0,a._dayOfYear),a._a[Bb]=d.getUTCMonth(),a._a[Cb]=d.getUTCDate()),c=0;3>c&&null==a._a[c];++c)a._a[c]=g[c]=e[c];for(;7>c;c++)a._a[c]=g[c]=null==a._a[c]?2===c?1:0:a._a[c];a._d=(a._useUTC?db:cb).apply(null,g),null!=a._tzm&&a._d.setUTCMinutes(a._d.getUTCMinutes()+a._tzm)}}function U(a){var b;a._d||(b=y(a._i),a._a=[b.year,b.month,b.day,b.hour,b.minute,b.second,b.millisecond],T(a))}function V(a){var b=new Date;return a._useUTC?[b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate()]:[b.getFullYear(),b.getMonth(),b.getDate()]}function W(a){if(a._f===tb.ISO_8601)return void $(a);a._a=[],a._pf.empty=!0;var b,c,d,e,f,g=""+a._i,h=g.length,i=0;for(d=O(a._f,a._locale).match(Nb)||[],b=0;b0&&a._pf.unusedInput.push(f),g=g.slice(g.indexOf(c)+c.length),i+=c.length),pc[e]?(c?a._pf.empty=!1:a._pf.unusedTokens.push(e),R(e,c,a)):a._strict&&!c&&a._pf.unusedTokens.push(e);a._pf.charsLeftOver=h-i,g.length>0&&a._pf.unusedInput.push(g),a._isPm&&a._a[Db]<12&&(a._a[Db]+=12),a._isPm===!1&&12===a._a[Db]&&(a._a[Db]=0),T(a),F(a)}function X(a){return a.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(a,b,c,d,e){return b||c||d||e})}function Y(a){return a.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function Z(a){var b,c,e,f,g;if(0===a._f.length)return a._pf.invalidFormat=!0,void(a._d=new Date(0/0));for(f=0;fg)&&(e=g,c=b));m(a,c||b)}function $(a){var b,c,d=a._i,e=dc.exec(d);if(e){for(a._pf.iso=!0,b=0,c=fc.length;c>b;b++)if(fc[b][1].exec(d)){a._f=fc[b][0]+(e[6]||" ");break}for(b=0,c=gc.length;c>b;b++)if(gc[b][1].exec(d)){a._f+=gc[b][0];break}d.match(Vb)&&(a._f+="Z"),W(a)}else a._isValid=!1}function _(a){$(a),a._isValid===!1&&(delete a._isValid,tb.createFromInputFallback(a))}function ab(a,b){var c,d=[];for(c=0;ca&&h.setFullYear(a),h}function db(a){var b=new Date(Date.UTC.apply(null,arguments));return 1970>a&&b.setUTCFullYear(a),b}function eb(a,b){if("string"==typeof a)if(isNaN(a)){if(a=b.weekdaysParse(a),"number"!=typeof a)return null}else a=parseInt(a,10);return a}function fb(a,b,c,d,e){return e.relativeTime(b||1,!!c,a,d)}function gb(a,b,c){var d=tb.duration(a).abs(),e=yb(d.as("s")),f=yb(d.as("m")),g=yb(d.as("h")),h=yb(d.as("d")),i=yb(d.as("M")),j=yb(d.as("y")),k=e0,k[4]=c,fb.apply({},k)}function hb(a,b,c){var d,e=c-b,f=c-a.day();return f>e&&(f-=7),e-7>f&&(f+=7),d=tb(a).add(f,"d"),{week:Math.ceil(d.dayOfYear()/7),year:d.year()}}function ib(a,b,c,d,e){var f,g,h=db(a,0,1).getUTCDay();return h=0===h?7:h,c=null!=c?c:e,f=e-h+(h>d?7:0)-(e>h?7:0),g=7*(b-1)+(c-e)+f+1,{year:g>0?a:a-1,dayOfYear:g>0?g:D(a-1)+g}}function jb(b){var c=b._i,d=b._f;return b._locale=b._locale||tb.localeData(b._l),null===c||d===a&&""===c?tb.invalid({nullInput:!0}):("string"==typeof c&&(b._i=c=b._locale.preparse(c)),tb.isMoment(c)?new k(c,!0):(d?u(d)?Z(b):W(b):bb(b),new k(b)))}function kb(a,b){var c,d;if(1===b.length&&u(b[0])&&(b=b[0]),!b.length)return tb();for(c=b[0],d=1;d=0?"+":"-";return b+p(Math.abs(a),6)},gg:function(){return p(this.weekYear()%100,2)},gggg:function(){return p(this.weekYear(),4)},ggggg:function(){return p(this.weekYear(),5)},GG:function(){return p(this.isoWeekYear()%100,2)},GGGG:function(){return p(this.isoWeekYear(),4)},GGGGG:function(){return p(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return A(this.milliseconds()/100)},SS:function(){return p(A(this.milliseconds()/10),2)},SSS:function(){return p(this.milliseconds(),3)},SSSS:function(){return p(this.milliseconds(),3)},Z:function(){var a=-this.zone(),b="+";return 0>a&&(a=-a,b="-"),b+p(A(a/60),2)+":"+p(A(a)%60,2)},ZZ:function(){var a=-this.zone(),b="+";return 0>a&&(a=-a,b="-"),b+p(A(a/60),2)+p(A(a)%60,2)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},X:function(){return this.unix()},Q:function(){return this.quarter()}},qc={},rc=["months","monthsShort","weekdays","weekdaysShort","weekdaysMin"];nc.length;)vb=nc.pop(),pc[vb+"o"]=i(pc[vb],vb);for(;oc.length;)vb=oc.pop(),pc[vb+vb]=h(pc[vb],2);pc.DDDD=h(pc.DDD,3),m(j.prototype,{set:function(a){var b,c;for(c in a)b=a[c],"function"==typeof b?this[c]=b:this["_"+c]=b},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(a){return this._months[a.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(a){return this._monthsShort[a.month()]},monthsParse:function(a){var b,c,d;for(this._monthsParse||(this._monthsParse=[]),b=0;12>b;b++)if(this._monthsParse[b]||(c=tb.utc([2e3,b]),d="^"+this.months(c,"")+"|^"+this.monthsShort(c,""),this._monthsParse[b]=new RegExp(d.replace(".",""),"i")),this._monthsParse[b].test(a))return b},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(a){return this._weekdays[a.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(a){return this._weekdaysShort[a.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(a){return this._weekdaysMin[a.day()]},weekdaysParse:function(a){var b,c,d;for(this._weekdaysParse||(this._weekdaysParse=[]),b=0;7>b;b++)if(this._weekdaysParse[b]||(c=tb([2e3,1]).day(b),d="^"+this.weekdays(c,"")+"|^"+this.weekdaysShort(c,"")+"|^"+this.weekdaysMin(c,""),this._weekdaysParse[b]=new RegExp(d.replace(".",""),"i")),this._weekdaysParse[b].test(a))return b},_longDateFormat:{LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM D, YYYY LT"},longDateFormat:function(a){var b=this._longDateFormat[a];return!b&&this._longDateFormat[a.toUpperCase()]&&(b=this._longDateFormat[a.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(a){return a.slice(1)}),this._longDateFormat[a]=b),b},isPM:function(a){return"p"===(a+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(a,b,c){return a>11?c?"pm":"PM":c?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},calendar:function(a,b){var c=this._calendar[a];return"function"==typeof c?c.apply(b):c},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(a,b,c,d){var e=this._relativeTime[c];return"function"==typeof e?e(a,b,c,d):e.replace(/%d/i,a)},pastFuture:function(a,b){var c=this._relativeTime[a>0?"future":"past"];return"function"==typeof c?c(b):c.replace(/%s/i,b)},ordinal:function(a){return this._ordinal.replace("%d",a)},_ordinal:"%d",preparse:function(a){return a},postformat:function(a){return a},week:function(a){return hb(a,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6},_invalidDate:"Invalid date",invalidDate:function(){return this._invalidDate}}),tb=function(b,c,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._i=b,g._f=c,g._l=e,g._strict=f,g._isUTC=!1,g._pf=d(),jb(g)},tb.suppressDeprecationWarnings=!1,tb.createFromInputFallback=f("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(a){a._d=new Date(a._i)}),tb.min=function(){var a=[].slice.call(arguments,0);return kb("isBefore",a)},tb.max=function(){var a=[].slice.call(arguments,0);return kb("isAfter",a)},tb.utc=function(b,c,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._useUTC=!0,g._isUTC=!0,g._l=e,g._i=b,g._f=c,g._strict=f,g._pf=d(),jb(g).utc()},tb.unix=function(a){return tb(1e3*a)},tb.duration=function(a,b){var d,e,f,g,h=a,i=null;return tb.isDuration(a)?h={ms:a._milliseconds,d:a._days,M:a._months}:"number"==typeof a?(h={},b?h[b]=a:h.milliseconds=a):(i=Lb.exec(a))?(d="-"===i[1]?-1:1,h={y:0,d:A(i[Cb])*d,h:A(i[Db])*d,m:A(i[Eb])*d,s:A(i[Fb])*d,ms:A(i[Gb])*d}):(i=Mb.exec(a))?(d="-"===i[1]?-1:1,f=function(a){var b=a&&parseFloat(a.replace(",","."));return(isNaN(b)?0:b)*d},h={y:f(i[2]),M:f(i[3]),d:f(i[4]),h:f(i[5]),m:f(i[6]),s:f(i[7]),w:f(i[8])}):"object"==typeof h&&("from"in h||"to"in h)&&(g=r(tb(h.from),tb(h.to)),h={},h.ms=g.milliseconds,h.M=g.months),e=new l(h),tb.isDuration(a)&&c(a,"_locale")&&(e._locale=a._locale),e},tb.version=wb,tb.defaultFormat=ec,tb.ISO_8601=function(){},tb.momentProperties=Ib,tb.updateOffset=function(){},tb.relativeTimeThreshold=function(b,c){return mc[b]===a?!1:c===a?mc[b]:(mc[b]=c,!0)},tb.lang=f("moment.lang is deprecated. Use moment.locale instead.",function(a,b){return tb.locale(a,b)}),tb.locale=function(a,b){var c;return a&&(c="undefined"!=typeof b?tb.defineLocale(a,b):tb.localeData(a),c&&(tb.duration._locale=tb._locale=c)),tb._locale._abbr},tb.defineLocale=function(a,b){return null!==b?(b.abbr=a,Hb[a]||(Hb[a]=new j),Hb[a].set(b),tb.locale(a),Hb[a]):(delete Hb[a],null)},tb.langData=f("moment.langData is deprecated. Use moment.localeData instead.",function(a){return tb.localeData(a)}),tb.localeData=function(a){var b;if(a&&a._locale&&a._locale._abbr&&(a=a._locale._abbr),!a)return tb._locale;if(!u(a)){if(b=J(a))return b;a=[a]}return I(a)},tb.isMoment=function(a){return a instanceof k||null!=a&&c(a,"_isAMomentObject")},tb.isDuration=function(a){return a instanceof l};for(vb=rc.length-1;vb>=0;--vb)z(rc[vb]);tb.normalizeUnits=function(a){return x(a)},tb.invalid=function(a){var b=tb.utc(0/0);return null!=a?m(b._pf,a):b._pf.userInvalidated=!0,b},tb.parseZone=function(){return tb.apply(null,arguments).parseZone()},tb.parseTwoDigitYear=function(a){return A(a)+(A(a)>68?1900:2e3)},m(tb.fn=k.prototype,{clone:function(){return tb(this)},valueOf:function(){return+this._d+6e4*(this._offset||0)},unix:function(){return Math.floor(+this/1e3)},toString:function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){var a=tb(this).utc();return 00:!1},parsingFlags:function(){return m({},this._pf)},invalidAt:function(){return this._pf.overflow},utc:function(a){return this.zone(0,a)},local:function(a){return this._isUTC&&(this.zone(0,a),this._isUTC=!1,a&&this.add(this._dateTzOffset(),"m")),this},format:function(a){var b=N(this,a||tb.defaultFormat);return this.localeData().postformat(b)},add:s(1,"add"),subtract:s(-1,"subtract"),diff:function(a,b,c){var d,e,f,g=K(a,this),h=6e4*(this.zone()-g.zone());return b=x(b),"year"===b||"month"===b?(d=432e5*(this.daysInMonth()+g.daysInMonth()),e=12*(this.year()-g.year())+(this.month()-g.month()),f=this-tb(this).startOf("month")-(g-tb(g).startOf("month")),f-=6e4*(this.zone()-tb(this).startOf("month").zone()-(g.zone()-tb(g).startOf("month").zone())),e+=f/d,"year"===b&&(e/=12)):(d=this-g,e="second"===b?d/1e3:"minute"===b?d/6e4:"hour"===b?d/36e5:"day"===b?(d-h)/864e5:"week"===b?(d-h)/6048e5:d),c?e:o(e)},from:function(a,b){return tb.duration({to:this,from:a}).locale(this.locale()).humanize(!b)},fromNow:function(a){return this.from(tb(),a)},calendar:function(a){var b=a||tb(),c=K(b,this).startOf("day"),d=this.diff(c,"days",!0),e=-6>d?"sameElse":-1>d?"lastWeek":0>d?"lastDay":1>d?"sameDay":2>d?"nextDay":7>d?"nextWeek":"sameElse";return this.format(this.localeData().calendar(e,this))},isLeapYear:function(){return E(this.year())},isDST:function(){return this.zone()+a):+this.clone().startOf(b)>+tb(a).startOf(b)},isBefore:function(a,b){return b=x("undefined"!=typeof b?b:"millisecond"),"millisecond"===b?(a=tb.isMoment(a)?a:tb(a),+a>+this):+this.clone().startOf(b)<+tb(a).startOf(b)},isSame:function(a,b){return b=x(b||"millisecond"),"millisecond"===b?(a=tb.isMoment(a)?a:tb(a),+this===+a):+this.clone().startOf(b)===+K(a,this).startOf(b)},min:f("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(a){return a=tb.apply(null,arguments),this>a?this:a}),max:f("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(a){return a=tb.apply(null,arguments),a>this?this:a}),zone:function(a,b){var c,d=this._offset||0;return null==a?this._isUTC?d:this._dateTzOffset():("string"==typeof a&&(a=Q(a)),Math.abs(a)<16&&(a=60*a),!this._isUTC&&b&&(c=this._dateTzOffset()),this._offset=a,this._isUTC=!0,null!=c&&this.subtract(c,"m"),d!==a&&(!b||this._changeInProgress?t(this,tb.duration(d-a,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,tb.updateOffset(this,!0),this._changeInProgress=null)),this)},zoneAbbr:function(){return this._isUTC?"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},parseZone:function(){return this._tzm?this.zone(this._tzm):"string"==typeof this._i&&this.zone(this._i),this},hasAlignedHourOffset:function(a){return a=a?tb(a).zone():0,(this.zone()-a)%60===0},daysInMonth:function(){return B(this.year(),this.month())},dayOfYear:function(a){var b=yb((tb(this).startOf("day")-tb(this).startOf("year"))/864e5)+1;return null==a?b:this.add(a-b,"d")},quarter:function(a){return null==a?Math.ceil((this.month()+1)/3):this.month(3*(a-1)+this.month()%3)},weekYear:function(a){var b=hb(this,this.localeData()._week.dow,this.localeData()._week.doy).year;return null==a?b:this.add(a-b,"y")},isoWeekYear:function(a){var b=hb(this,1,4).year;return null==a?b:this.add(a-b,"y")},week:function(a){var b=this.localeData().week(this);return null==a?b:this.add(7*(a-b),"d")},isoWeek:function(a){var b=hb(this,1,4).week;return null==a?b:this.add(7*(a-b),"d")},weekday:function(a){var b=(this.day()+7-this.localeData()._week.dow)%7;return null==a?b:this.add(a-b,"d")},isoWeekday:function(a){return null==a?this.day()||7:this.day(this.day()%7?a:a-7)},isoWeeksInYear:function(){return C(this.year(),1,4)},weeksInYear:function(){var a=this.localeData()._week;return C(this.year(),a.dow,a.doy)},get:function(a){return a=x(a),this[a]()},set:function(a,b){return a=x(a),"function"==typeof this[a]&&this[a](b),this},locale:function(b){var c;return b===a?this._locale._abbr:(c=tb.localeData(b),null!=c&&(this._locale=c),this)},lang:f("moment().lang() is deprecated. Use moment().localeData() instead.",function(b){return b===a?this.localeData():this.locale(b)}),localeData:function(){return this._locale},_dateTzOffset:function(){return 15*Math.round(this._d.getTimezoneOffset()/15)}}),tb.fn.millisecond=tb.fn.milliseconds=ob("Milliseconds",!1),tb.fn.second=tb.fn.seconds=ob("Seconds",!1),tb.fn.minute=tb.fn.minutes=ob("Minutes",!1),tb.fn.hour=tb.fn.hours=ob("Hours",!0),tb.fn.date=ob("Date",!0),tb.fn.dates=f("dates accessor is deprecated. Use date instead.",ob("Date",!0)),tb.fn.year=ob("FullYear",!0),tb.fn.years=f("years accessor is deprecated. Use year instead.",ob("FullYear",!0)),tb.fn.days=tb.fn.day,tb.fn.months=tb.fn.month,tb.fn.weeks=tb.fn.week,tb.fn.isoWeeks=tb.fn.isoWeek,tb.fn.quarters=tb.fn.quarter,tb.fn.toJSON=tb.fn.toISOString,m(tb.duration.fn=l.prototype,{_bubble:function(){var a,b,c,d=this._milliseconds,e=this._days,f=this._months,g=this._data,h=0;g.milliseconds=d%1e3,a=o(d/1e3),g.seconds=a%60,b=o(a/60),g.minutes=b%60,c=o(b/60),g.hours=c%24,e+=o(c/24),h=o(pb(e)),e-=o(qb(h)),f+=o(e/30),e%=30,h+=o(f/12),f%=12,g.days=e,g.months=f,g.years=h},abs:function(){return this._milliseconds=Math.abs(this._milliseconds),this._days=Math.abs(this._days),this._months=Math.abs(this._months),this._data.milliseconds=Math.abs(this._data.milliseconds),this._data.seconds=Math.abs(this._data.seconds),this._data.minutes=Math.abs(this._data.minutes),this._data.hours=Math.abs(this._data.hours),this._data.months=Math.abs(this._data.months),this._data.years=Math.abs(this._data.years),this},weeks:function(){return o(this.days()/7)},valueOf:function(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*A(this._months/12)},humanize:function(a){var b=gb(this,!a,this.localeData());return a&&(b=this.localeData().pastFuture(+this,b)),this.localeData().postformat(b)},add:function(a,b){var c=tb.duration(a,b);return this._milliseconds+=c._milliseconds,this._days+=c._days,this._months+=c._months,this._bubble(),this},subtract:function(a,b){var c=tb.duration(a,b);return this._milliseconds-=c._milliseconds,this._days-=c._days,this._months-=c._months,this._bubble(),this},get:function(a){return a=x(a),this[a.toLowerCase()+"s"]()},as:function(a){var b,c;if(a=x(a),"month"===a||"year"===a)return b=this._days+this._milliseconds/864e5,c=this._months+12*pb(b),"month"===a?c:c/12;switch(b=this._days+qb(this._months/12),a){case"week":return b/7+this._milliseconds/6048e5;case"day":return b+this._milliseconds/864e5;case"hour":return 24*b+this._milliseconds/36e5;case"minute":return 24*b*60+this._milliseconds/6e4;case"second":return 24*b*60*60+this._milliseconds/1e3;case"millisecond":return Math.floor(24*b*60*60*1e3)+this._milliseconds;default:throw new Error("Unknown unit "+a)}},lang:tb.fn.lang,locale:tb.fn.locale,toIsoString:f("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",function(){return this.toISOString()}),toISOString:function(){var a=Math.abs(this.years()),b=Math.abs(this.months()),c=Math.abs(this.days()),d=Math.abs(this.hours()),e=Math.abs(this.minutes()),f=Math.abs(this.seconds()+this.milliseconds()/1e3);return this.asSeconds()?(this.asSeconds()<0?"-":"")+"P"+(a?a+"Y":"")+(b?b+"M":"")+(c?c+"D":"")+(d||e||f?"T":"")+(d?d+"H":"")+(e?e+"M":"")+(f?f+"S":""):"P0D"},localeData:function(){return this._locale}}),tb.duration.fn.toString=tb.duration.fn.toISOString;for(vb in ic)c(ic,vb)&&rb(vb.toLowerCase());tb.duration.fn.asMilliseconds=function(){return this.as("ms")},tb.duration.fn.asSeconds=function(){return this.as("s")},tb.duration.fn.asMinutes=function(){return this.as("m")},tb.duration.fn.asHours=function(){return this.as("h")},tb.duration.fn.asDays=function(){return this.as("d")},tb.duration.fn.asWeeks=function(){return this.as("weeks")},tb.duration.fn.asMonths=function(){return this.as("M")},tb.duration.fn.asYears=function(){return this.as("y")},tb.locale("en",{ordinal:function(a){var b=a%10,c=1===A(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th"; -return a+c}}),function(a){a(tb)}(function(a){return a.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiem:function(a,b,c){return 12>a?c?"vm":"VM":c?"nm":"NM"},longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[Môre om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},ordinal:function(a){return a+(1===a||8===a||a>=20?"ste":"de")},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})}),function(a){a(tb)}(function(a){var b={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},c={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"};return a.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},meridiem:function(a){return 12>a?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(a){return a.replace(/[۰-۹]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},week:{dow:6,doy:12}})}),function(a){a(tb)}(function(a){var b={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},c={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},d=function(a){return 0===a?0:1===a?1:2===a?2:a%100>=3&&10>=a%100?3:a%100>=11?4:5},e={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},f=function(a){return function(b,c){var f=d(b),g=e[a][d(b)];return 2===f&&(g=g[c?0:1]),g.replace(/%d/i,b)}},g=["كانون الثاني يناير","شباط فبراير","آذار مارس","نيسان أبريل","أيار مايو","حزيران يونيو","تموز يوليو","آب أغسطس","أيلول سبتمبر","تشرين الأول أكتوبر","تشرين الثاني نوفمبر","كانون الأول ديسمبر"];return a.defineLocale("ar",{months:g,monthsShort:g,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},meridiem:function(a){return 12>a?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:f("s"),m:f("m"),mm:f("m"),h:f("h"),hh:f("h"),d:f("d"),dd:f("d"),M:f("M"),MM:f("M"),y:f("y"),yy:f("y")},preparse:function(a){return a.replace(/[۰-۹]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},week:{dow:6,doy:12}})}),function(a){a(tb)}(function(a){var b={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"};return a.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"birneçə saniyyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiem:function(a){return 4>a?"gecə":12>a?"səhər":17>a?"gündüz":"axşam"},ordinal:function(a){if(0===a)return a+"-ıncı";var c=a%10,d=a%100-c,e=a>=100?100:null;return a+(b[c]||b[d]||b[e])},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:c?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:c?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"};return"m"===d?c?"хвіліна":"хвіліну":"h"===d?c?"гадзіна":"гадзіну":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_"),accusative:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),accusative:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_")},d=/\[ ?[Вв] ?(?:мінулую|наступную)? ?\] ?dddd/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("be",{months:d,monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:e,weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., LT",LLLL:"dddd, D MMMM YYYY г., LT"},calendar:{sameDay:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:c,mm:c,h:c,hh:c,d:"дзень",dd:c,M:"месяц",MM:c,y:"год",yy:c},meridiem:function(a){return 4>a?"ночы":12>a?"раніцы":17>a?"дня":"вечара"},ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":case"w":case"W":return a%10!==2&&a%10!==3||a%100===12||a%100===13?a+"-ы":a+"-і";case"D":return a+"-га";default:return a}},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"H:mm",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[В изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[В изминалия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дни",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},ordinal:function(a){var b=a%10,c=a%100;return 0===a?a+"-ев":0===c?a+"-ен":c>10&&20>c?a+"-ти":1===b?a+"-ви":2===b?a+"-ри":7===b||8===b?a+"-ми":a+"-ти"},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){var b={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},c={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"};return a.defineLocale("bn",{months:"জানুয়ারী_ফেবুয়ারী_মার্চ_এপ্রিল_মে_জুন_জুলাই_অগাস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব_মার্চ_এপর_মে_জুন_জুল_অগ_সেপ্ট_অক্টো_নভ_ডিসেম্".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পত্তিবার_শুক্রুবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পত্তি_শুক্রু_শনি".split("_"),weekdaysMin:"রব_সম_মঙ্গ_বু_ব্রিহ_শু_শনি".split("_"),longDateFormat:{LT:"A h:mm সময়",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কএক সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(a){return a.replace(/[১২৩৪৫৬৭৮৯০]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 4>a?"রাত":10>a?"শকাল":17>a?"দুপুর":20>a?"বিকেল":"রাত"},week:{dow:0,doy:6}})}),function(a){a(tb)}(function(a){var b={1:"༡",2:"༢",3:"༣",4:"༤",5:"༥",6:"༦",7:"༧",8:"༨",9:"༩",0:"༠"},c={"༡":"1","༢":"2","༣":"3","༤":"4","༥":"5","༦":"6","༧":"7","༨":"8","༩":"9","༠":"0"};return a.defineLocale("bo",{months:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),monthsShort:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),weekdays:"གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),weekdaysShort:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),weekdaysMin:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),longDateFormat:{LT:"A h:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[དི་རིང] LT",nextDay:"[སང་ཉིན] LT",nextWeek:"[བདུན་ཕྲག་རྗེས་མ], LT",lastDay:"[ཁ་སང] LT",lastWeek:"[བདུན་ཕྲག་མཐའ་མ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ལ་",past:"%s སྔན་ལ",s:"ལམ་སང",m:"སྐར་མ་གཅིག",mm:"%d སྐར་མ",h:"ཆུ་ཚོད་གཅིག",hh:"%d ཆུ་ཚོད",d:"ཉིན་གཅིག",dd:"%d ཉིན་",M:"ཟླ་བ་གཅིག",MM:"%d ཟླ་བ",y:"ལོ་གཅིག",yy:"%d ལོ"},preparse:function(a){return a.replace(/[༡༢༣༤༥༦༧༨༩༠]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 4>a?"མཚན་མོ":10>a?"ཞོགས་ཀས":17>a?"ཉིན་གུང":20>a?"དགོང་དག":"མཚན་མོ"},week:{dow:0,doy:6}})}),function(a){a(tb)}(function(b){function c(a,b,c){var d={mm:"munutenn",MM:"miz",dd:"devezh"};return a+" "+f(d[c],a)}function d(a){switch(e(a)){case 1:case 3:case 4:case 5:case 9:return a+" bloaz";default:return a+" vloaz"}}function e(a){return a>9?e(a%10):a}function f(a,b){return 2===b?g(a):a}function g(b){var c={m:"v",b:"v",d:"z"};return c[b.charAt(0)]===a?b:c[b.charAt(0)]+b.substring(1)}return b.defineLocale("br",{months:"Genver_C'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc'her_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),longDateFormat:{LT:"h[e]mm A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY LT",LLLL:"dddd, D [a viz] MMMM YYYY LT"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc'hoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec'h da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s 'zo",s:"un nebeud segondennoù",m:"ur vunutenn",mm:c,h:"un eur",hh:"%d eur",d:"un devezh",dd:c,M:"ur miz",MM:c,y:"ur bloaz",yy:d},ordinal:function(a){var b=1===a?"añ":"vet";return a+b},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"jedna minuta":"jedne minute";case"mm":return d+=1===a?"minuta":2===a||3===a||4===a?"minute":"minuta";case"h":return b?"jedan sat":"jednog sata";case"hh":return d+=1===a?"sat":2===a||3===a||4===a?"sata":"sati";case"dd":return d+=1===a?"dan":"dana";case"MM":return d+=1===a?"mjesec":2===a||3===a||4===a?"mjeseca":"mjeseci";case"yy":return d+=1===a?"godina":2===a||3===a||4===a?"godine":"godina"}}return a.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:b,mm:b,h:b,hh:b,d:"dan",dd:b,M:"mjesec",MM:b,y:"godinu",yy:b},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("ca",{months:"gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),monthsShort:"gen._febr._mar._abr._mai._jun._jul._ag._set._oct._nov._des.".split("_"),weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"Dg_Dl_Dt_Dc_Dj_Dv_Ds".split("_"),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[demà a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fa %s",s:"uns segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){function b(a){return a>1&&5>a&&1!==~~(a/10)}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"pár sekund":"pár sekundami";case"m":return c?"minuta":e?"minutu":"minutou";case"mm":return c||e?f+(b(a)?"minuty":"minut"):f+"minutami";break;case"h":return c?"hodina":e?"hodinu":"hodinou";case"hh":return c||e?f+(b(a)?"hodiny":"hodin"):f+"hodinami";break;case"d":return c||e?"den":"dnem";case"dd":return c||e?f+(b(a)?"dny":"dní"):f+"dny";break;case"M":return c||e?"měsíc":"měsícem";case"MM":return c||e?f+(b(a)?"měsíce":"měsíců"):f+"měsíci";break;case"y":return c||e?"rok":"rokem";case"yy":return c||e?f+(b(a)?"roky":"let"):f+"lety"}}var d="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),e="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_");return a.defineLocale("cs",{months:d,monthsShort:e,monthsParse:function(a,b){var c,d=[];for(c=0;12>c;c++)d[c]=new RegExp("^"+a[c]+"$|^"+b[c]+"$","i");return d}(d,e),weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("cv",{months:"кăрлач_нарăс_пуш_ака_май_çĕртме_утă_çурла_авăн_юпа_чӳк_раштав".split("_"),monthsShort:"кăр_нар_пуш_ака_май_çĕр_утă_çур_ав_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кĕçнерникун_эрнекун_шăматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кĕç_эрн_шăм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кç_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",L:"DD-MM-YYYY",LL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ]",LLL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT",LLLL:"dddd, YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ĕнер] LT [сехетре]",nextWeek:"[Çитес] dddd LT [сехетре]",lastWeek:"[Иртнĕ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(a){var b=/сехет$/i.exec(a)?"рен":/çул$/i.exec(a)?"тан":"ран";return a+b},past:"%s каялла",s:"пĕр-ик çеккунт",m:"пĕр минут",mm:"%d минут",h:"пĕр сехет",hh:"%d сехет",d:"пĕр кун",dd:"%d кун",M:"пĕр уйăх",MM:"%d уйăх",y:"пĕр çул",yy:"%d çул"},ordinal:"%d-мĕш",week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn ôl",s:"ychydig eiliadau",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},ordinal:function(a){var b=a,c="",d=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"];return b>20?c=40===b||50===b||60===b||80===b||100===b?"fed":"ain":b>0&&(c=d[b]),a+c},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd [d.] D. MMMM YYYY LT"},calendar:{sameDay:"[I dag kl.] LT",nextDay:"[I morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[I går kl.] LT",lastWeek:"[sidste] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){function b(a,b,c){var d={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[a+" Tage",a+" Tagen"],M:["ein Monat","einem Monat"],MM:[a+" Monate",a+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[a+" Jahre",a+" Jahren"]};return b?d[c][0]:d[c][1]}return a.defineLocale("de-at",{months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm [Uhr]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Heute um] LT",sameElse:"L",nextDay:"[Morgen um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gestern um] LT",lastWeek:"[letzten] dddd [um] LT"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:b,mm:"%d Minuten",h:b,hh:"%d Stunden",d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){function b(a,b,c){var d={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[a+" Tage",a+" Tagen"],M:["ein Monat","einem Monat"],MM:[a+" Monate",a+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[a+" Jahre",a+" Jahren"]};return b?d[c][0]:d[c][1]}return a.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm [Uhr]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Heute um] LT",sameElse:"L",nextDay:"[Morgen um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gestern um] LT",lastWeek:"[letzten] dddd [um] LT"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:b,mm:"%d Minuten",h:b,hh:"%d Stunden",d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(a,b){return/D/.test(b.substring(0,b.indexOf("MMMM")))?this._monthsGenitiveEl[a.month()]:this._monthsNominativeEl[a.month()]},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(a,b,c){return a>11?c?"μμ":"ΜΜ":c?"πμ":"ΠΜ"},isPM:function(a){return"μ"===(a+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/i,longDateFormat:{LT:"h:mm A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendarEl:{sameDay:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(a,b){var c=this._calendarEl[a],d=b&&b.hours();return"function"==typeof c&&(c=c.apply(b)),c.replace("{}",d%12===1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},ordinal:function(a){return a+"η"},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",L:"YYYY-MM-DD",LL:"D MMMM, YYYY",LLL:"D MMMM, YYYY LT",LLLL:"dddd, D MMMM, YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c}})}),function(a){a(tb)}(function(a){return a.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec".split("_"),weekdays:"Dimanĉo_Lundo_Mardo_Merkredo_Ĵaŭdo_Vendredo_Sabato".split("_"),weekdaysShort:"Dim_Lun_Mard_Merk_Ĵaŭ_Ven_Sab".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Ĵa_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D[-an de] MMMM, YYYY",LLL:"D[-an de] MMMM, YYYY LT",LLLL:"dddd, [la] D[-an de] MMMM, YYYY LT"},meridiem:function(a,b,c){return a>11?c?"p.t.m.":"P.T.M.":c?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd [je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"je %s",past:"antaŭ %s",s:"sekundoj",m:"minuto",mm:"%d minutoj",h:"horo",hh:"%d horoj",d:"tago",dd:"%d tagoj",M:"monato",MM:"%d monatoj",y:"jaro",yy:"%d jaroj"},ordinal:"%da",week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){var b="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),c="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_");return a.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(a,d){return/-MMM-/.test(d)?c[a.month()]:b[a.month()]},weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"Do_Lu_Ma_Mi_Ju_Vi_Sá".split("_"),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){function b(a,b,c,d){var e={s:["mõne sekundi","mõni sekund","paar sekundit"],m:["ühe minuti","üks minut"],mm:[a+" minuti",a+" minutit"],h:["ühe tunni","tund aega","üks tund"],hh:[a+" tunni",a+" tundi"],d:["ühe päeva","üks päev"],M:["kuu aja","kuu aega","üks kuu"],MM:[a+" kuu",a+" kuud"],y:["ühe aasta","aasta","üks aasta"],yy:[a+" aasta",a+" aastat"]};return b?e[c][2]?e[c][2]:e[c][1]:d?e[c][0]:e[c][1]}return a.defineLocale("et",{months:"jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Täna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:"%d päeva",M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}}) -}),function(a){a(tb)}(function(a){return a.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] LT",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] LT",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] LT",llll:"ddd, YYYY[ko] MMM D[a] LT"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){var b={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},c={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"};return a.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},meridiem:function(a){return 12>a?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چندین ثانیه",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(a){return a.replace(/[۰-۹]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},ordinal:"%dم",week:{dow:6,doy:12}})}),function(a){a(tb)}(function(a){function b(a,b,d,e){var f="";switch(d){case"s":return e?"muutaman sekunnin":"muutama sekunti";case"m":return e?"minuutin":"minuutti";case"mm":f=e?"minuutin":"minuuttia";break;case"h":return e?"tunnin":"tunti";case"hh":f=e?"tunnin":"tuntia";break;case"d":return e?"päivän":"päivä";case"dd":f=e?"päivän":"päivää";break;case"M":return e?"kuukauden":"kuukausi";case"MM":f=e?"kuukauden":"kuukautta";break;case"y":return e?"vuoden":"vuosi";case"yy":f=e?"vuoden":"vuotta"}return f=c(a,e)+" "+f}function c(a,b){return 10>a?b?e[a]:d[a]:a}var d="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),e=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",d[7],d[8],d[9]];return a.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] LT",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] LT",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] LT",llll:"ddd, Do MMM YYYY, [klo] LT"},calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("fo",{months:"januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_fr_le".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D. MMMM, YYYY LT"},calendar:{sameDay:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",m:"ein minutt",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaði",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("fr-ca",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinal:function(a){return a+(1===a?"er":"")}})}),function(a){a(tb)}(function(a){return a.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinal:function(a){return a+(1===a?"er":"")},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("gl",{months:"Xaneiro_Febreiro_Marzo_Abril_Maio_Xuño_Xullo_Agosto_Setembro_Outubro_Novembro_Decembro".split("_"),monthsShort:"Xan._Feb._Mar._Abr._Mai._Xuñ._Xul._Ago._Set._Out._Nov._Dec.".split("_"),weekdays:"Domingo_Luns_Martes_Mércores_Xoves_Venres_Sábado".split("_"),weekdaysShort:"Dom._Lun._Mar._Mér._Xov._Ven._Sáb.".split("_"),weekdaysMin:"Do_Lu_Ma_Mé_Xo_Ve_Sá".split("_"),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(a){return"uns segundos"===a?"nuns segundos":"en "+a},past:"hai %s",s:"uns segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},ordinal:"%dº",week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("he",{months:"ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),monthsShort:"ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),weekdays:"ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),weekdaysShort:"א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),weekdaysMin:"א_ב_ג_ד_ה_ו_ש".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [ב]MMMM YYYY",LLL:"D [ב]MMMM YYYY LT",LLLL:"dddd, D [ב]MMMM YYYY LT",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY LT",llll:"ddd, D MMM YYYY LT"},calendar:{sameDay:"[היום ב־]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[אתמול ב־]LT",lastWeek:"[ביום] dddd [האחרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"לפני %s",s:"מספר שניות",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(a){return 2===a?"שעתיים":a+" שעות"},d:"יום",dd:function(a){return 2===a?"יומיים":a+" ימים"},M:"חודש",MM:function(a){return 2===a?"חודשיים":a+" חודשים"},y:"שנה",yy:function(a){return 2===a?"שנתיים":a+" שנים"}}})}),function(a){a(tb)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("hi",{months:"जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),monthsShort:"जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),weekdays:"रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कुछ ही क्षण",m:"एक मिनट",mm:"%d मिनट",h:"एक घंटा",hh:"%d घंटे",d:"एक दिन",dd:"%d दिन",M:"एक महीने",MM:"%d महीने",y:"एक वर्ष",yy:"%d वर्ष"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 4>a?"रात":10>a?"सुबह":17>a?"दोपहर":20>a?"शाम":"रात"},week:{dow:0,doy:6}})}),function(a){a(tb)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"jedna minuta":"jedne minute";case"mm":return d+=1===a?"minuta":2===a||3===a||4===a?"minute":"minuta";case"h":return b?"jedan sat":"jednog sata";case"hh":return d+=1===a?"sat":2===a||3===a||4===a?"sata":"sati";case"dd":return d+=1===a?"dan":"dana";case"MM":return d+=1===a?"mjesec":2===a||3===a||4===a?"mjeseca":"mjeseci";case"yy":return d+=1===a?"godina":2===a||3===a||4===a?"godine":"godina"}}return a.defineLocale("hr",{months:"sječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_"),monthsShort:"sje._vel._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:b,mm:b,h:b,hh:b,d:"dan",dd:b,M:"mjesec",MM:b,y:"godinu",yy:b},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){function b(a,b,c,d){var e=a;switch(c){case"s":return d||b?"néhány másodperc":"néhány másodperce";case"m":return"egy"+(d||b?" perc":" perce");case"mm":return e+(d||b?" perc":" perce");case"h":return"egy"+(d||b?" óra":" órája");case"hh":return e+(d||b?" óra":" órája");case"d":return"egy"+(d||b?" nap":" napja");case"dd":return e+(d||b?" nap":" napja");case"M":return"egy"+(d||b?" hónap":" hónapja");case"MM":return e+(d||b?" hónap":" hónapja");case"y":return"egy"+(d||b?" év":" éve");case"yy":return e+(d||b?" év":" éve")}return""}function c(a){return(a?"":"[múlt] ")+"["+d[this.day()]+"] LT[-kor]"}var d="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");return a.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec".split("_"),weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D., LT",LLLL:"YYYY. MMMM D., dddd LT"},meridiem:function(a,b,c){return 12>a?c===!0?"de":"DE":c===!0?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return c.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return c.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){function b(a,b){var c={nominative:"հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_"),accusative:"հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function c(a){var b="հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_");return b[a.month()]}function d(a){var b="կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_");return b[a.day()]}return a.defineLocale("hy-am",{months:b,monthsShort:c,weekdays:d,weekdaysShort:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),weekdaysMin:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY թ.",LLL:"D MMMM YYYY թ., LT",LLLL:"dddd, D MMMM YYYY թ., LT"},calendar:{sameDay:"[այսօր] LT",nextDay:"[վաղը] LT",lastDay:"[երեկ] LT",nextWeek:function(){return"dddd [օրը ժամը] LT"},lastWeek:function(){return"[անցած] dddd [օրը ժամը] LT"},sameElse:"L"},relativeTime:{future:"%s հետո",past:"%s առաջ",s:"մի քանի վայրկյան",m:"րոպե",mm:"%d րոպե",h:"ժամ",hh:"%d ժամ",d:"օր",dd:"%d օր",M:"ամիս",MM:"%d ամիս",y:"տարի",yy:"%d տարի"},meridiem:function(a){return 4>a?"գիշերվա":12>a?"առավոտվա":17>a?"ցերեկվա":"երեկոյան"},ordinal:function(a,b){switch(b){case"DDD":case"w":case"W":case"DDDo":return 1===a?a+"-ին":a+"-րդ";default:return a}},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiem:function(a){return 11>a?"pagi":15>a?"siang":19>a?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){function b(a){return a%100===11?!0:a%10===1?!1:!0}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"nokkrar sekúndur":"nokkrum sekúndum";case"m":return c?"mínúta":"mínútu";case"mm":return b(a)?f+(c||e?"mínútur":"mínútum"):c?f+"mínúta":f+"mínútu";case"hh":return b(a)?f+(c||e?"klukkustundir":"klukkustundum"):f+"klukkustund";case"d":return c?"dagur":e?"dag":"degi";case"dd":return b(a)?c?f+"dagar":f+(e?"daga":"dögum"):c?f+"dagur":f+(e?"dag":"degi");case"M":return c?"mánuður":e?"mánuð":"mánuði";case"MM":return b(a)?c?f+"mánuðir":f+(e?"mánuði":"mánuðum"):c?f+"mánuður":f+(e?"mánuð":"mánuði");case"y":return c||e?"ár":"ári";case"yy":return b(a)?f+(c||e?"ár":"árum"):f+(c||e?"ár":"ári")}}return a.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_La".split("_"),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd, D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:c,m:c,mm:c,h:"klukkustund",hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"Domenica_Lunedì_Martedì_Mercoledì_Giovedì_Venerdì_Sabato".split("_"),weekdaysShort:"Dom_Lun_Mar_Mer_Gio_Ven_Sab".split("_"),weekdaysMin:"D_L_Ma_Me_G_V_S".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:"[lo scorso] dddd [alle] LT",sameElse:"L"},relativeTime:{future:function(a){return(/^[0-9].+$/.test(a)?"tra":"in")+" "+a},past:"%s fa",s:"alcuni secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("ja",{months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"Ah時m分",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日LT",LLLL:"YYYY年M月D日LT dddd"},meridiem:function(a){return 12>a?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:"[来週]dddd LT",lastDay:"[昨日] LT",lastWeek:"[前週]dddd LT",sameElse:"L"},relativeTime:{future:"%s後",past:"%s前",s:"数秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}})}),function(a){a(tb)}(function(a){function b(a,b){var c={nominative:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),accusative:"იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს".split("_")},d=/D[oD] *MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function c(a,b){var c={nominative:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),accusative:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_")},d=/(წინა|შემდეგ)/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("ka",{months:b,monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:c,weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),longDateFormat:{LT:"h:mm A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(a){return/(წამი|წუთი|საათი|წელი)/.test(a)?a.replace(/ი$/,"ში"):a+"ში"},past:function(a){return/(წამი|წუთი|საათი|დღე|თვე)/.test(a)?a.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(a)?a.replace(/წელი$/,"წლის წინ"):void 0},s:"რამდენიმე წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},ordinal:function(a){return 0===a?a:1===a?a+"-ლი":20>a||100>=a&&a%20===0||a%100===0?"მე-"+a:a+"-ე"},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("km",{months:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),monthsShort:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),weekdays:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysShort:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysMin:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[ថ្ងៃនៈ ម៉ោង] LT",nextDay:"[ស្អែក ម៉ោង] LT",nextWeek:"dddd [ម៉ោង] LT",lastDay:"[ម្សិលមិញ ម៉ោង] LT",lastWeek:"dddd [សប្តាហ៍មុន] [ម៉ោង] LT",sameElse:"L"},relativeTime:{future:"%sទៀត",past:"%sមុន",s:"ប៉ុន្មានវិនាទី",m:"មួយនាទី",mm:"%d នាទី",h:"មួយម៉ោង",hh:"%d ម៉ោង",d:"មួយថ្ងៃ",dd:"%d ថ្ងៃ",M:"មួយខែ",MM:"%d ខែ",y:"មួយឆ្នាំ",yy:"%d ឆ្នាំ"},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h시 m분",L:"YYYY.MM.DD",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 LT",LLLL:"YYYY년 MMMM D일 dddd LT"},meridiem:function(a){return 12>a?"오전":"오후"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇초",ss:"%d초",m:"일분",mm:"%d분",h:"한시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한달",MM:"%d달",y:"일년",yy:"%d년"},ordinal:"%d일",meridiemParse:/(오전|오후)/,isPM:function(a){return"오후"===a}})}),function(a){a(tb)}(function(a){function b(a,b,c){var d={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return b?d[c][0]:d[c][1]}function c(a){var b=a.substr(0,a.indexOf(" "));return e(b)?"a "+a:"an "+a}function d(a){var b=a.substr(0,a.indexOf(" "));return e(b)?"viru "+a:"virun "+a}function e(a){if(a=parseInt(a,10),isNaN(a))return!1;if(0>a)return!0;if(10>a)return a>=4&&7>=a?!0:!1;if(100>a){var b=a%10,c=a/10;return e(0===b?c:b)}if(1e4>a){for(;a>=10;)a/=10;return e(a)}return a/=1e3,e(a)}return a.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_Do_Fr_Sa".split("_"),longDateFormat:{LT:"H:mm [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gëschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:c,past:d,s:"e puer Sekonnen",m:b,mm:"%d Minutten",h:b,hh:"%d Stonnen",d:b,dd:"%d Deeg",M:b,MM:"%d Méint",y:b,yy:"%d Joer"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){function b(a,b,c,d){return b?"kelios sekundės":d?"kelių sekundžių":"kelias sekundes"}function c(a,b,c,d){return b?e(c)[0]:d?e(c)[1]:e(c)[2]}function d(a){return a%10===0||a>10&&20>a}function e(a){return h[a].split("_")}function f(a,b,f,g){var h=a+" ";return 1===a?h+c(a,b,f[0],g):b?h+(d(a)?e(f)[1]:e(f)[0]):g?h+e(f)[1]:h+(d(a)?e(f)[1]:e(f)[2])}function g(a,b){var c=-1===b.indexOf("dddd HH:mm"),d=i[a.day()];return c?d:d.substring(0,d.length-2)+"į"}var h={m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"},i="sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_");return a.defineLocale("lt",{months:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:g,weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".split("_"),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], LT [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, LT [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], LT [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, LT [val.]"},calendar:{sameDay:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:b,m:c,mm:f,h:c,hh:f,d:c,dd:f,M:c,MM:f,y:c,yy:f},ordinal:function(a){return a+"-oji"},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){function b(a,b,c){var d=a.split("_");return c?b%10===1&&11!==b?d[2]:d[3]:b%10===1&&11!==b?d[0]:d[1]}function c(a,c,e){return a+" "+b(d[e],a,c)}var d={mm:"minūti_minūtes_minūte_minūtes",hh:"stundu_stundas_stunda_stundas",dd:"dienu_dienas_diena_dienas",MM:"mēnesi_mēnešus_mēnesis_mēneši",yy:"gadu_gadus_gads_gadi"};return a.defineLocale("lv",{months:"janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),weekdays:"svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, LT",LLLL:"YYYY. [gada] D. MMMM, dddd, LT"},calendar:{sameDay:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pagājušā] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"%s vēlāk",past:"%s agrāk",s:"dažas sekundes",m:"minūti",mm:c,h:"stundu",hh:c,d:"dienu",dd:c,M:"mēnesi",MM:c,y:"gadu",yy:c},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".split("_"),longDateFormat:{LT:"H:mm",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Во изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Во изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"после %s",past:"пред %s",s:"неколку секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",M:"месец",MM:"%d месеци",y:"година",yy:"%d години"},ordinal:function(a){var b=a%10,c=a%100;return 0===a?a+"-ев":0===c?a+"-ен":c>10&&20>c?a+"-ти":1===b?a+"-ви":2===b?a+"-ри":7===b||8===b?a+"-ми":a+"-ти"},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".split("_"),longDateFormat:{LT:"A h:mm -നു",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiem:function(a){return 4>a?"രാത്രി":12>a?"രാവിലെ":17>a?"ഉച്ച കഴിഞ്ഞ്":20>a?"വൈകുന്നേരം":"രാത്രി"}})}),function(a){a(tb)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%s नंतर",past:"%s पूर्वी",s:"सेकंद",m:"एक मिनिट",mm:"%d मिनिटे",h:"एक तास",hh:"%d तास",d:"एक दिवस",dd:"%d दिवस",M:"एक महिना",MM:"%d महिने",y:"एक वर्ष",yy:"%d वर्षे"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 4>a?"रात्री":10>a?"सकाळी":17>a?"दुपारी":20>a?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}})}),function(a){a(tb)}(function(a){return a.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiem:function(a){return 11>a?"pagi":15>a?"tengahari":19>a?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){var b={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},c={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"}; -return a.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_င်္ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_င်္ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(a){return a.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tirs_ons_tors_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"H.mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s siden",s:"noen sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en måned",MM:"%d måneder",y:"ett år",yy:"%d år"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आइ._सो._मङ्_बु._बि._शु._श.".split("_"),longDateFormat:{LT:"Aको h:mm बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 3>a?"राती":10>a?"बिहान":15>a?"दिउँसो":18>a?"बेलुका":20>a?"साँझ":"राती"},calendar:{sameDay:"[आज] LT",nextDay:"[भोली] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडी",s:"केही समय",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){var b="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),c="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_");return a.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(a,d){return/-MMM-/.test(d)?c[a.month()]:b[a.month()]},weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"Zo_Ma_Di_Wo_Do_Vr_Za".split("_"),longDateFormat:{LT:"HH:mm",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},ordinal:function(a){return a+(1===a||8===a||a>=20?"ste":"de")},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"sun_mån_tys_ons_tor_fre_lau".split("_"),weekdaysMin:"su_må_ty_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I går klokka] LT",lastWeek:"[Føregåande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s sidan",s:"nokre sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",M:"ein månad",MM:"%d månader",y:"eit år",yy:"%d år"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){function b(a){return 5>a%10&&a%10>1&&~~(a/10)%10!==1}function c(a,c,d){var e=a+" ";switch(d){case"m":return c?"minuta":"minutę";case"mm":return e+(b(a)?"minuty":"minut");case"h":return c?"godzina":"godzinę";case"hh":return e+(b(a)?"godziny":"godzin");case"MM":return e+(b(a)?"miesiące":"miesięcy");case"yy":return e+(b(a)?"lata":"lat")}}var d="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),e="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_");return a.defineLocale("pl",{months:function(a,b){return/D MMMM/.test(b)?e[a.month()]:d[a.month()]},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"nie_pon_wt_śr_czw_pt_sb".split("_"),weekdaysMin:"N_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek:"[W] dddd [o] LT",lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",m:c,mm:c,h:c,hh:c,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:c,y:"rok",yy:c},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("pt-br",{months:"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_sáb".split("_"),weekdaysMin:"dom_2ª_3ª_4ª_5ª_6ª_sáb".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [às] LT",LLLL:"dddd, D [de] MMMM [de] YYYY [às] LT"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinal:"%dº"})}),function(a){a(tb)}(function(a){return a.defineLocale("pt",{months:"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_sáb".split("_"),weekdaysMin:"dom_2ª_3ª_4ª_5ª_6ª_sáb".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){function b(a,b,c){var d={mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"},e=" ";return(a%100>=20||a>=100&&a%100===0)&&(e=" de "),a+e+d[c]}return a.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),weekdays:"duminică_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_Sâ".split("_"),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[mâine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",m:"un minut",mm:b,h:"o oră",hh:b,d:"o zi",dd:b,M:"o lună",MM:b,y:"un an",yy:b},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:c?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",MM:"месяц_месяца_месяцев",yy:"год_года_лет"};return"m"===d?c?"минута":"минуту":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),accusative:"января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"янв_фев_мар_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_"),accusative:"янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function f(a,b){var c={nominative:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),accusative:"воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу".split("_")},d=/\[ ?[Вв] ?(?:прошлую|следующую)? ?\] ?dddd/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("ru",{months:d,monthsShort:e,weekdays:f,weekdaysShort:"вс_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),monthsParse:[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[й|я]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i],longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., LT",LLLL:"dddd, D MMMM YYYY г., LT"},calendar:{sameDay:"[Сегодня в] LT",nextDay:"[Завтра в] LT",lastDay:"[Вчера в] LT",nextWeek:function(){return 2===this.day()?"[Во] dddd [в] LT":"[В] dddd [в] LT"},lastWeek:function(){switch(this.day()){case 0:return"[В прошлое] dddd [в] LT";case 1:case 2:case 4:return"[В прошлый] dddd [в] LT";case 3:case 5:case 6:return"[В прошлую] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",m:c,mm:c,h:"час",hh:c,d:"день",dd:c,M:"месяц",MM:c,y:"год",yy:c},meridiemParse:/ночи|утра|дня|вечера/i,isPM:function(a){return/^(дня|вечера)$/.test(a)},meridiem:function(a){return 4>a?"ночи":12>a?"утра":17>a?"дня":"вечера"},ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":return a+"-й";case"D":return a+"-го";case"w":case"W":return a+"-я";default:return a}},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){function b(a){return a>1&&5>a}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"pár sekúnd":"pár sekundami";case"m":return c?"minúta":e?"minútu":"minútou";case"mm":return c||e?f+(b(a)?"minúty":"minút"):f+"minútami";break;case"h":return c?"hodina":e?"hodinu":"hodinou";case"hh":return c||e?f+(b(a)?"hodiny":"hodín"):f+"hodinami";break;case"d":return c||e?"deň":"dňom";case"dd":return c||e?f+(b(a)?"dni":"dní"):f+"dňami";break;case"M":return c||e?"mesiac":"mesiacom";case"MM":return c||e?f+(b(a)?"mesiace":"mesiacov"):f+"mesiacmi";break;case"y":return c||e?"rok":"rokom";case"yy":return c||e?f+(b(a)?"roky":"rokov"):f+"rokmi"}}var d="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),e="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_");return a.defineLocale("sk",{months:d,monthsShort:e,monthsParse:function(a,b){var c,d=[];for(c=0;12>c;c++)d[c]=new RegExp("^"+a[c]+"$|^"+b[c]+"$","i");return d}(d,e),weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_pi_so".split("_"),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"ena minuta":"eno minuto";case"mm":return d+=1===a?"minuta":2===a?"minuti":3===a||4===a?"minute":"minut";case"h":return b?"ena ura":"eno uro";case"hh":return d+=1===a?"ura":2===a?"uri":3===a||4===a?"ure":"ur";case"dd":return d+=1===a?"dan":"dni";case"MM":return d+=1===a?"mesec":2===a?"meseca":3===a||4===a?"mesece":"mesecev";case"yy":return d+=1===a?"leto":2===a?"leti":3===a||4===a?"leta":"let"}}return a.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),weekdays:"nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_pe_so".split("_"),longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[včeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[prejšnja] dddd [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"%s nazaj",s:"nekaj sekund",m:b,mm:b,h:b,hh:b,d:"en dan",dd:b,M:"en mesec",MM:b,y:"eno leto",yy:b},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),weekdays:"E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),weekdaysShort:"Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_Më_E_P_Sh".split("_"),meridiem:function(a){return 12>a?"PD":"MD"},longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Sot në] LT",nextDay:"[Nesër në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s më parë",s:"disa sekonda",m:"një minutë",mm:"%d minuta",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){var b={words:{m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(a,b){return 1===a?b[0]:a>=2&&4>=a?b[1]:b[2]},translate:function(a,c,d){var e=b.words[d];return 1===d.length?c?e[0]:e[1]:a+" "+b.correctGrammaticalCase(a,e)}};return a.defineLocale("sr-cyrl",{months:["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар"],monthsShort:["јан.","феб.","мар.","апр.","мај","јун","јул","авг.","сеп.","окт.","нов.","дец."],weekdays:["недеља","понедељак","уторак","среда","четвртак","петак","субота"],weekdaysShort:["нед.","пон.","уто.","сре.","чет.","пет.","суб."],weekdaysMin:["не","по","ут","ср","че","пе","су"],longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){var a=["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"];return a[this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",m:b.translate,mm:b.translate,h:b.translate,hh:b.translate,d:"дан",dd:b.translate,M:"месец",MM:b.translate,y:"годину",yy:b.translate},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){var b={words:{m:["jedan minut","jedne minute"],mm:["minut","minute","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mesec","meseca","meseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(a,b){return 1===a?b[0]:a>=2&&4>=a?b[1]:b[2]},translate:function(a,c,d){var e=b.words[d];return 1===d.length?c?e[0]:e[1]:a+" "+b.correctGrammaticalCase(a,e)}};return a.defineLocale("sr",{months:["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar"],monthsShort:["jan.","feb.","mar.","apr.","maj","jun","jul","avg.","sep.","okt.","nov.","dec."],weekdays:["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],weekdaysShort:["ned.","pon.","uto.","sre.","čet.","pet.","sub."],weekdaysMin:["ne","po","ut","sr","če","pe","su"],longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){var a=["[prošle] [nedelje] [u] LT","[prošlog] [ponedeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"];return a[this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",m:b.translate,mm:b.translate,h:b.translate,hh:b.translate,d:"dan",dd:b.translate,M:"mesec",MM:b.translate,y:"godinu",yy:b.translate},ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".split("_"),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"dddd LT",lastWeek:"[Förra] dddd[en] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"e":1===b?"a":2===b?"a":3===b?"e":"e";return a+c},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},ordinal:function(a){return a+"வது"},meridiem:function(a){return a>=6&&10>=a?" காலை":a>=10&&14>=a?" நண்பகல்":a>=14&&18>=a?" எற்பாடு":a>=18&&20>=a?" மாலை":a>=20&&24>=a?" இரவு":a>=0&&6>=a?" வைகறை":void 0},week:{dow:0,doy:6}})}),function(a){a(tb)}(function(a){return a.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"มกรา_กุมภา_มีนา_เมษา_พฤษภา_มิถุนา_กรกฎา_สิงหา_กันยา_ตุลา_พฤศจิกา_ธันวา".split("_"),weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),longDateFormat:{LT:"H นาฬิกา m นาที",L:"YYYY/MM/DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา LT",LLLL:"วันddddที่ D MMMM YYYY เวลา LT"},meridiem:function(a){return 12>a?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}})}),function(a){a(tb)}(function(a){return a.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM DD, YYYY LT"},calendar:{sameDay:"[Ngayon sa] LT",nextDay:"[Bukas sa] LT",nextWeek:"dddd [sa] LT",lastDay:"[Kahapon sa] LT",lastWeek:"dddd [huling linggo] LT",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},ordinal:function(a){return a},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){var b={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"};return a.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[haftaya] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen hafta] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(a){if(0===a)return a+"'ıncı";var c=a%10,d=a%100-c,e=a>=100?100:null;return a+(b[c]||b[d]||b[e])},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("tzm-latn",{months:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",m:"minuḍ",mm:"%d minuḍ",h:"saɛa",hh:"%d tassaɛin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})}),function(a){a(tb)}(function(a){return a.defineLocale("tzm",{months:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),monthsShort:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),weekdays:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysMin:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[ⴰⵙⴷⵅ ⴴ] LT",nextDay:"[ⴰⵙⴽⴰ ⴴ] LT",nextWeek:"dddd [ⴴ] LT",lastDay:"[ⴰⵚⴰⵏⵜ ⴴ] LT",lastWeek:"dddd [ⴴ] LT",sameElse:"L"},relativeTime:{future:"ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",past:"ⵢⴰⵏ %s",s:"ⵉⵎⵉⴽ",m:"ⵎⵉⵏⵓⴺ",mm:"%d ⵎⵉⵏⵓⴺ",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉⵏ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰⵏ",M:"ⴰⵢoⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔⵏ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙⵏ"},week:{dow:6,doy:12}})}),function(a){a(tb)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:"хвилина_хвилини_хвилин",hh:"година_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"};return"m"===d?c?"хвилина":"хвилину":"h"===d?c?"година":"годину":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_"),accusative:"січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_")},d=/D[oD]? *MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),accusative:"неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),genitive:"неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")},d=/(\[[ВвУу]\]) ?dddd/.test(b)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(b)?"genitive":"nominative";return c[d][a.day()]}function f(a){return function(){return a+"о"+(11===this.hours()?"б":"")+"] LT"}}return a.defineLocale("uk",{months:d,monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekdays:e,weekdaysShort:"нд_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY р.",LLL:"D MMMM YYYY р., LT",LLLL:"dddd, D MMMM YYYY р., LT"},calendar:{sameDay:f("[Сьогодні "),nextDay:f("[Завтра "),lastDay:f("[Вчора "),nextWeek:f("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return f("[Минулої] dddd [").call(this);case 1:case 2:case 4:return f("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",m:c,mm:c,h:"годину",hh:c,d:"день",dd:c,M:"місяць",MM:c,y:"рік",yy:c},meridiem:function(a){return 4>a?"ночі":12>a?"ранку":17>a?"дня":"вечора"},ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":case"w":case"W":return a+"-й";case"D":return a+"-го";default:return a}},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("uz",{months:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"D MMMM YYYY, dddd LT"},calendar:{sameDay:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}})}),function(a){a(tb)}(function(a){return a.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY LT",LLLL:"dddd, D MMMM [năm] YYYY LT",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY LT",llll:"ddd, D MMM YYYY LT"},calendar:{sameDay:"[Hôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần rồi lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},ordinal:function(a){return a},week:{dow:1,doy:4}})}),function(a){a(tb)}(function(a){return a.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"Ah点mm",L:"YYYY-MM-DD",LL:"YYYY年MMMD日",LLL:"YYYY年MMMD日LT",LLLL:"YYYY年MMMD日ddddLT",l:"YYYY-MM-DD",ll:"YYYY年MMMD日",lll:"YYYY年MMMD日LT",llll:"YYYY年MMMD日ddddLT"},meridiem:function(a,b){var c=100*a+b; -return 600>c?"凌晨":900>c?"早上":1130>c?"上午":1230>c?"中午":1800>c?"下午":"晚上"},calendar:{sameDay:function(){return 0===this.minutes()?"[今天]Ah[点整]":"[今天]LT"},nextDay:function(){return 0===this.minutes()?"[明天]Ah[点整]":"[明天]LT"},lastDay:function(){return 0===this.minutes()?"[昨天]Ah[点整]":"[昨天]LT"},nextWeek:function(){var b,c;return b=a().startOf("week"),c=this.unix()-b.unix()>=604800?"[下]":"[本]",0===this.minutes()?c+"dddAh点整":c+"dddAh点mm"},lastWeek:function(){var b,c;return b=a().startOf("week"),c=this.unix()c?"早上":1130>c?"上午":1230>c?"中午":1800>c?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},ordinal:function(a,b){switch(b){case"d":case"D":case"DDD":return a+"日";case"M":return a+"月";case"w":case"W":return a+"週";default:return a}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",m:"一分鐘",mm:"%d分鐘",h:"一小時",hh:"%d小時",d:"一天",dd:"%d天",M:"一個月",MM:"%d個月",y:"一年",yy:"%d年"}})}),tb.locale("en"),Jb?module.exports=tb:"function"==typeof define&&define.amd?(define("moment",function(a,b,c){return c.config&&c.config()&&c.config().noGlobal===!0&&(xb.moment=ub),tb}),sb(!0)):sb()}).call(this); \ No newline at end of file +(function(a){function b(a,b,c){switch(arguments.length){case 2:return null!=a?a:b;case 3:return null!=a?a:null!=b?b:c;default:throw new Error("Implement me")}}function c(a,b){return Bb.call(a,b)}function d(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1}}function e(a){vb.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+a)}function f(a,b){var c=!0;return o(function(){return c&&(e(a),c=!1),b.apply(this,arguments)},b)}function g(a,b){sc[a]||(e(b),sc[a]=!0)}function h(a,b){return function(c){return r(a.call(this,c),b)}}function i(a,b){return function(c){return this.localeData().ordinal(a.call(this,c),b)}}function j(a,b){var c,d,e=12*(b.year()-a.year())+(b.month()-a.month()),f=a.clone().add(e,"months");return 0>b-f?(c=a.clone().add(e-1,"months"),d=(b-f)/(f-c)):(c=a.clone().add(e+1,"months"),d=(b-f)/(c-f)),-(e+d)}function k(a,b,c){var d;return null==c?b:null!=a.meridiemHour?a.meridiemHour(b,c):null!=a.isPM?(d=a.isPM(c),d&&12>b&&(b+=12),d||12!==b||(b=0),b):b}function l(){}function m(a,b){b!==!1&&H(a),p(this,a),this._d=new Date(+a._d),uc===!1&&(uc=!0,vb.updateOffset(this),uc=!1)}function n(a){var b=A(a),c=b.year||0,d=b.quarter||0,e=b.month||0,f=b.week||0,g=b.day||0,h=b.hour||0,i=b.minute||0,j=b.second||0,k=b.millisecond||0;this._milliseconds=+k+1e3*j+6e4*i+36e5*h,this._days=+g+7*f,this._months=+e+3*d+12*c,this._data={},this._locale=vb.localeData(),this._bubble()}function o(a,b){for(var d in b)c(b,d)&&(a[d]=b[d]);return c(b,"toString")&&(a.toString=b.toString),c(b,"valueOf")&&(a.valueOf=b.valueOf),a}function p(a,b){var c,d,e;if("undefined"!=typeof b._isAMomentObject&&(a._isAMomentObject=b._isAMomentObject),"undefined"!=typeof b._i&&(a._i=b._i),"undefined"!=typeof b._f&&(a._f=b._f),"undefined"!=typeof b._l&&(a._l=b._l),"undefined"!=typeof b._strict&&(a._strict=b._strict),"undefined"!=typeof b._tzm&&(a._tzm=b._tzm),"undefined"!=typeof b._isUTC&&(a._isUTC=b._isUTC),"undefined"!=typeof b._offset&&(a._offset=b._offset),"undefined"!=typeof b._pf&&(a._pf=b._pf),"undefined"!=typeof b._locale&&(a._locale=b._locale),Kb.length>0)for(c in Kb)d=Kb[c],e=b[d],"undefined"!=typeof e&&(a[d]=e);return a}function q(a){return 0>a?Math.ceil(a):Math.floor(a)}function r(a,b,c){for(var d=""+Math.abs(a),e=a>=0;d.lengthd;d++)(c&&a[d]!==b[d]||!c&&C(a[d])!==C(b[d]))&&g++;return g+f}function z(a){if(a){var b=a.toLowerCase().replace(/(.)s$/,"$1");a=lc[a]||mc[b]||b}return a}function A(a){var b,d,e={};for(d in a)c(a,d)&&(b=z(d),b&&(e[b]=a[d]));return e}function B(b){var c,d;if(0===b.indexOf("week"))c=7,d="day";else{if(0!==b.indexOf("month"))return;c=12,d="month"}vb[b]=function(e,f){var g,h,i=vb._locale[b],j=[];if("number"==typeof e&&(f=e,e=a),h=function(a){var b=vb().utc().set(d,a);return i.call(vb._locale,b,e||"")},null!=f)return h(f);for(g=0;c>g;g++)j.push(h(g));return j}}function C(a){var b=+a,c=0;return 0!==b&&isFinite(b)&&(c=b>=0?Math.floor(b):Math.ceil(b)),c}function D(a,b){return new Date(Date.UTC(a,b+1,0)).getUTCDate()}function E(a,b,c){return jb(vb([a,11,31+b-c]),b,c).week}function F(a){return G(a)?366:365}function G(a){return a%4===0&&a%100!==0||a%400===0}function H(a){var b;a._a&&-2===a._pf.overflow&&(b=a._a[Db]<0||a._a[Db]>11?Db:a._a[Eb]<1||a._a[Eb]>D(a._a[Cb],a._a[Db])?Eb:a._a[Fb]<0||a._a[Fb]>24||24===a._a[Fb]&&(0!==a._a[Gb]||0!==a._a[Hb]||0!==a._a[Ib])?Fb:a._a[Gb]<0||a._a[Gb]>59?Gb:a._a[Hb]<0||a._a[Hb]>59?Hb:a._a[Ib]<0||a._a[Ib]>999?Ib:-1,a._pf._overflowDayOfYear&&(Cb>b||b>Eb)&&(b=Eb),a._pf.overflow=b)}function I(b){return null==b._isValid&&(b._isValid=!isNaN(b._d.getTime())&&b._pf.overflow<0&&!b._pf.empty&&!b._pf.invalidMonth&&!b._pf.nullInput&&!b._pf.invalidFormat&&!b._pf.userInvalidated,b._strict&&(b._isValid=b._isValid&&0===b._pf.charsLeftOver&&0===b._pf.unusedTokens.length&&b._pf.bigHour===a)),b._isValid}function J(a){return a?a.toLowerCase().replace("_","-"):a}function K(a){for(var b,c,d,e,f=0;f0;){if(d=L(e.slice(0,b).join("-")))return d;if(c&&c.length>=b&&y(e,c,!0)>=b-1)break;b--}f++}return null}function L(a){var b=null;if(!Jb[a]&&Lb)try{b=vb.locale(),require("./locale/"+a),vb.locale(b)}catch(c){}return Jb[a]}function M(a,b){var c,d;return b._isUTC?(c=b.clone(),d=(vb.isMoment(a)||x(a)?+a:+vb(a))-+c,c._d.setTime(+c._d+d),vb.updateOffset(c,!1),c):vb(a).local()}function N(a){return a.match(/\[[\s\S]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"")}function O(a){var b,c,d=a.match(Pb);for(b=0,c=d.length;c>b;b++)d[b]=rc[d[b]]?rc[d[b]]:N(d[b]);return function(e){var f="";for(b=0;c>b;b++)f+=d[b]instanceof Function?d[b].call(e,a):d[b];return f}}function P(a,b){return a.isValid()?(b=Q(b,a.localeData()),nc[b]||(nc[b]=O(b)),nc[b](a)):a.localeData().invalidDate()}function Q(a,b){function c(a){return b.longDateFormat(a)||a}var d=5;for(Qb.lastIndex=0;d>=0&&Qb.test(a);)a=a.replace(Qb,c),Qb.lastIndex=0,d-=1;return a}function R(a,b){var c,d=b._strict;switch(a){case"Q":return _b;case"DDDD":return bc;case"YYYY":case"GGGG":case"gggg":return d?cc:Tb;case"Y":case"G":case"g":return ec;case"YYYYYY":case"YYYYY":case"GGGGG":case"ggggg":return d?dc:Ub;case"S":if(d)return _b;case"SS":if(d)return ac;case"SSS":if(d)return bc;case"DDD":return Sb;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":return Wb;case"a":case"A":return b._locale._meridiemParse;case"x":return Zb;case"X":return $b;case"Z":case"ZZ":return Xb;case"T":return Yb;case"SSSS":return Vb;case"MM":case"DD":case"YY":case"GG":case"gg":case"HH":case"hh":case"mm":case"ss":case"ww":case"WW":return d?ac:Rb;case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"W":case"e":case"E":return Rb;case"Do":return d?b._locale._ordinalParse:b._locale._ordinalParseLenient;default:return c=new RegExp($(Z(a.replace("\\","")),"i"))}}function S(a){a=a||"";var b=a.match(Xb)||[],c=b[b.length-1]||[],d=(c+"").match(jc)||["-",0,0],e=+(60*d[1])+C(d[2]);return"+"===d[0]?e:-e}function T(a,b,c){var d,e=c._a;switch(a){case"Q":null!=b&&(e[Db]=3*(C(b)-1));break;case"M":case"MM":null!=b&&(e[Db]=C(b)-1);break;case"MMM":case"MMMM":d=c._locale.monthsParse(b,a,c._strict),null!=d?e[Db]=d:c._pf.invalidMonth=b;break;case"D":case"DD":null!=b&&(e[Eb]=C(b));break;case"Do":null!=b&&(e[Eb]=C(parseInt(b.match(/\d{1,2}/)[0],10)));break;case"DDD":case"DDDD":null!=b&&(c._dayOfYear=C(b));break;case"YY":e[Cb]=vb.parseTwoDigitYear(b);break;case"YYYY":case"YYYYY":case"YYYYYY":e[Cb]=C(b);break;case"a":case"A":c._meridiem=b;break;case"h":case"hh":c._pf.bigHour=!0;case"H":case"HH":e[Fb]=C(b);break;case"m":case"mm":e[Gb]=C(b);break;case"s":case"ss":e[Hb]=C(b);break;case"S":case"SS":case"SSS":case"SSSS":e[Ib]=C(1e3*("0."+b));break;case"x":c._d=new Date(C(b));break;case"X":c._d=new Date(1e3*parseFloat(b));break;case"Z":case"ZZ":c._useUTC=!0,c._tzm=S(b);break;case"dd":case"ddd":case"dddd":d=c._locale.weekdaysParse(b),null!=d?(c._w=c._w||{},c._w.d=d):c._pf.invalidWeekday=b;break;case"w":case"ww":case"W":case"WW":case"d":case"e":case"E":a=a.substr(0,1);case"gggg":case"GGGG":case"GGGGG":a=a.substr(0,2),b&&(c._w=c._w||{},c._w[a]=C(b));break;case"gg":case"GG":c._w=c._w||{},c._w[a]=vb.parseTwoDigitYear(b)}}function U(a){var c,d,e,f,g,h,i;c=a._w,null!=c.GG||null!=c.W||null!=c.E?(g=1,h=4,d=b(c.GG,a._a[Cb],jb(vb(),1,4).year),e=b(c.W,1),f=b(c.E,1)):(g=a._locale._week.dow,h=a._locale._week.doy,d=b(c.gg,a._a[Cb],jb(vb(),g,h).year),e=b(c.w,1),null!=c.d?(f=c.d,g>f&&++e):f=null!=c.e?c.e+g:g),i=kb(d,e,f,h,g),a._a[Cb]=i.year,a._dayOfYear=i.dayOfYear}function V(a){var c,d,e,f,g=[];if(!a._d){for(e=X(a),a._w&&null==a._a[Eb]&&null==a._a[Db]&&U(a),a._dayOfYear&&(f=b(a._a[Cb],e[Cb]),a._dayOfYear>F(f)&&(a._pf._overflowDayOfYear=!0),d=fb(f,0,a._dayOfYear),a._a[Db]=d.getUTCMonth(),a._a[Eb]=d.getUTCDate()),c=0;3>c&&null==a._a[c];++c)a._a[c]=g[c]=e[c];for(;7>c;c++)a._a[c]=g[c]=null==a._a[c]?2===c?1:0:a._a[c];24===a._a[Fb]&&0===a._a[Gb]&&0===a._a[Hb]&&0===a._a[Ib]&&(a._nextDay=!0,a._a[Fb]=0),a._d=(a._useUTC?fb:eb).apply(null,g),null!=a._tzm&&a._d.setUTCMinutes(a._d.getUTCMinutes()-a._tzm),a._nextDay&&(a._a[Fb]=24)}}function W(a){var b;a._d||(b=A(a._i),a._a=[b.year,b.month,b.day||b.date,b.hour,b.minute,b.second,b.millisecond],V(a))}function X(a){var b=new Date;return a._useUTC?[b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate()]:[b.getFullYear(),b.getMonth(),b.getDate()]}function Y(b){if(b._f===vb.ISO_8601)return void ab(b);b._a=[],b._pf.empty=!0;var c,d,e,f,g,h=""+b._i,i=h.length,j=0;for(e=Q(b._f,b._locale).match(Pb)||[],c=0;c0&&b._pf.unusedInput.push(g),h=h.slice(h.indexOf(d)+d.length),j+=d.length),rc[f]?(d?b._pf.empty=!1:b._pf.unusedTokens.push(f),T(f,d,b)):b._strict&&!d&&b._pf.unusedTokens.push(f);b._pf.charsLeftOver=i-j,h.length>0&&b._pf.unusedInput.push(h),b._pf.bigHour===!0&&b._a[Fb]<=12&&(b._pf.bigHour=a),b._a[Fb]=k(b._locale,b._a[Fb],b._meridiem),V(b),H(b)}function Z(a){return a.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(a,b,c,d,e){return b||c||d||e})}function $(a){return a.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function _(a){var b,c,e,f,g;if(0===a._f.length)return a._pf.invalidFormat=!0,void(a._d=new Date(0/0));for(f=0;fg)&&(e=g,c=b));o(a,c||b)}function ab(a){var b,c,d=a._i,e=fc.exec(d);if(e){for(a._pf.iso=!0,b=0,c=hc.length;c>b;b++)if(hc[b][1].exec(d)){a._f=hc[b][0]+(e[6]||" ");break}for(b=0,c=ic.length;c>b;b++)if(ic[b][1].exec(d)){a._f+=ic[b][0];break}d.match(Xb)&&(a._f+="Z"),Y(a)}else a._isValid=!1}function bb(a){ab(a),a._isValid===!1&&(delete a._isValid,vb.createFromInputFallback(a))}function cb(a,b){var c,d=[];for(c=0;ca&&h.setFullYear(a),h}function fb(a){var b=new Date(Date.UTC.apply(null,arguments));return 1970>a&&b.setUTCFullYear(a),b}function gb(a,b){if("string"==typeof a)if(isNaN(a)){if(a=b.weekdaysParse(a),"number"!=typeof a)return null}else a=parseInt(a,10);return a}function hb(a,b,c,d,e){return e.relativeTime(b||1,!!c,a,d)}function ib(a,b,c){var d=vb.duration(a).abs(),e=Ab(d.as("s")),f=Ab(d.as("m")),g=Ab(d.as("h")),h=Ab(d.as("d")),i=Ab(d.as("M")),j=Ab(d.as("y")),k=e0,k[4]=c,hb.apply({},k)}function jb(a,b,c){var d,e=c-b,f=c-a.day();return f>e&&(f-=7),e-7>f&&(f+=7),d=vb(a).add(f,"d"),{week:Math.ceil(d.dayOfYear()/7),year:d.year()}}function kb(a,b,c,d,e){var f,g,h=fb(a,0,1).getUTCDay();return h=0===h?7:h,c=null!=c?c:e,f=e-h+(h>d?7:0)-(e>h?7:0),g=7*(b-1)+(c-e)+f+1,{year:g>0?a:a-1,dayOfYear:g>0?g:F(a-1)+g}}function lb(b){var c,d=b._i,e=b._f;return b._locale=b._locale||vb.localeData(b._l),null===d||e===a&&""===d?vb.invalid({nullInput:!0}):("string"==typeof d&&(b._i=d=b._locale.preparse(d)),vb.isMoment(d)?new m(d,!0):(e?w(e)?_(b):Y(b):db(b),c=new m(b),c._nextDay&&(c.add(1,"d"),c._nextDay=a),c))}function mb(a,b){var c,d;if(1===b.length&&w(b[0])&&(b=b[0]),!b.length)return vb();for(c=b[0],d=1;d=0?"+":"-";return b+r(Math.abs(a),6)},gg:function(){return r(this.weekYear()%100,2)},gggg:function(){return r(this.weekYear(),4)},ggggg:function(){return r(this.weekYear(),5)},GG:function(){return r(this.isoWeekYear()%100,2)},GGGG:function(){return r(this.isoWeekYear(),4)},GGGGG:function(){return r(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return C(this.milliseconds()/100)},SS:function(){return r(C(this.milliseconds()/10),2)},SSS:function(){return r(this.milliseconds(),3)},SSSS:function(){return r(this.milliseconds(),3)},Z:function(){var a=this.utcOffset(),b="+";return 0>a&&(a=-a,b="-"),b+r(C(a/60),2)+":"+r(C(a)%60,2)},ZZ:function(){var a=this.utcOffset(),b="+";return 0>a&&(a=-a,b="-"),b+r(C(a/60),2)+r(C(a)%60,2)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},x:function(){return this.valueOf()},X:function(){return this.unix()},Q:function(){return this.quarter()}},sc={},tc=["months","monthsShort","weekdays","weekdaysShort","weekdaysMin"],uc=!1;pc.length;)xb=pc.pop(),rc[xb+"o"]=i(rc[xb],xb);for(;qc.length;)xb=qc.pop(),rc[xb+xb]=h(rc[xb],2);rc.DDDD=h(rc.DDD,3),o(l.prototype,{set:function(a){var b,c;for(c in a)b=a[c],"function"==typeof b?this[c]=b:this["_"+c]=b;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(a){return this._months[a.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(a){return this._monthsShort[a.month()]},monthsParse:function(a,b,c){var d,e,f;for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),d=0;12>d;d++){if(e=vb.utc([2e3,d]),c&&!this._longMonthsParse[d]&&(this._longMonthsParse[d]=new RegExp("^"+this.months(e,"").replace(".","")+"$","i"),this._shortMonthsParse[d]=new RegExp("^"+this.monthsShort(e,"").replace(".","")+"$","i")),c||this._monthsParse[d]||(f="^"+this.months(e,"")+"|^"+this.monthsShort(e,""),this._monthsParse[d]=new RegExp(f.replace(".",""),"i")),c&&"MMMM"===b&&this._longMonthsParse[d].test(a))return d;if(c&&"MMM"===b&&this._shortMonthsParse[d].test(a))return d;if(!c&&this._monthsParse[d].test(a))return d}},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(a){return this._weekdays[a.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(a){return this._weekdaysShort[a.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(a){return this._weekdaysMin[a.day()]},weekdaysParse:function(a){var b,c,d;for(this._weekdaysParse||(this._weekdaysParse=[]),b=0;7>b;b++)if(this._weekdaysParse[b]||(c=vb([2e3,1]).day(b),d="^"+this.weekdays(c,"")+"|^"+this.weekdaysShort(c,"")+"|^"+this.weekdaysMin(c,""),this._weekdaysParse[b]=new RegExp(d.replace(".",""),"i")),this._weekdaysParse[b].test(a))return b},_longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM D, YYYY LT"},longDateFormat:function(a){var b=this._longDateFormat[a];return!b&&this._longDateFormat[a.toUpperCase()]&&(b=this._longDateFormat[a.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(a){return a.slice(1)}),this._longDateFormat[a]=b),b},isPM:function(a){return"p"===(a+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(a,b,c){return a>11?c?"pm":"PM":c?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},calendar:function(a,b,c){var d=this._calendar[a];return"function"==typeof d?d.apply(b,[c]):d},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(a,b,c,d){var e=this._relativeTime[c];return"function"==typeof e?e(a,b,c,d):e.replace(/%d/i,a)},pastFuture:function(a,b){var c=this._relativeTime[a>0?"future":"past"];return"function"==typeof c?c(b):c.replace(/%s/i,b)},ordinal:function(a){return this._ordinal.replace("%d",a)},_ordinal:"%d",_ordinalParse:/\d{1,2}/,preparse:function(a){return a},postformat:function(a){return a},week:function(a){return jb(a,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6},firstDayOfWeek:function(){return this._week.dow},firstDayOfYear:function(){return this._week.doy},_invalidDate:"Invalid date",invalidDate:function(){return this._invalidDate}}),vb=function(b,c,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._i=b,g._f=c,g._l=e,g._strict=f,g._isUTC=!1,g._pf=d(),lb(g)},vb.suppressDeprecationWarnings=!1,vb.createFromInputFallback=f("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(a){a._d=new Date(a._i+(a._useUTC?" UTC":""))}),vb.min=function(){var a=[].slice.call(arguments,0);return mb("isBefore",a)},vb.max=function(){var a=[].slice.call(arguments,0);return mb("isAfter",a)},vb.utc=function(b,c,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._useUTC=!0,g._isUTC=!0,g._l=e,g._i=b,g._f=c,g._strict=f,g._pf=d(),lb(g).utc()},vb.unix=function(a){return vb(1e3*a)},vb.duration=function(a,b){var d,e,f,g,h=a,i=null;return vb.isDuration(a)?h={ms:a._milliseconds,d:a._days,M:a._months}:"number"==typeof a?(h={},b?h[b]=a:h.milliseconds=a):(i=Nb.exec(a))?(d="-"===i[1]?-1:1,h={y:0,d:C(i[Eb])*d,h:C(i[Fb])*d,m:C(i[Gb])*d,s:C(i[Hb])*d,ms:C(i[Ib])*d}):(i=Ob.exec(a))?(d="-"===i[1]?-1:1,f=function(a){var b=a&&parseFloat(a.replace(",","."));return(isNaN(b)?0:b)*d},h={y:f(i[2]),M:f(i[3]),d:f(i[4]),h:f(i[5]),m:f(i[6]),s:f(i[7]),w:f(i[8])}):null==h?h={}:"object"==typeof h&&("from"in h||"to"in h)&&(g=t(vb(h.from),vb(h.to)),h={},h.ms=g.milliseconds,h.M=g.months),e=new n(h),vb.isDuration(a)&&c(a,"_locale")&&(e._locale=a._locale),e},vb.version=yb,vb.defaultFormat=gc,vb.ISO_8601=function(){},vb.momentProperties=Kb,vb.updateOffset=function(){},vb.relativeTimeThreshold=function(b,c){return oc[b]===a?!1:c===a?oc[b]:(oc[b]=c,!0)},vb.lang=f("moment.lang is deprecated. Use moment.locale instead.",function(a,b){return vb.locale(a,b)}),vb.locale=function(a,b){var c;return a&&(c="undefined"!=typeof b?vb.defineLocale(a,b):vb.localeData(a),c&&(vb.duration._locale=vb._locale=c)),vb._locale._abbr},vb.defineLocale=function(a,b){return null!==b?(b.abbr=a,Jb[a]||(Jb[a]=new l),Jb[a].set(b),vb.locale(a),Jb[a]):(delete Jb[a],null)},vb.langData=f("moment.langData is deprecated. Use moment.localeData instead.",function(a){return vb.localeData(a)}),vb.localeData=function(a){var b;if(a&&a._locale&&a._locale._abbr&&(a=a._locale._abbr),!a)return vb._locale;if(!w(a)){if(b=L(a))return b;a=[a]}return K(a)},vb.isMoment=function(a){return a instanceof m||null!=a&&c(a,"_isAMomentObject")},vb.isDuration=function(a){return a instanceof n};for(xb=tc.length-1;xb>=0;--xb)B(tc[xb]);vb.normalizeUnits=function(a){return z(a)},vb.invalid=function(a){var b=vb.utc(0/0);return null!=a?o(b._pf,a):b._pf.userInvalidated=!0,b},vb.parseZone=function(){return vb.apply(null,arguments).parseZone()},vb.parseTwoDigitYear=function(a){return C(a)+(C(a)>68?1900:2e3)},vb.isDate=x,o(vb.fn=m.prototype,{clone:function(){return vb(this)},valueOf:function(){return+this._d-6e4*(this._offset||0)},unix:function(){return Math.floor(+this/1e3)},toString:function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){var a=vb(this).utc();return 00:!1},parsingFlags:function(){return o({},this._pf)},invalidAt:function(){return this._pf.overflow},utc:function(a){return this.utcOffset(0,a)},local:function(a){return this._isUTC&&(this.utcOffset(0,a),this._isUTC=!1,a&&this.subtract(this._dateUtcOffset(),"m")),this},format:function(a){var b=P(this,a||vb.defaultFormat);return this.localeData().postformat(b)},add:u(1,"add"),subtract:u(-1,"subtract"),diff:function(a,b,c){var d,e,f=M(a,this),g=6e4*(f.utcOffset()-this.utcOffset());return b=z(b),"year"===b||"month"===b||"quarter"===b?(e=j(this,f),"quarter"===b?e/=3:"year"===b&&(e/=12)):(d=this-f,e="second"===b?d/1e3:"minute"===b?d/6e4:"hour"===b?d/36e5:"day"===b?(d-g)/864e5:"week"===b?(d-g)/6048e5:d),c?e:q(e)},from:function(a,b){return vb.duration({to:this,from:a}).locale(this.locale()).humanize(!b)},fromNow:function(a){return this.from(vb(),a)},calendar:function(a){var b=a||vb(),c=M(b,this).startOf("day"),d=this.diff(c,"days",!0),e=-6>d?"sameElse":-1>d?"lastWeek":0>d?"lastDay":1>d?"sameDay":2>d?"nextDay":7>d?"nextWeek":"sameElse";return this.format(this.localeData().calendar(e,this,vb(b)))},isLeapYear:function(){return G(this.year())},isDST:function(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},day:function(a){var b=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=a?(a=gb(a,this.localeData()),this.add(a-b,"d")):b},month:qb("Month",!0),startOf:function(a){switch(a=z(a)){case"year":this.month(0);case"quarter":case"month":this.date(1);case"week":case"isoWeek":case"day":this.hours(0);case"hour":this.minutes(0);case"minute":this.seconds(0);case"second":this.milliseconds(0)}return"week"===a?this.weekday(0):"isoWeek"===a&&this.isoWeekday(1),"quarter"===a&&this.month(3*Math.floor(this.month()/3)),this},endOf:function(b){return b=z(b),b===a||"millisecond"===b?this:this.startOf(b).add(1,"isoWeek"===b?"week":b).subtract(1,"ms")},isAfter:function(a,b){var c;return b=z("undefined"!=typeof b?b:"millisecond"),"millisecond"===b?(a=vb.isMoment(a)?a:vb(a),+this>+a):(c=vb.isMoment(a)?+a:+vb(a),c<+this.clone().startOf(b))},isBefore:function(a,b){var c;return b=z("undefined"!=typeof b?b:"millisecond"),"millisecond"===b?(a=vb.isMoment(a)?a:vb(a),+a>+this):(c=vb.isMoment(a)?+a:+vb(a),+this.clone().endOf(b)a?this:a}),max:f("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(a){return a=vb.apply(null,arguments),a>this?this:a}),zone:f("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",function(a,b){return null!=a?("string"!=typeof a&&(a=-a),this.utcOffset(a,b),this):-this.utcOffset()}),utcOffset:function(a,b){var c,d=this._offset||0;return null!=a?("string"==typeof a&&(a=S(a)),Math.abs(a)<16&&(a=60*a),!this._isUTC&&b&&(c=this._dateUtcOffset()),this._offset=a,this._isUTC=!0,null!=c&&this.add(c,"m"),d!==a&&(!b||this._changeInProgress?v(this,vb.duration(a-d,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,vb.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?d:this._dateUtcOffset()},isLocal:function(){return!this._isUTC},isUtcOffset:function(){return this._isUTC},isUtc:function(){return this._isUTC&&0===this._offset},zoneAbbr:function(){return this._isUTC?"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},parseZone:function(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(S(this._i)),this},hasAlignedHourOffset:function(a){return a=a?vb(a).utcOffset():0,(this.utcOffset()-a)%60===0},daysInMonth:function(){return D(this.year(),this.month())},dayOfYear:function(a){var b=Ab((vb(this).startOf("day")-vb(this).startOf("year"))/864e5)+1;return null==a?b:this.add(a-b,"d")},quarter:function(a){return null==a?Math.ceil((this.month()+1)/3):this.month(3*(a-1)+this.month()%3)},weekYear:function(a){var b=jb(this,this.localeData()._week.dow,this.localeData()._week.doy).year;return null==a?b:this.add(a-b,"y")},isoWeekYear:function(a){var b=jb(this,1,4).year;return null==a?b:this.add(a-b,"y")},week:function(a){var b=this.localeData().week(this);return null==a?b:this.add(7*(a-b),"d")},isoWeek:function(a){var b=jb(this,1,4).week;return null==a?b:this.add(7*(a-b),"d")},weekday:function(a){var b=(this.day()+7-this.localeData()._week.dow)%7;return null==a?b:this.add(a-b,"d")},isoWeekday:function(a){return null==a?this.day()||7:this.day(this.day()%7?a:a-7)},isoWeeksInYear:function(){return E(this.year(),1,4)},weeksInYear:function(){var a=this.localeData()._week;return E(this.year(),a.dow,a.doy)},get:function(a){return a=z(a),this[a]()},set:function(a,b){var c;if("object"==typeof a)for(c in a)this.set(c,a[c]);else a=z(a),"function"==typeof this[a]&&this[a](b);return this},locale:function(b){var c;return b===a?this._locale._abbr:(c=vb.localeData(b),null!=c&&(this._locale=c),this)},lang:f("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(b){return b===a?this.localeData():this.locale(b)}),localeData:function(){return this._locale},_dateUtcOffset:function(){return 15*-Math.round(this._d.getTimezoneOffset()/15)}}),vb.fn.millisecond=vb.fn.milliseconds=qb("Milliseconds",!1),vb.fn.second=vb.fn.seconds=qb("Seconds",!1),vb.fn.minute=vb.fn.minutes=qb("Minutes",!1),vb.fn.hour=vb.fn.hours=qb("Hours",!0),vb.fn.date=qb("Date",!0),vb.fn.dates=f("dates accessor is deprecated. Use date instead.",qb("Date",!0)),vb.fn.year=qb("FullYear",!0),vb.fn.years=f("years accessor is deprecated. Use year instead.",qb("FullYear",!0)),vb.fn.days=vb.fn.day,vb.fn.months=vb.fn.month,vb.fn.weeks=vb.fn.week,vb.fn.isoWeeks=vb.fn.isoWeek,vb.fn.quarters=vb.fn.quarter,vb.fn.toJSON=vb.fn.toISOString,vb.fn.isUTC=vb.fn.isUtc,o(vb.duration.fn=n.prototype,{_bubble:function(){var a,b,c,d=this._milliseconds,e=this._days,f=this._months,g=this._data,h=0;g.milliseconds=d%1e3,a=q(d/1e3),g.seconds=a%60,b=q(a/60),g.minutes=b%60,c=q(b/60),g.hours=c%24,e+=q(c/24),h=q(rb(e)),e-=q(sb(h)),f+=q(e/30),e%=30,h+=q(f/12),f%=12,g.days=e,g.months=f,g.years=h},abs:function(){return this._milliseconds=Math.abs(this._milliseconds),this._days=Math.abs(this._days),this._months=Math.abs(this._months),this._data.milliseconds=Math.abs(this._data.milliseconds),this._data.seconds=Math.abs(this._data.seconds),this._data.minutes=Math.abs(this._data.minutes),this._data.hours=Math.abs(this._data.hours),this._data.months=Math.abs(this._data.months),this._data.years=Math.abs(this._data.years),this},weeks:function(){return q(this.days()/7)},valueOf:function(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*C(this._months/12) +},humanize:function(a){var b=ib(this,!a,this.localeData());return a&&(b=this.localeData().pastFuture(+this,b)),this.localeData().postformat(b)},add:function(a,b){var c=vb.duration(a,b);return this._milliseconds+=c._milliseconds,this._days+=c._days,this._months+=c._months,this._bubble(),this},subtract:function(a,b){var c=vb.duration(a,b);return this._milliseconds-=c._milliseconds,this._days-=c._days,this._months-=c._months,this._bubble(),this},get:function(a){return a=z(a),this[a.toLowerCase()+"s"]()},as:function(a){var b,c;if(a=z(a),"month"===a||"year"===a)return b=this._days+this._milliseconds/864e5,c=this._months+12*rb(b),"month"===a?c:c/12;switch(b=this._days+Math.round(sb(this._months/12)),a){case"week":return b/7+this._milliseconds/6048e5;case"day":return b+this._milliseconds/864e5;case"hour":return 24*b+this._milliseconds/36e5;case"minute":return 24*b*60+this._milliseconds/6e4;case"second":return 24*b*60*60+this._milliseconds/1e3;case"millisecond":return Math.floor(24*b*60*60*1e3)+this._milliseconds;default:throw new Error("Unknown unit "+a)}},lang:vb.fn.lang,locale:vb.fn.locale,toIsoString:f("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",function(){return this.toISOString()}),toISOString:function(){var a=Math.abs(this.years()),b=Math.abs(this.months()),c=Math.abs(this.days()),d=Math.abs(this.hours()),e=Math.abs(this.minutes()),f=Math.abs(this.seconds()+this.milliseconds()/1e3);return this.asSeconds()?(this.asSeconds()<0?"-":"")+"P"+(a?a+"Y":"")+(b?b+"M":"")+(c?c+"D":"")+(d||e||f?"T":"")+(d?d+"H":"")+(e?e+"M":"")+(f?f+"S":""):"P0D"},localeData:function(){return this._locale},toJSON:function(){return this.toISOString()}}),vb.duration.fn.toString=vb.duration.fn.toISOString;for(xb in kc)c(kc,xb)&&tb(xb.toLowerCase());vb.duration.fn.asMilliseconds=function(){return this.as("ms")},vb.duration.fn.asSeconds=function(){return this.as("s")},vb.duration.fn.asMinutes=function(){return this.as("m")},vb.duration.fn.asHours=function(){return this.as("h")},vb.duration.fn.asDays=function(){return this.as("d")},vb.duration.fn.asWeeks=function(){return this.as("weeks")},vb.duration.fn.asMonths=function(){return this.as("M")},vb.duration.fn.asYears=function(){return this.as("y")},vb.locale("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(a){var b=a%10,c=1===C(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c}}),function(a){a(vb)}(function(a){return a.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(a){return/^nm$/i.test(a)},meridiem:function(a,b,c){return 12>a?c?"vm":"VM":c?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[Môre om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(a){return a+(1===a||8===a||a>=20?"ste":"de")},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})}),function(a){a(vb)}(function(a){var b={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},c={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"};return a.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},meridiemParse:/ص|م/,isPM:function(a){return"م"===a},meridiem:function(a){return 12>a?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(a){return a.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},week:{dow:6,doy:12}})}),function(a){a(vb)}(function(a){return a.defineLocale("ar-tn",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){var b={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},c={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},d=function(a){return 0===a?0:1===a?1:2===a?2:a%100>=3&&10>=a%100?3:a%100>=11?4:5},e={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},f=function(a){return function(b,c){var f=d(b),g=e[a][d(b)];return 2===f&&(g=g[c?0:1]),g.replace(/%d/i,b)}},g=["كانون الثاني يناير","شباط فبراير","آذار مارس","نيسان أبريل","أيار مايو","حزيران يونيو","تموز يوليو","آب أغسطس","أيلول سبتمبر","تشرين الأول أكتوبر","تشرين الثاني نوفمبر","كانون الأول ديسمبر"];return a.defineLocale("ar",{months:g,monthsShort:g,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},meridiemParse:/ص|م/,isPM:function(a){return"م"===a},meridiem:function(a){return 12>a?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:f("s"),m:f("m"),mm:f("m"),h:f("h"),hh:f("h"),d:f("d"),dd:f("d"),M:f("M"),MM:f("M"),y:f("y"),yy:f("y")},preparse:function(a){return a.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},week:{dow:6,doy:12}})}),function(a){a(vb)}(function(a){var b={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"};return a.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"birneçə saniyyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gecə|səhər|gündüz|axşam/,isPM:function(a){return/^(gündüz|axşam)$/.test(a)},meridiem:function(a){return 4>a?"gecə":12>a?"səhər":17>a?"gündüz":"axşam"},ordinalParse:/\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,ordinal:function(a){if(0===a)return a+"-ıncı";var c=a%10,d=a%100-c,e=a>=100?100:null;return a+(b[c]||b[d]||b[e])},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:c?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:c?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"};return"m"===d?c?"хвіліна":"хвіліну":"h"===d?c?"гадзіна":"гадзіну":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_"),accusative:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),accusative:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_")},d=/\[ ?[Вв] ?(?:мінулую|наступную)? ?\] ?dddd/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("be",{months:d,monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:e,weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., LT",LLLL:"dddd, D MMMM YYYY г., LT"},calendar:{sameDay:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:c,mm:c,h:c,hh:c,d:"дзень",dd:c,M:"месяц",MM:c,y:"год",yy:c},meridiemParse:/ночы|раніцы|дня|вечара/,isPM:function(a){return/^(дня|вечара)$/.test(a)},meridiem:function(a){return 4>a?"ночы":12>a?"раніцы":17>a?"дня":"вечара"},ordinalParse:/\d{1,2}-(і|ы|га)/,ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":case"w":case"W":return a%10!==2&&a%10!==3||a%100===12||a%100===13?a+"-ы":a+"-і";case"D":return a+"-га";default:return a}},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[В изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[В изминалия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дни",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},ordinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(a){var b=a%10,c=a%100;return 0===a?a+"-ев":0===c?a+"-ен":c>10&&20>c?a+"-ти":1===b?a+"-ви":2===b?a+"-ри":7===b||8===b?a+"-ми":a+"-ти"},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){var b={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},c={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"};return a.defineLocale("bn",{months:"জানুয়ারী_ফেবুয়ারী_মার্চ_এপ্রিল_মে_জুন_জুলাই_অগাস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব_মার্চ_এপর_মে_জুন_জুল_অগ_সেপ্ট_অক্টো_নভ_ডিসেম্".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পত্তিবার_শুক্রুবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পত্তি_শুক্রু_শনি".split("_"),weekdaysMin:"রব_সম_মঙ্গ_বু_ব্রিহ_শু_শনি".split("_"),longDateFormat:{LT:"A h:mm সময়",LTS:"A h:mm:ss সময়",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কএক সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(a){return a.replace(/[১২৩৪৫৬৭৮৯০]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiemParse:/রাত|শকাল|দুপুর|বিকেল|রাত/,isPM:function(a){return/^(দুপুর|বিকেল|রাত)$/.test(a)},meridiem:function(a){return 4>a?"রাত":10>a?"শকাল":17>a?"দুপুর":20>a?"বিকেল":"রাত"},week:{dow:0,doy:6}})}),function(a){a(vb)}(function(a){var b={1:"༡",2:"༢",3:"༣",4:"༤",5:"༥",6:"༦",7:"༧",8:"༨",9:"༩",0:"༠"},c={"༡":"1","༢":"2","༣":"3","༤":"4","༥":"5","༦":"6","༧":"7","༨":"8","༩":"9","༠":"0"};return a.defineLocale("bo",{months:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),monthsShort:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),weekdays:"གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),weekdaysShort:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),weekdaysMin:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),longDateFormat:{LT:"A h:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[དི་རིང] LT",nextDay:"[སང་ཉིན] LT",nextWeek:"[བདུན་ཕྲག་རྗེས་མ], LT",lastDay:"[ཁ་སང] LT",lastWeek:"[བདུན་ཕྲག་མཐའ་མ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ལ་",past:"%s སྔན་ལ",s:"ལམ་སང",m:"སྐར་མ་གཅིག",mm:"%d སྐར་མ",h:"ཆུ་ཚོད་གཅིག",hh:"%d ཆུ་ཚོད",d:"ཉིན་གཅིག",dd:"%d ཉིན་",M:"ཟླ་བ་གཅིག",MM:"%d ཟླ་བ",y:"ལོ་གཅིག",yy:"%d ལོ"},preparse:function(a){return a.replace(/[༡༢༣༤༥༦༧༨༩༠]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiemParse:/མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,isPM:function(a){return/^(ཉིན་གུང|དགོང་དག|མཚན་མོ)$/.test(a)},meridiem:function(a){return 4>a?"མཚན་མོ":10>a?"ཞོགས་ཀས":17>a?"ཉིན་གུང":20>a?"དགོང་དག":"མཚན་མོ"},week:{dow:0,doy:6}})}),function(a){a(vb)}(function(b){function c(a,b,c){var d={mm:"munutenn",MM:"miz",dd:"devezh"};return a+" "+f(d[c],a)}function d(a){switch(e(a)){case 1:case 3:case 4:case 5:case 9:return a+" bloaz";default:return a+" vloaz"}}function e(a){return a>9?e(a%10):a}function f(a,b){return 2===b?g(a):a}function g(b){var c={m:"v",b:"v",d:"z"};return c[b.charAt(0)]===a?b:c[b.charAt(0)]+b.substring(1)}return b.defineLocale("br",{months:"Genver_C'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc'her_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),longDateFormat:{LT:"h[e]mm A",LTS:"h[e]mm:ss A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY LT",LLLL:"dddd, D [a viz] MMMM YYYY LT"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc'hoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec'h da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s 'zo",s:"un nebeud segondennoù",m:"ur vunutenn",mm:c,h:"un eur",hh:"%d eur",d:"un devezh",dd:c,M:"ur miz",MM:c,y:"ur bloaz",yy:d},ordinalParse:/\d{1,2}(añ|vet)/,ordinal:function(a){var b=1===a?"añ":"vet";return a+b},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"jedna minuta":"jedne minute";case"mm":return d+=1===a?"minuta":2===a||3===a||4===a?"minute":"minuta";case"h":return b?"jedan sat":"jednog sata";case"hh":return d+=1===a?"sat":2===a||3===a||4===a?"sata":"sati";case"dd":return d+=1===a?"dan":"dana";case"MM":return d+=1===a?"mjesec":2===a||3===a||4===a?"mjeseca":"mjeseci";case"yy":return d+=1===a?"godina":2===a||3===a||4===a?"godine":"godina"}}return a.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:b,mm:b,h:b,hh:b,d:"dan",dd:b,M:"mjesec",MM:b,y:"godinu",yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("ca",{months:"gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),monthsShort:"gen._febr._mar._abr._mai._jun._jul._ag._set._oct._nov._des.".split("_"),weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"Dg_Dl_Dt_Dc_Dj_Dv_Ds".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[demà a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fa %s",s:"uns segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},ordinalParse:/\d{1,2}(r|n|t|è|a)/,ordinal:function(a,b){var c=1===a?"r":2===a?"n":3===a?"r":4===a?"t":"è";return("w"===b||"W"===b)&&(c="a"),a+c},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){function b(a){return a>1&&5>a&&1!==~~(a/10)}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"pár sekund":"pár sekundami";case"m":return c?"minuta":e?"minutu":"minutou";case"mm":return c||e?f+(b(a)?"minuty":"minut"):f+"minutami";break;case"h":return c?"hodina":e?"hodinu":"hodinou";case"hh":return c||e?f+(b(a)?"hodiny":"hodin"):f+"hodinami";break;case"d":return c||e?"den":"dnem";case"dd":return c||e?f+(b(a)?"dny":"dní"):f+"dny";break;case"M":return c||e?"měsíc":"měsícem";case"MM":return c||e?f+(b(a)?"měsíce":"měsíců"):f+"měsíci";break;case"y":return c||e?"rok":"rokem";case"yy":return c||e?f+(b(a)?"roky":"let"):f+"lety"}}var d="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),e="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_");return a.defineLocale("cs",{months:d,monthsShort:e,monthsParse:function(a,b){var c,d=[];for(c=0;12>c;c++)d[c]=new RegExp("^"+a[c]+"$|^"+b[c]+"$","i");return d}(d,e),weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("cv",{months:"кăрлач_нарăс_пуш_ака_май_çĕртме_утă_çурла_авăн_юпа_чӳк_раштав".split("_"),monthsShort:"кăр_нар_пуш_ака_май_çĕр_утă_çур_ав_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кĕçнерникун_эрнекун_шăматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кĕç_эрн_шăм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кç_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD-MM-YYYY",LL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ]",LLL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT",LLLL:"dddd, YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ĕнер] LT [сехетре]",nextWeek:"[Çитес] dddd LT [сехетре]",lastWeek:"[Иртнĕ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(a){var b=/сехет$/i.exec(a)?"рен":/çул$/i.exec(a)?"тан":"ран";return a+b},past:"%s каялла",s:"пĕр-ик çеккунт",m:"пĕр минут",mm:"%d минут",h:"пĕр сехет",hh:"%d сехет",d:"пĕр кун",dd:"%d кун",M:"пĕр уйăх",MM:"%d уйăх",y:"пĕр çул",yy:"%d çул"},ordinalParse:/\d{1,2}-мĕш/,ordinal:"%d-мĕш",week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn ôl",s:"ychydig eiliadau",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},ordinalParse:/\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,ordinal:function(a){var b=a,c="",d=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"];return b>20?c=40===b||50===b||60===b||80===b||100===b?"fed":"ain":b>0&&(c=d[b]),a+c},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd [d.] D. MMMM YYYY LT"},calendar:{sameDay:"[I dag kl.] LT",nextDay:"[I morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[I går kl.] LT",lastWeek:"[sidste] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){function b(a,b,c){var d={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[a+" Tage",a+" Tagen"],M:["ein Monat","einem Monat"],MM:[a+" Monate",a+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[a+" Jahre",a+" Jahren"]};return b?d[c][0]:d[c][1]}return a.defineLocale("de-at",{months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Heute um] LT [Uhr]",sameElse:"L",nextDay:"[Morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[Gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:b,mm:"%d Minuten",h:b,hh:"%d Stunden",d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){function b(a,b,c){var d={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[a+" Tage",a+" Tagen"],M:["ein Monat","einem Monat"],MM:[a+" Monate",a+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[a+" Jahre",a+" Jahren"]};return b?d[c][0]:d[c][1]}return a.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Heute um] LT [Uhr]",sameElse:"L",nextDay:"[Morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[Gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:b,mm:"%d Minuten",h:b,hh:"%d Stunden",d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(a,b){return/D/.test(b.substring(0,b.indexOf("MMMM")))?this._monthsGenitiveEl[a.month()]:this._monthsNominativeEl[a.month()]},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(a,b,c){return a>11?c?"μμ":"ΜΜ":c?"πμ":"ΠΜ"},isPM:function(a){return"μ"===(a+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendarEl:{sameDay:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(a,b){var c=this._calendarEl[a],d=b&&b.hours();return"function"==typeof c&&(c=c.apply(b)),c.replace("{}",d%12===1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"λίγα δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},ordinalParse:/\d{1,2}η/,ordinal:"%dη",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"D MMMM, YYYY",LLL:"D MMMM, YYYY LT",LLLL:"dddd, D MMMM, YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th"; +return a+c}})}),function(a){a(vb)}(function(a){return a.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec".split("_"),weekdays:"Dimanĉo_Lundo_Mardo_Merkredo_Ĵaŭdo_Vendredo_Sabato".split("_"),weekdaysShort:"Dim_Lun_Mard_Merk_Ĵaŭ_Ven_Sab".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Ĵa_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"YYYY-MM-DD",LL:"D[-an de] MMMM, YYYY",LLL:"D[-an de] MMMM, YYYY LT",LLLL:"dddd, [la] D[-an de] MMMM, YYYY LT"},meridiemParse:/[ap]\.t\.m/i,isPM:function(a){return"p"===a.charAt(0).toLowerCase()},meridiem:function(a,b,c){return a>11?c?"p.t.m.":"P.T.M.":c?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd [je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"je %s",past:"antaŭ %s",s:"sekundoj",m:"minuto",mm:"%d minutoj",h:"horo",hh:"%d horoj",d:"tago",dd:"%d tagoj",M:"monato",MM:"%d monatoj",y:"jaro",yy:"%d jaroj"},ordinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){var b="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),c="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_");return a.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(a,d){return/-MMM-/.test(d)?c[a.month()]:b[a.month()]},weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"Do_Lu_Ma_Mi_Ju_Vi_Sá".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){function b(a,b,c,d){var e={s:["mõne sekundi","mõni sekund","paar sekundit"],m:["ühe minuti","üks minut"],mm:[a+" minuti",a+" minutit"],h:["ühe tunni","tund aega","üks tund"],hh:[a+" tunni",a+" tundi"],d:["ühe päeva","üks päev"],M:["kuu aja","kuu aega","üks kuu"],MM:[a+" kuu",a+" kuud"],y:["ühe aasta","aasta","üks aasta"],yy:[a+" aasta",a+" aastat"]};return b?e[c][2]?e[c][2]:e[c][1]:d?e[c][0]:e[c][1]}return a.defineLocale("et",{months:"jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Täna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:"%d päeva",M:b,MM:b,y:b,yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] LT",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] LT",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] LT",llll:"ddd, YYYY[ko] MMM D[a] LT"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){var b={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},c={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"};return a.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},meridiemParse:/قبل از ظهر|بعد از ظهر/,isPM:function(a){return/بعد از ظهر/.test(a)},meridiem:function(a){return 12>a?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چندین ثانیه",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(a){return a.replace(/[۰-۹]/g,function(a){return c[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]}).replace(/,/g,"،")},ordinalParse:/\d{1,2}م/,ordinal:"%dم",week:{dow:6,doy:12}})}),function(a){a(vb)}(function(a){function b(a,b,d,e){var f="";switch(d){case"s":return e?"muutaman sekunnin":"muutama sekunti";case"m":return e?"minuutin":"minuutti";case"mm":f=e?"minuutin":"minuuttia";break;case"h":return e?"tunnin":"tunti";case"hh":f=e?"tunnin":"tuntia";break;case"d":return e?"päivän":"päivä";case"dd":f=e?"päivän":"päivää";break;case"M":return e?"kuukauden":"kuukausi";case"MM":f=e?"kuukauden":"kuukautta";break;case"y":return e?"vuoden":"vuosi";case"yy":f=e?"vuoden":"vuotta"}return f=c(a,e)+" "+f}function c(a,b){return 10>a?b?e[a]:d[a]:a}var d="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),e=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",d[7],d[8],d[9]];return a.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] LT",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] LT",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] LT",llll:"ddd, Do MMM YYYY, [klo] LT"},calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("fo",{months:"januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D. MMMM, YYYY LT"},calendar:{sameDay:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",m:"ein minutt",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaði",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("fr-ca",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinalParse:/\d{1,2}(er|)/,ordinal:function(a){return a+(1===a?"er":"")}})}),function(a){a(vb)}(function(a){return a.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinalParse:/\d{1,2}(er|)/,ordinal:function(a){return a+(1===a?"er":"")},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){var b="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),c="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_");return a.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(a,d){return/-MMM-/.test(d)?c[a.month()]:b[a.month()]},weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[ôfrûne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",m:"ien minút",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(a){return a+(1===a||8===a||a>=20?"ste":"de")},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("gl",{months:"Xaneiro_Febreiro_Marzo_Abril_Maio_Xuño_Xullo_Agosto_Setembro_Outubro_Novembro_Decembro".split("_"),monthsShort:"Xan._Feb._Mar._Abr._Mai._Xuñ._Xul._Ago._Set._Out._Nov._Dec.".split("_"),weekdays:"Domingo_Luns_Martes_Mércores_Xoves_Venres_Sábado".split("_"),weekdaysShort:"Dom._Lun._Mar._Mér._Xov._Ven._Sáb.".split("_"),weekdaysMin:"Do_Lu_Ma_Mé_Xo_Ve_Sá".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(a){return"uns segundos"===a?"nuns segundos":"en "+a},past:"hai %s",s:"uns segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("he",{months:"ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),monthsShort:"ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),weekdays:"ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),weekdaysShort:"א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),weekdaysMin:"א_ב_ג_ד_ה_ו_ש".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D [ב]MMMM YYYY",LLL:"D [ב]MMMM YYYY LT",LLLL:"dddd, D [ב]MMMM YYYY LT",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY LT",llll:"ddd, D MMM YYYY LT"},calendar:{sameDay:"[היום ב־]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[אתמול ב־]LT",lastWeek:"[ביום] dddd [האחרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"לפני %s",s:"מספר שניות",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(a){return 2===a?"שעתיים":a+" שעות"},d:"יום",dd:function(a){return 2===a?"יומיים":a+" ימים"},M:"חודש",MM:function(a){return 2===a?"חודשיים":a+" חודשים"},y:"שנה",yy:function(a){return 2===a?"שנתיים":a%10===0&&10!==a?a+" שנה":a+" שנים"}}})}),function(a){a(vb)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("hi",{months:"जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),monthsShort:"जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),weekdays:"रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm बजे",LTS:"A h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कुछ ही क्षण",m:"एक मिनट",mm:"%d मिनट",h:"एक घंटा",hh:"%d घंटे",d:"एक दिन",dd:"%d दिन",M:"एक महीने",MM:"%d महीने",y:"एक वर्ष",yy:"%d वर्ष"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiemParse:/रात|सुबह|दोपहर|शाम/,meridiemHour:function(a,b){return 12===a&&(a=0),"रात"===b?4>a?a:a+12:"सुबह"===b?a:"दोपहर"===b?a>=10?a:a+12:"शाम"===b?a+12:void 0},meridiem:function(a){return 4>a?"रात":10>a?"सुबह":17>a?"दोपहर":20>a?"शाम":"रात"},week:{dow:0,doy:6}})}),function(a){a(vb)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"jedna minuta":"jedne minute";case"mm":return d+=1===a?"minuta":2===a||3===a||4===a?"minute":"minuta";case"h":return b?"jedan sat":"jednog sata";case"hh":return d+=1===a?"sat":2===a||3===a||4===a?"sata":"sati";case"dd":return d+=1===a?"dan":"dana";case"MM":return d+=1===a?"mjesec":2===a||3===a||4===a?"mjeseca":"mjeseci";case"yy":return d+=1===a?"godina":2===a||3===a||4===a?"godine":"godina"}}return a.defineLocale("hr",{months:"sječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_"),monthsShort:"sje._vel._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:b,mm:b,h:b,hh:b,d:"dan",dd:b,M:"mjesec",MM:b,y:"godinu",yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){function b(a,b,c,d){var e=a;switch(c){case"s":return d||b?"néhány másodperc":"néhány másodperce";case"m":return"egy"+(d||b?" perc":" perce");case"mm":return e+(d||b?" perc":" perce");case"h":return"egy"+(d||b?" óra":" órája");case"hh":return e+(d||b?" óra":" órája");case"d":return"egy"+(d||b?" nap":" napja");case"dd":return e+(d||b?" nap":" napja");case"M":return"egy"+(d||b?" hónap":" hónapja");case"MM":return e+(d||b?" hónap":" hónapja");case"y":return"egy"+(d||b?" év":" éve");case"yy":return e+(d||b?" év":" éve")}return""}function c(a){return(a?"":"[múlt] ")+"["+d[this.day()]+"] LT[-kor]"}var d="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");return a.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec".split("_"),weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D., LT",LLLL:"YYYY. MMMM D., dddd LT"},meridiemParse:/de|du/i,isPM:function(a){return"u"===a.charAt(1).toLowerCase()},meridiem:function(a,b,c){return 12>a?c===!0?"de":"DE":c===!0?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return c.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return c.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){function b(a,b){var c={nominative:"հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_"),accusative:"հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function c(a){var b="հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_");return b[a.month()]}function d(a){var b="կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_");return b[a.day()]}return a.defineLocale("hy-am",{months:b,monthsShort:c,weekdays:d,weekdaysShort:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),weekdaysMin:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY թ.",LLL:"D MMMM YYYY թ., LT",LLLL:"dddd, D MMMM YYYY թ., LT"},calendar:{sameDay:"[այսօր] LT",nextDay:"[վաղը] LT",lastDay:"[երեկ] LT",nextWeek:function(){return"dddd [օրը ժամը] LT"},lastWeek:function(){return"[անցած] dddd [օրը ժամը] LT"},sameElse:"L"},relativeTime:{future:"%s հետո",past:"%s առաջ",s:"մի քանի վայրկյան",m:"րոպե",mm:"%d րոպե",h:"ժամ",hh:"%d ժամ",d:"օր",dd:"%d օր",M:"ամիս",MM:"%d ամիս",y:"տարի",yy:"%d տարի"},meridiemParse:/գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,isPM:function(a){return/^(ցերեկվա|երեկոյան)$/.test(a)},meridiem:function(a){return 4>a?"գիշերվա":12>a?"առավոտվա":17>a?"ցերեկվա":"երեկոյան"},ordinalParse:/\d{1,2}|\d{1,2}-(ին|րդ)/,ordinal:function(a,b){switch(b){case"DDD":case"w":case"W":case"DDDo":return 1===a?a+"-ին":a+"-րդ";default:return a}},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"LT.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(a,b){return 12===a&&(a=0),"pagi"===b?a:"siang"===b?a>=11?a:a+12:"sore"===b||"malam"===b?a+12:void 0},meridiem:function(a){return 11>a?"pagi":15>a?"siang":19>a?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){function b(a){return a%100===11?!0:a%10===1?!1:!0}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"nokkrar sekúndur":"nokkrum sekúndum";case"m":return c?"mínúta":"mínútu";case"mm":return b(a)?f+(c||e?"mínútur":"mínútum"):c?f+"mínúta":f+"mínútu";case"hh":return b(a)?f+(c||e?"klukkustundir":"klukkustundum"):f+"klukkustund";case"d":return c?"dagur":e?"dag":"degi";case"dd":return b(a)?c?f+"dagar":f+(e?"daga":"dögum"):c?f+"dagur":f+(e?"dag":"degi");case"M":return c?"mánuður":e?"mánuð":"mánuði";case"MM":return b(a)?c?f+"mánuðir":f+(e?"mánuði":"mánuðum"):c?f+"mánuður":f+(e?"mánuð":"mánuði");case"y":return c||e?"ár":"ári";case"yy":return b(a)?f+(c||e?"ár":"árum"):f+(c||e?"ár":"ári")}}return a.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd, D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:c,m:c,mm:c,h:"klukkustund",hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"Domenica_Lunedì_Martedì_Mercoledì_Giovedì_Venerdì_Sabato".split("_"),weekdaysShort:"Dom_Lun_Mar_Mer_Gio_Ven_Sab".split("_"),weekdaysMin:"D_L_Ma_Me_G_V_S".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(a){return(/^[0-9].+$/.test(a)?"tra":"in")+" "+a},past:"%s fa",s:"alcuni secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("ja",{months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"Ah時m分",LTS:"LTs秒",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日LT",LLLL:"YYYY年M月D日LT dddd"},meridiemParse:/午前|午後/i,isPM:function(a){return"午後"===a},meridiem:function(a){return 12>a?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:"[来週]dddd LT",lastDay:"[昨日] LT",lastWeek:"[前週]dddd LT",sameElse:"L"},relativeTime:{future:"%s後",past:"%s前",s:"数秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}})}),function(a){a(vb)}(function(a){function b(a,b){var c={nominative:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),accusative:"იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს".split("_")},d=/D[oD] *MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function c(a,b){var c={nominative:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),accusative:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_")},d=/(წინა|შემდეგ)/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("ka",{months:b,monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:c,weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(a){return/(წამი|წუთი|საათი|წელი)/.test(a)?a.replace(/ი$/,"ში"):a+"ში"},past:function(a){return/(წამი|წუთი|საათი|დღე|თვე)/.test(a)?a.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(a)?a.replace(/წელი$/,"წლის წინ"):void 0},s:"რამდენიმე წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},ordinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal:function(a){return 0===a?a:1===a?a+"-ლი":20>a||100>=a&&a%20===0||a%100===0?"მე-"+a:a+"-ე"},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("km",{months:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),monthsShort:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),weekdays:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysShort:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysMin:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[ថ្ងៃនៈ ម៉ោង] LT",nextDay:"[ស្អែក ម៉ោង] LT",nextWeek:"dddd [ម៉ោង] LT",lastDay:"[ម្សិលមិញ ម៉ោង] LT",lastWeek:"dddd [សប្តាហ៍មុន] [ម៉ោង] LT",sameElse:"L"},relativeTime:{future:"%sទៀត",past:"%sមុន",s:"ប៉ុន្មានវិនាទី",m:"មួយនាទី",mm:"%d នាទី",h:"មួយម៉ោង",hh:"%d ម៉ោង",d:"មួយថ្ងៃ",dd:"%d ថ្ងៃ",M:"មួយខែ",MM:"%d ខែ",y:"មួយឆ្នាំ",yy:"%d ឆ្នាំ"},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h시 m분",LTS:"A h시 m분 s초",L:"YYYY.MM.DD",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 LT",LLLL:"YYYY년 MMMM D일 dddd LT"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇초",ss:"%d초",m:"일분",mm:"%d분",h:"한시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한달",MM:"%d달",y:"일년",yy:"%d년"},ordinalParse:/\d{1,2}일/,ordinal:"%d일",meridiemParse:/오전|오후/,isPM:function(a){return"오후"===a},meridiem:function(a){return 12>a?"오전":"오후"}})}),function(a){a(vb)}(function(a){function b(a,b,c){var d={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return b?d[c][0]:d[c][1]}function c(a){var b=a.substr(0,a.indexOf(" "));return e(b)?"a "+a:"an "+a}function d(a){var b=a.substr(0,a.indexOf(" "));return e(b)?"viru "+a:"virun "+a}function e(a){if(a=parseInt(a,10),isNaN(a))return!1;if(0>a)return!0;if(10>a)return a>=4&&7>=a?!0:!1;if(100>a){var b=a%10,c=a/10;return e(0===b?c:b)}if(1e4>a){for(;a>=10;)a/=10;return e(a)}return a/=1e3,e(a)}return a.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_Do_Fr_Sa".split("_"),longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gëschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:c,past:d,s:"e puer Sekonnen",m:b,mm:"%d Minutten",h:b,hh:"%d Stonnen",d:b,dd:"%d Deeg",M:b,MM:"%d Méint",y:b,yy:"%d Joer"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){function b(a,b,c,d){return b?"kelios sekundės":d?"kelių sekundžių":"kelias sekundes"}function c(a,b,c,d){return b?e(c)[0]:d?e(c)[1]:e(c)[2] +}function d(a){return a%10===0||a>10&&20>a}function e(a){return h[a].split("_")}function f(a,b,f,g){var h=a+" ";return 1===a?h+c(a,b,f[0],g):b?h+(d(a)?e(f)[1]:e(f)[0]):g?h+e(f)[1]:h+(d(a)?e(f)[1]:e(f)[2])}function g(a,b){var c=-1===b.indexOf("dddd HH:mm"),d=i[a.day()];return c?d:d.substring(0,d.length-2)+"į"}var h={m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"},i="sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_");return a.defineLocale("lt",{months:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:g,weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], LT [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, LT [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], LT [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, LT [val.]"},calendar:{sameDay:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:b,m:c,mm:f,h:c,hh:f,d:c,dd:f,M:c,MM:f,y:c,yy:f},ordinalParse:/\d{1,2}-oji/,ordinal:function(a){return a+"-oji"},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){function b(a,b,c){var d=a.split("_");return c?b%10===1&&11!==b?d[2]:d[3]:b%10===1&&11!==b?d[0]:d[1]}function c(a,c,e){return a+" "+b(d[e],a,c)}var d={mm:"minūti_minūtes_minūte_minūtes",hh:"stundu_stundas_stunda_stundas",dd:"dienu_dienas_diena_dienas",MM:"mēnesi_mēnešus_mēnesis_mēneši",yy:"gadu_gadus_gads_gadi"};return a.defineLocale("lv",{months:"janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),weekdays:"svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, LT",LLLL:"YYYY. [gada] D. MMMM, dddd, LT"},calendar:{sameDay:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pagājušā] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"%s vēlāk",past:"%s agrāk",s:"dažas sekundes",m:"minūti",mm:c,h:"stundu",hh:c,d:"dienu",dd:c,M:"mēnesi",MM:c,y:"gadu",yy:c},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Во изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Во изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"после %s",past:"пред %s",s:"неколку секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",M:"месец",MM:"%d месеци",y:"година",yy:"%d години"},ordinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(a){var b=a%10,c=a%100;return 0===a?a+"-ев":0===c?a+"-ен":c>10&&20>c?a+"-ти":1===b?a+"-ви":2===b?a+"-ри":7===b||8===b?a+"-ми":a+"-ти"},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".split("_"),longDateFormat:{LT:"A h:mm -നു",LTS:"A h:mm:ss -നു",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiemParse:/രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,isPM:function(a){return/^(ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി)$/.test(a)},meridiem:function(a){return 4>a?"രാത്രി":12>a?"രാവിലെ":17>a?"ഉച്ച കഴിഞ്ഞ്":20>a?"വൈകുന്നേരം":"രാത്രി"}})}),function(a){a(vb)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm वाजता",LTS:"A h:mm:ss वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%s नंतर",past:"%s पूर्वी",s:"सेकंद",m:"एक मिनिट",mm:"%d मिनिटे",h:"एक तास",hh:"%d तास",d:"एक दिवस",dd:"%d दिवस",M:"एक महिना",MM:"%d महिने",y:"एक वर्ष",yy:"%d वर्षे"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiemParse:/रात्री|सकाळी|दुपारी|सायंकाळी/,meridiemHour:function(a,b){return 12===a&&(a=0),"रात्री"===b?4>a?a:a+12:"सकाळी"===b?a:"दुपारी"===b?a>=10?a:a+12:"सायंकाळी"===b?a+12:void 0},meridiem:function(a){return 4>a?"रात्री":10>a?"सकाळी":17>a?"दुपारी":20>a?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}})}),function(a){a(vb)}(function(a){return a.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"LT.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(a,b){return 12===a&&(a=0),"pagi"===b?a:"tengahari"===b?a>=11?a:a+12:"petang"===b||"malam"===b?a+12:void 0},meridiem:function(a){return 11>a?"pagi":15>a?"tengahari":19>a?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){var b={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},c={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"};return a.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_င်္ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_င်္ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(a){return a.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tirs_ons_tors_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"H.mm",LTS:"LT.ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s siden",s:"noen sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en måned",MM:"%d måneder",y:"ett år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},c={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};return a.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आइ._सो._मङ्_बु._बि._शु._श.".split("_"),longDateFormat:{LT:"Aको h:mm बजे",LTS:"Aको h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},preparse:function(a){return a.replace(/[१२३४५६७८९०]/g,function(a){return c[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiemParse:/राती|बिहान|दिउँसो|बेलुका|साँझ|राती/,meridiemHour:function(a,b){return 12===a&&(a=0),"राती"===b?3>a?a:a+12:"बिहान"===b?a:"दिउँसो"===b?a>=10?a:a+12:"बेलुका"===b||"साँझ"===b?a+12:void 0},meridiem:function(a){return 3>a?"राती":10>a?"बिहान":15>a?"दिउँसो":18>a?"बेलुका":20>a?"साँझ":"राती"},calendar:{sameDay:"[आज] LT",nextDay:"[भोली] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडी",s:"केही समय",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){var b="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),c="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_");return a.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(a,d){return/-MMM-/.test(d)?c[a.month()]:b[a.month()]},weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"Zo_Ma_Di_Wo_Do_Vr_Za".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(a){return a+(1===a||8===a||a>=20?"ste":"de")},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"sun_mån_tys_ons_tor_fre_lau".split("_"),weekdaysMin:"su_må_ty_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I går klokka] LT",lastWeek:"[Føregåande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s sidan",s:"nokre sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",M:"ein månad",MM:"%d månader",y:"eit år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){function b(a){return 5>a%10&&a%10>1&&~~(a/10)%10!==1}function c(a,c,d){var e=a+" ";switch(d){case"m":return c?"minuta":"minutę";case"mm":return e+(b(a)?"minuty":"minut");case"h":return c?"godzina":"godzinę";case"hh":return e+(b(a)?"godziny":"godzin");case"MM":return e+(b(a)?"miesiące":"miesięcy");case"yy":return e+(b(a)?"lata":"lat")}}var d="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),e="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_");return a.defineLocale("pl",{months:function(a,b){return/D MMMM/.test(b)?e[a.month()]:d[a.month()]},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"nie_pon_wt_śr_czw_pt_sb".split("_"),weekdaysMin:"N_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek:"[W] dddd [o] LT",lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",m:c,mm:c,h:c,hh:c,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:c,y:"rok",yy:c},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("pt-br",{months:"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_sáb".split("_"),weekdaysMin:"dom_2ª_3ª_4ª_5ª_6ª_sáb".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [às] LT",LLLL:"dddd, D [de] MMMM [de] YYYY [às] LT"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº"})}),function(a){a(vb)}(function(a){return a.defineLocale("pt",{months:"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_sáb".split("_"),weekdaysMin:"dom_2ª_3ª_4ª_5ª_6ª_sáb".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){function b(a,b,c){var d={mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"},e=" ";return(a%100>=20||a>=100&&a%100===0)&&(e=" de "),a+e+d[c]}return a.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),weekdays:"duminică_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_Sâ".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[mâine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",m:"un minut",mm:b,h:"o oră",hh:b,d:"o zi",dd:b,M:"o lună",MM:b,y:"un an",yy:b},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:c?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",MM:"месяц_месяца_месяцев",yy:"год_года_лет"};return"m"===d?c?"минута":"минуту":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),accusative:"января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_"),accusative:"янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек".split("_")},d=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function f(a,b){var c={nominative:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),accusative:"воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу".split("_")},d=/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/.test(b)?"accusative":"nominative";return c[d][a.day()]}return a.defineLocale("ru",{months:d,monthsShort:e,weekdays:f,weekdaysShort:"вс_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),monthsParse:[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[й|я]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i],longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., LT",LLLL:"dddd, D MMMM YYYY г., LT"},calendar:{sameDay:"[Сегодня в] LT",nextDay:"[Завтра в] LT",lastDay:"[Вчера в] LT",nextWeek:function(){return 2===this.day()?"[Во] dddd [в] LT":"[В] dddd [в] LT"},lastWeek:function(a){if(a.week()===this.week())return 2===this.day()?"[Во] dddd [в] LT":"[В] dddd [в] LT";switch(this.day()){case 0:return"[В прошлое] dddd [в] LT";case 1:case 2:case 4:return"[В прошлый] dddd [в] LT";case 3:case 5:case 6:return"[В прошлую] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",m:c,mm:c,h:"час",hh:c,d:"день",dd:c,M:"месяц",MM:c,y:"год",yy:c},meridiemParse:/ночи|утра|дня|вечера/i,isPM:function(a){return/^(дня|вечера)$/.test(a)},meridiem:function(a){return 4>a?"ночи":12>a?"утра":17>a?"дня":"вечера"},ordinalParse:/\d{1,2}-(й|го|я)/,ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":return a+"-й";case"D":return a+"-го";case"w":case"W":return a+"-я";default:return a}},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){function b(a){return a>1&&5>a}function c(a,c,d,e){var f=a+" ";switch(d){case"s":return c||e?"pár sekúnd":"pár sekundami";case"m":return c?"minúta":e?"minútu":"minútou";case"mm":return c||e?f+(b(a)?"minúty":"minút"):f+"minútami";break;case"h":return c?"hodina":e?"hodinu":"hodinou";case"hh":return c||e?f+(b(a)?"hodiny":"hodín"):f+"hodinami";break;case"d":return c||e?"deň":"dňom";case"dd":return c||e?f+(b(a)?"dni":"dní"):f+"dňami";break;case"M":return c||e?"mesiac":"mesiacom";case"MM":return c||e?f+(b(a)?"mesiace":"mesiacov"):f+"mesiacmi";break;case"y":return c||e?"rok":"rokom";case"yy":return c||e?f+(b(a)?"roky":"rokov"):f+"rokmi"}}var d="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),e="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_");return a.defineLocale("sk",{months:d,monthsShort:e,monthsParse:function(a,b){var c,d=[];for(c=0;12>c;c++)d[c]=new RegExp("^"+a[c]+"$|^"+b[c]+"$","i");return d}(d,e),weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){function b(a,b,c){var d=a+" ";switch(c){case"m":return b?"ena minuta":"eno minuto";case"mm":return d+=1===a?"minuta":2===a?"minuti":3===a||4===a?"minute":"minut";case"h":return b?"ena ura":"eno uro";case"hh":return d+=1===a?"ura":2===a?"uri":3===a||4===a?"ure":"ur";case"dd":return d+=1===a?"dan":"dni";case"MM":return d+=1===a?"mesec":2===a?"meseca":3===a||4===a?"mesece":"mesecev";case"yy":return d+=1===a?"leto":2===a?"leti":3===a||4===a?"leta":"let"}}return a.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),weekdays:"nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_pe_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[včeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[prejšnja] dddd [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"%s nazaj",s:"nekaj sekund",m:b,mm:b,h:b,hh:b,d:"en dan",dd:b,M:"en mesec",MM:b,y:"eno leto",yy:b},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),weekdays:"E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),weekdaysShort:"Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_Më_E_P_Sh".split("_"),meridiemParse:/PD|MD/,isPM:function(a){return"M"===a.charAt(0)},meridiem:function(a){return 12>a?"PD":"MD"},longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Sot në] LT",nextDay:"[Nesër në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s më parë",s:"disa sekonda",m:"një minutë",mm:"%d minuta",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){var b={words:{m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(a,b){return 1===a?b[0]:a>=2&&4>=a?b[1]:b[2]},translate:function(a,c,d){var e=b.words[d];return 1===d.length?c?e[0]:e[1]:a+" "+b.correctGrammaticalCase(a,e)}};return a.defineLocale("sr-cyrl",{months:["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар"],monthsShort:["јан.","феб.","мар.","апр.","мај","јун","јул","авг.","сеп.","окт.","нов.","дец."],weekdays:["недеља","понедељак","уторак","среда","четвртак","петак","субота"],weekdaysShort:["нед.","пон.","уто.","сре.","чет.","пет.","суб."],weekdaysMin:["не","по","ут","ср","че","пе","су"],longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){var a=["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"];return a[this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",m:b.translate,mm:b.translate,h:b.translate,hh:b.translate,d:"дан",dd:b.translate,M:"месец",MM:b.translate,y:"годину",yy:b.translate},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){var b={words:{m:["jedan minut","jedne minute"],mm:["minut","minute","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mesec","meseca","meseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(a,b){return 1===a?b[0]:a>=2&&4>=a?b[1]:b[2]},translate:function(a,c,d){var e=b.words[d];return 1===d.length?c?e[0]:e[1]:a+" "+b.correctGrammaticalCase(a,e)}};return a.defineLocale("sr",{months:["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar"],monthsShort:["jan.","feb.","mar.","apr.","maj","jun","jul","avg.","sep.","okt.","nov.","dec."],weekdays:["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],weekdaysShort:["ned.","pon.","uto.","sre.","čet.","pet.","sub."],weekdaysMin:["ne","po","ut","sr","če","pe","su"],longDateFormat:{LT:"H:mm",LTS:"LT:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){var a=["[prošle] [nedelje] [u] LT","[prošlog] [ponedeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"];return a[this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",m:b.translate,mm:b.translate,h:b.translate,hh:b.translate,d:"dan",dd:b.translate,M:"mesec",MM:b.translate,y:"godinu",yy:b.translate},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"dddd LT",lastWeek:"[Förra] dddd[en] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},ordinalParse:/\d{1,2}(e|a)/,ordinal:function(a){var b=a%10,c=1===~~(a%100/10)?"e":1===b?"a":2===b?"a":"e";return a+c},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},ordinalParse:/\d{1,2}வது/,ordinal:function(a){return a+"வது"},meridiemParse:/யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,meridiem:function(a){return 2>a?" யாமம்":6>a?" வைகறை":10>a?" காலை":14>a?" நண்பகல்":18>a?" எற்பாடு":22>a?" மாலை":" யாமம்"},meridiemHour:function(a,b){return 12===a&&(a=0),"யாமம்"===b?2>a?a:a+12:"வைகறை"===b||"காலை"===b?a:"நண்பகல்"===b&&a>=10?a:a+12},week:{dow:0,doy:6}})}),function(a){a(vb)}(function(a){return a.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"มกรา_กุมภา_มีนา_เมษา_พฤษภา_มิถุนา_กรกฎา_สิงหา_กันยา_ตุลา_พฤศจิกา_ธันวา".split("_"),weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),longDateFormat:{LT:"H นาฬิกา m นาที",LTS:"LT s วินาที",L:"YYYY/MM/DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา LT",LLLL:"วันddddที่ D MMMM YYYY เวลา LT"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM:function(a){return"หลังเที่ยง"===a +},meridiem:function(a){return 12>a?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}})}),function(a){a(vb)}(function(a){return a.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM DD, YYYY LT"},calendar:{sameDay:"[Ngayon sa] LT",nextDay:"[Bukas sa] LT",nextWeek:"dddd [sa] LT",lastDay:"[Kahapon sa] LT",lastWeek:"dddd [huling linggo] LT",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},ordinalParse:/\d{1,2}/,ordinal:function(a){return a},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){var b={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"};return a.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[haftaya] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen hafta] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinalParse:/\d{1,2}'(inci|nci|üncü|ncı|uncu|ıncı)/,ordinal:function(a){if(0===a)return a+"'ıncı";var c=a%10,d=a%100-c,e=a>=100?100:null;return a+(b[c]||b[d]||b[e])},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("tzm-latn",{months:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",m:"minuḍ",mm:"%d minuḍ",h:"saɛa",hh:"%d tassaɛin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})}),function(a){a(vb)}(function(a){return a.defineLocale("tzm",{months:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),monthsShort:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),weekdays:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysMin:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[ⴰⵙⴷⵅ ⴴ] LT",nextDay:"[ⴰⵙⴽⴰ ⴴ] LT",nextWeek:"dddd [ⴴ] LT",lastDay:"[ⴰⵚⴰⵏⵜ ⴴ] LT",lastWeek:"dddd [ⴴ] LT",sameElse:"L"},relativeTime:{future:"ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",past:"ⵢⴰⵏ %s",s:"ⵉⵎⵉⴽ",m:"ⵎⵉⵏⵓⴺ",mm:"%d ⵎⵉⵏⵓⴺ",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉⵏ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰⵏ",M:"ⴰⵢoⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔⵏ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙⵏ"},week:{dow:6,doy:12}})}),function(a){a(vb)}(function(a){function b(a,b){var c=a.split("_");return b%10===1&&b%100!==11?c[0]:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?c[1]:c[2]}function c(a,c,d){var e={mm:"хвилина_хвилини_хвилин",hh:"година_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"};return"m"===d?c?"хвилина":"хвилину":"h"===d?c?"година":"годину":a+" "+b(e[d],+a)}function d(a,b){var c={nominative:"січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_"),accusative:"січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_")},d=/D[oD]? *MMMM?/.test(b)?"accusative":"nominative";return c[d][a.month()]}function e(a,b){var c={nominative:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),accusative:"неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),genitive:"неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")},d=/(\[[ВвУу]\]) ?dddd/.test(b)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(b)?"genitive":"nominative";return c[d][a.day()]}function f(a){return function(){return a+"о"+(11===this.hours()?"б":"")+"] LT"}}return a.defineLocale("uk",{months:d,monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekdays:e,weekdaysShort:"нд_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY р.",LLL:"D MMMM YYYY р., LT",LLLL:"dddd, D MMMM YYYY р., LT"},calendar:{sameDay:f("[Сьогодні "),nextDay:f("[Завтра "),lastDay:f("[Вчора "),nextWeek:f("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return f("[Минулої] dddd [").call(this);case 1:case 2:case 4:return f("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",m:c,mm:c,h:"годину",hh:c,d:"день",dd:c,M:"місяць",MM:c,y:"рік",yy:c},meridiemParse:/ночі|ранку|дня|вечора/,isPM:function(a){return/^(дня|вечора)$/.test(a)},meridiem:function(a){return 4>a?"ночі":12>a?"ранку":17>a?"дня":"вечора"},ordinalParse:/\d{1,2}-(й|го)/,ordinal:function(a,b){switch(b){case"M":case"d":case"DDD":case"w":case"W":return a+"-й";case"D":return a+"-го";default:return a}},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("uz",{months:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"D MMMM YYYY, dddd LT"},calendar:{sameDay:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}})}),function(a){a(vb)}(function(a){return a.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),longDateFormat:{LT:"HH:mm",LTS:"LT:ss",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY LT",LLLL:"dddd, D MMMM [năm] YYYY LT",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY LT",llll:"ddd, D MMM YYYY LT"},calendar:{sameDay:"[Hôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần rồi lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},ordinalParse:/\d{1,2}/,ordinal:function(a){return a},week:{dow:1,doy:4}})}),function(a){a(vb)}(function(a){return a.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"Ah点mm",LTS:"Ah点m分s秒",L:"YYYY-MM-DD",LL:"YYYY年MMMD日",LLL:"YYYY年MMMD日LT",LLLL:"YYYY年MMMD日ddddLT",l:"YYYY-MM-DD",ll:"YYYY年MMMD日",lll:"YYYY年MMMD日LT",llll:"YYYY年MMMD日ddddLT"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(a,b){return 12===a&&(a=0),"凌晨"===b||"早上"===b||"上午"===b?a:"下午"===b||"晚上"===b?a+12:a>=11?a:a+12},meridiem:function(a,b){var c=100*a+b;return 600>c?"凌晨":900>c?"早上":1130>c?"上午":1230>c?"中午":1800>c?"下午":"晚上"},calendar:{sameDay:function(){return 0===this.minutes()?"[今天]Ah[点整]":"[今天]LT"},nextDay:function(){return 0===this.minutes()?"[明天]Ah[点整]":"[明天]LT"},lastDay:function(){return 0===this.minutes()?"[昨天]Ah[点整]":"[昨天]LT"},nextWeek:function(){var b,c;return b=a().startOf("week"),c=this.unix()-b.unix()>=604800?"[下]":"[本]",0===this.minutes()?c+"dddAh点整":c+"dddAh点mm"},lastWeek:function(){var b,c;return b=a().startOf("week"),c=this.unix()=11?a:a+12:"下午"===b||"晚上"===b?a+12:void 0},meridiem:function(a,b){var c=100*a+b;return 900>c?"早上":1130>c?"上午":1230>c?"中午":1800>c?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},ordinalParse:/\d{1,2}(日|月|週)/,ordinal:function(a,b){switch(b){case"d":case"D":case"DDD":return a+"日";case"M":return a+"月";case"w":case"W":return a+"週";default:return a}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",m:"一分鐘",mm:"%d分鐘",h:"一小時",hh:"%d小時",d:"一天",dd:"%d天",M:"一個月",MM:"%d個月",y:"一年",yy:"%d年"}})}),vb.locale("en"),Lb?module.exports=vb:"function"==typeof define&&define.amd?(define(function(a,b,c){return c.config&&c.config()&&c.config().noGlobal===!0&&(zb.moment=wb),vb}),ub(!0)):ub()}).call(this); \ No newline at end of file diff --git a/public/app/bower_components/moment/min/moment.min.js b/public/app/bower_components/moment/min/moment.min.js index 8b54f130..024d488f 100644 --- a/public/app/bower_components/moment/min/moment.min.js +++ b/public/app/bower_components/moment/min/moment.min.js @@ -1,7 +1,7 @@ //! moment.js -//! version : 2.8.3 +//! version : 2.9.0 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT //! momentjs.com -(function(a){function b(a,b,c){switch(arguments.length){case 2:return null!=a?a:b;case 3:return null!=a?a:null!=b?b:c;default:throw new Error("Implement me")}}function c(a,b){return zb.call(a,b)}function d(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1}}function e(a){tb.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+a)}function f(a,b){var c=!0;return m(function(){return c&&(e(a),c=!1),b.apply(this,arguments)},b)}function g(a,b){qc[a]||(e(b),qc[a]=!0)}function h(a,b){return function(c){return p(a.call(this,c),b)}}function i(a,b){return function(c){return this.localeData().ordinal(a.call(this,c),b)}}function j(){}function k(a,b){b!==!1&&F(a),n(this,a),this._d=new Date(+a._d)}function l(a){var b=y(a),c=b.year||0,d=b.quarter||0,e=b.month||0,f=b.week||0,g=b.day||0,h=b.hour||0,i=b.minute||0,j=b.second||0,k=b.millisecond||0;this._milliseconds=+k+1e3*j+6e4*i+36e5*h,this._days=+g+7*f,this._months=+e+3*d+12*c,this._data={},this._locale=tb.localeData(),this._bubble()}function m(a,b){for(var d in b)c(b,d)&&(a[d]=b[d]);return c(b,"toString")&&(a.toString=b.toString),c(b,"valueOf")&&(a.valueOf=b.valueOf),a}function n(a,b){var c,d,e;if("undefined"!=typeof b._isAMomentObject&&(a._isAMomentObject=b._isAMomentObject),"undefined"!=typeof b._i&&(a._i=b._i),"undefined"!=typeof b._f&&(a._f=b._f),"undefined"!=typeof b._l&&(a._l=b._l),"undefined"!=typeof b._strict&&(a._strict=b._strict),"undefined"!=typeof b._tzm&&(a._tzm=b._tzm),"undefined"!=typeof b._isUTC&&(a._isUTC=b._isUTC),"undefined"!=typeof b._offset&&(a._offset=b._offset),"undefined"!=typeof b._pf&&(a._pf=b._pf),"undefined"!=typeof b._locale&&(a._locale=b._locale),Ib.length>0)for(c in Ib)d=Ib[c],e=b[d],"undefined"!=typeof e&&(a[d]=e);return a}function o(a){return 0>a?Math.ceil(a):Math.floor(a)}function p(a,b,c){for(var d=""+Math.abs(a),e=a>=0;d.lengthd;d++)(c&&a[d]!==b[d]||!c&&A(a[d])!==A(b[d]))&&g++;return g+f}function x(a){if(a){var b=a.toLowerCase().replace(/(.)s$/,"$1");a=jc[a]||kc[b]||b}return a}function y(a){var b,d,e={};for(d in a)c(a,d)&&(b=x(d),b&&(e[b]=a[d]));return e}function z(b){var c,d;if(0===b.indexOf("week"))c=7,d="day";else{if(0!==b.indexOf("month"))return;c=12,d="month"}tb[b]=function(e,f){var g,h,i=tb._locale[b],j=[];if("number"==typeof e&&(f=e,e=a),h=function(a){var b=tb().utc().set(d,a);return i.call(tb._locale,b,e||"")},null!=f)return h(f);for(g=0;c>g;g++)j.push(h(g));return j}}function A(a){var b=+a,c=0;return 0!==b&&isFinite(b)&&(c=b>=0?Math.floor(b):Math.ceil(b)),c}function B(a,b){return new Date(Date.UTC(a,b+1,0)).getUTCDate()}function C(a,b,c){return hb(tb([a,11,31+b-c]),b,c).week}function D(a){return E(a)?366:365}function E(a){return a%4===0&&a%100!==0||a%400===0}function F(a){var b;a._a&&-2===a._pf.overflow&&(b=a._a[Bb]<0||a._a[Bb]>11?Bb:a._a[Cb]<1||a._a[Cb]>B(a._a[Ab],a._a[Bb])?Cb:a._a[Db]<0||a._a[Db]>23?Db:a._a[Eb]<0||a._a[Eb]>59?Eb:a._a[Fb]<0||a._a[Fb]>59?Fb:a._a[Gb]<0||a._a[Gb]>999?Gb:-1,a._pf._overflowDayOfYear&&(Ab>b||b>Cb)&&(b=Cb),a._pf.overflow=b)}function G(a){return null==a._isValid&&(a._isValid=!isNaN(a._d.getTime())&&a._pf.overflow<0&&!a._pf.empty&&!a._pf.invalidMonth&&!a._pf.nullInput&&!a._pf.invalidFormat&&!a._pf.userInvalidated,a._strict&&(a._isValid=a._isValid&&0===a._pf.charsLeftOver&&0===a._pf.unusedTokens.length)),a._isValid}function H(a){return a?a.toLowerCase().replace("_","-"):a}function I(a){for(var b,c,d,e,f=0;f0;){if(d=J(e.slice(0,b).join("-")))return d;if(c&&c.length>=b&&w(e,c,!0)>=b-1)break;b--}f++}return null}function J(a){var b=null;if(!Hb[a]&&Jb)try{b=tb.locale(),require("./locale/"+a),tb.locale(b)}catch(c){}return Hb[a]}function K(a,b){return b._isUTC?tb(a).zone(b._offset||0):tb(a).local()}function L(a){return a.match(/\[[\s\S]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"")}function M(a){var b,c,d=a.match(Nb);for(b=0,c=d.length;c>b;b++)d[b]=pc[d[b]]?pc[d[b]]:L(d[b]);return function(e){var f="";for(b=0;c>b;b++)f+=d[b]instanceof Function?d[b].call(e,a):d[b];return f}}function N(a,b){return a.isValid()?(b=O(b,a.localeData()),lc[b]||(lc[b]=M(b)),lc[b](a)):a.localeData().invalidDate()}function O(a,b){function c(a){return b.longDateFormat(a)||a}var d=5;for(Ob.lastIndex=0;d>=0&&Ob.test(a);)a=a.replace(Ob,c),Ob.lastIndex=0,d-=1;return a}function P(a,b){var c,d=b._strict;switch(a){case"Q":return Zb;case"DDDD":return _b;case"YYYY":case"GGGG":case"gggg":return d?ac:Rb;case"Y":case"G":case"g":return cc;case"YYYYYY":case"YYYYY":case"GGGGG":case"ggggg":return d?bc:Sb;case"S":if(d)return Zb;case"SS":if(d)return $b;case"SSS":if(d)return _b;case"DDD":return Qb;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":return Ub;case"a":case"A":return b._locale._meridiemParse;case"X":return Xb;case"Z":case"ZZ":return Vb;case"T":return Wb;case"SSSS":return Tb;case"MM":case"DD":case"YY":case"GG":case"gg":case"HH":case"hh":case"mm":case"ss":case"ww":case"WW":return d?$b:Pb;case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"W":case"e":case"E":return Pb;case"Do":return Yb;default:return c=new RegExp(Y(X(a.replace("\\","")),"i"))}}function Q(a){a=a||"";var b=a.match(Vb)||[],c=b[b.length-1]||[],d=(c+"").match(hc)||["-",0,0],e=+(60*d[1])+A(d[2]);return"+"===d[0]?-e:e}function R(a,b,c){var d,e=c._a;switch(a){case"Q":null!=b&&(e[Bb]=3*(A(b)-1));break;case"M":case"MM":null!=b&&(e[Bb]=A(b)-1);break;case"MMM":case"MMMM":d=c._locale.monthsParse(b),null!=d?e[Bb]=d:c._pf.invalidMonth=b;break;case"D":case"DD":null!=b&&(e[Cb]=A(b));break;case"Do":null!=b&&(e[Cb]=A(parseInt(b,10)));break;case"DDD":case"DDDD":null!=b&&(c._dayOfYear=A(b));break;case"YY":e[Ab]=tb.parseTwoDigitYear(b);break;case"YYYY":case"YYYYY":case"YYYYYY":e[Ab]=A(b);break;case"a":case"A":c._isPm=c._locale.isPM(b);break;case"H":case"HH":case"h":case"hh":e[Db]=A(b);break;case"m":case"mm":e[Eb]=A(b);break;case"s":case"ss":e[Fb]=A(b);break;case"S":case"SS":case"SSS":case"SSSS":e[Gb]=A(1e3*("0."+b));break;case"X":c._d=new Date(1e3*parseFloat(b));break;case"Z":case"ZZ":c._useUTC=!0,c._tzm=Q(b);break;case"dd":case"ddd":case"dddd":d=c._locale.weekdaysParse(b),null!=d?(c._w=c._w||{},c._w.d=d):c._pf.invalidWeekday=b;break;case"w":case"ww":case"W":case"WW":case"d":case"e":case"E":a=a.substr(0,1);case"gggg":case"GGGG":case"GGGGG":a=a.substr(0,2),b&&(c._w=c._w||{},c._w[a]=A(b));break;case"gg":case"GG":c._w=c._w||{},c._w[a]=tb.parseTwoDigitYear(b)}}function S(a){var c,d,e,f,g,h,i;c=a._w,null!=c.GG||null!=c.W||null!=c.E?(g=1,h=4,d=b(c.GG,a._a[Ab],hb(tb(),1,4).year),e=b(c.W,1),f=b(c.E,1)):(g=a._locale._week.dow,h=a._locale._week.doy,d=b(c.gg,a._a[Ab],hb(tb(),g,h).year),e=b(c.w,1),null!=c.d?(f=c.d,g>f&&++e):f=null!=c.e?c.e+g:g),i=ib(d,e,f,h,g),a._a[Ab]=i.year,a._dayOfYear=i.dayOfYear}function T(a){var c,d,e,f,g=[];if(!a._d){for(e=V(a),a._w&&null==a._a[Cb]&&null==a._a[Bb]&&S(a),a._dayOfYear&&(f=b(a._a[Ab],e[Ab]),a._dayOfYear>D(f)&&(a._pf._overflowDayOfYear=!0),d=db(f,0,a._dayOfYear),a._a[Bb]=d.getUTCMonth(),a._a[Cb]=d.getUTCDate()),c=0;3>c&&null==a._a[c];++c)a._a[c]=g[c]=e[c];for(;7>c;c++)a._a[c]=g[c]=null==a._a[c]?2===c?1:0:a._a[c];a._d=(a._useUTC?db:cb).apply(null,g),null!=a._tzm&&a._d.setUTCMinutes(a._d.getUTCMinutes()+a._tzm)}}function U(a){var b;a._d||(b=y(a._i),a._a=[b.year,b.month,b.day,b.hour,b.minute,b.second,b.millisecond],T(a))}function V(a){var b=new Date;return a._useUTC?[b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate()]:[b.getFullYear(),b.getMonth(),b.getDate()]}function W(a){if(a._f===tb.ISO_8601)return void $(a);a._a=[],a._pf.empty=!0;var b,c,d,e,f,g=""+a._i,h=g.length,i=0;for(d=O(a._f,a._locale).match(Nb)||[],b=0;b0&&a._pf.unusedInput.push(f),g=g.slice(g.indexOf(c)+c.length),i+=c.length),pc[e]?(c?a._pf.empty=!1:a._pf.unusedTokens.push(e),R(e,c,a)):a._strict&&!c&&a._pf.unusedTokens.push(e);a._pf.charsLeftOver=h-i,g.length>0&&a._pf.unusedInput.push(g),a._isPm&&a._a[Db]<12&&(a._a[Db]+=12),a._isPm===!1&&12===a._a[Db]&&(a._a[Db]=0),T(a),F(a)}function X(a){return a.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(a,b,c,d,e){return b||c||d||e})}function Y(a){return a.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function Z(a){var b,c,e,f,g;if(0===a._f.length)return a._pf.invalidFormat=!0,void(a._d=new Date(0/0));for(f=0;fg)&&(e=g,c=b));m(a,c||b)}function $(a){var b,c,d=a._i,e=dc.exec(d);if(e){for(a._pf.iso=!0,b=0,c=fc.length;c>b;b++)if(fc[b][1].exec(d)){a._f=fc[b][0]+(e[6]||" ");break}for(b=0,c=gc.length;c>b;b++)if(gc[b][1].exec(d)){a._f+=gc[b][0];break}d.match(Vb)&&(a._f+="Z"),W(a)}else a._isValid=!1}function _(a){$(a),a._isValid===!1&&(delete a._isValid,tb.createFromInputFallback(a))}function ab(a,b){var c,d=[];for(c=0;ca&&h.setFullYear(a),h}function db(a){var b=new Date(Date.UTC.apply(null,arguments));return 1970>a&&b.setUTCFullYear(a),b}function eb(a,b){if("string"==typeof a)if(isNaN(a)){if(a=b.weekdaysParse(a),"number"!=typeof a)return null}else a=parseInt(a,10);return a}function fb(a,b,c,d,e){return e.relativeTime(b||1,!!c,a,d)}function gb(a,b,c){var d=tb.duration(a).abs(),e=yb(d.as("s")),f=yb(d.as("m")),g=yb(d.as("h")),h=yb(d.as("d")),i=yb(d.as("M")),j=yb(d.as("y")),k=e0,k[4]=c,fb.apply({},k)}function hb(a,b,c){var d,e=c-b,f=c-a.day();return f>e&&(f-=7),e-7>f&&(f+=7),d=tb(a).add(f,"d"),{week:Math.ceil(d.dayOfYear()/7),year:d.year()}}function ib(a,b,c,d,e){var f,g,h=db(a,0,1).getUTCDay();return h=0===h?7:h,c=null!=c?c:e,f=e-h+(h>d?7:0)-(e>h?7:0),g=7*(b-1)+(c-e)+f+1,{year:g>0?a:a-1,dayOfYear:g>0?g:D(a-1)+g}}function jb(b){var c=b._i,d=b._f;return b._locale=b._locale||tb.localeData(b._l),null===c||d===a&&""===c?tb.invalid({nullInput:!0}):("string"==typeof c&&(b._i=c=b._locale.preparse(c)),tb.isMoment(c)?new k(c,!0):(d?u(d)?Z(b):W(b):bb(b),new k(b)))}function kb(a,b){var c,d;if(1===b.length&&u(b[0])&&(b=b[0]),!b.length)return tb();for(c=b[0],d=1;d=0?"+":"-";return b+p(Math.abs(a),6)},gg:function(){return p(this.weekYear()%100,2)},gggg:function(){return p(this.weekYear(),4)},ggggg:function(){return p(this.weekYear(),5)},GG:function(){return p(this.isoWeekYear()%100,2)},GGGG:function(){return p(this.isoWeekYear(),4)},GGGGG:function(){return p(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return A(this.milliseconds()/100)},SS:function(){return p(A(this.milliseconds()/10),2)},SSS:function(){return p(this.milliseconds(),3)},SSSS:function(){return p(this.milliseconds(),3)},Z:function(){var a=-this.zone(),b="+";return 0>a&&(a=-a,b="-"),b+p(A(a/60),2)+":"+p(A(a)%60,2)},ZZ:function(){var a=-this.zone(),b="+";return 0>a&&(a=-a,b="-"),b+p(A(a/60),2)+p(A(a)%60,2)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},X:function(){return this.unix()},Q:function(){return this.quarter()}},qc={},rc=["months","monthsShort","weekdays","weekdaysShort","weekdaysMin"];nc.length;)vb=nc.pop(),pc[vb+"o"]=i(pc[vb],vb);for(;oc.length;)vb=oc.pop(),pc[vb+vb]=h(pc[vb],2);pc.DDDD=h(pc.DDD,3),m(j.prototype,{set:function(a){var b,c;for(c in a)b=a[c],"function"==typeof b?this[c]=b:this["_"+c]=b},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(a){return this._months[a.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(a){return this._monthsShort[a.month()]},monthsParse:function(a){var b,c,d;for(this._monthsParse||(this._monthsParse=[]),b=0;12>b;b++)if(this._monthsParse[b]||(c=tb.utc([2e3,b]),d="^"+this.months(c,"")+"|^"+this.monthsShort(c,""),this._monthsParse[b]=new RegExp(d.replace(".",""),"i")),this._monthsParse[b].test(a))return b},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(a){return this._weekdays[a.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(a){return this._weekdaysShort[a.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(a){return this._weekdaysMin[a.day()]},weekdaysParse:function(a){var b,c,d;for(this._weekdaysParse||(this._weekdaysParse=[]),b=0;7>b;b++)if(this._weekdaysParse[b]||(c=tb([2e3,1]).day(b),d="^"+this.weekdays(c,"")+"|^"+this.weekdaysShort(c,"")+"|^"+this.weekdaysMin(c,""),this._weekdaysParse[b]=new RegExp(d.replace(".",""),"i")),this._weekdaysParse[b].test(a))return b},_longDateFormat:{LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM D, YYYY LT"},longDateFormat:function(a){var b=this._longDateFormat[a];return!b&&this._longDateFormat[a.toUpperCase()]&&(b=this._longDateFormat[a.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(a){return a.slice(1)}),this._longDateFormat[a]=b),b},isPM:function(a){return"p"===(a+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(a,b,c){return a>11?c?"pm":"PM":c?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},calendar:function(a,b){var c=this._calendar[a];return"function"==typeof c?c.apply(b):c},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(a,b,c,d){var e=this._relativeTime[c];return"function"==typeof e?e(a,b,c,d):e.replace(/%d/i,a)},pastFuture:function(a,b){var c=this._relativeTime[a>0?"future":"past"];return"function"==typeof c?c(b):c.replace(/%s/i,b)},ordinal:function(a){return this._ordinal.replace("%d",a)},_ordinal:"%d",preparse:function(a){return a},postformat:function(a){return a},week:function(a){return hb(a,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6},_invalidDate:"Invalid date",invalidDate:function(){return this._invalidDate}}),tb=function(b,c,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._i=b,g._f=c,g._l=e,g._strict=f,g._isUTC=!1,g._pf=d(),jb(g)},tb.suppressDeprecationWarnings=!1,tb.createFromInputFallback=f("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(a){a._d=new Date(a._i)}),tb.min=function(){var a=[].slice.call(arguments,0);return kb("isBefore",a)},tb.max=function(){var a=[].slice.call(arguments,0);return kb("isAfter",a)},tb.utc=function(b,c,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._useUTC=!0,g._isUTC=!0,g._l=e,g._i=b,g._f=c,g._strict=f,g._pf=d(),jb(g).utc()},tb.unix=function(a){return tb(1e3*a)},tb.duration=function(a,b){var d,e,f,g,h=a,i=null;return tb.isDuration(a)?h={ms:a._milliseconds,d:a._days,M:a._months}:"number"==typeof a?(h={},b?h[b]=a:h.milliseconds=a):(i=Lb.exec(a))?(d="-"===i[1]?-1:1,h={y:0,d:A(i[Cb])*d,h:A(i[Db])*d,m:A(i[Eb])*d,s:A(i[Fb])*d,ms:A(i[Gb])*d}):(i=Mb.exec(a))?(d="-"===i[1]?-1:1,f=function(a){var b=a&&parseFloat(a.replace(",","."));return(isNaN(b)?0:b)*d},h={y:f(i[2]),M:f(i[3]),d:f(i[4]),h:f(i[5]),m:f(i[6]),s:f(i[7]),w:f(i[8])}):"object"==typeof h&&("from"in h||"to"in h)&&(g=r(tb(h.from),tb(h.to)),h={},h.ms=g.milliseconds,h.M=g.months),e=new l(h),tb.isDuration(a)&&c(a,"_locale")&&(e._locale=a._locale),e},tb.version=wb,tb.defaultFormat=ec,tb.ISO_8601=function(){},tb.momentProperties=Ib,tb.updateOffset=function(){},tb.relativeTimeThreshold=function(b,c){return mc[b]===a?!1:c===a?mc[b]:(mc[b]=c,!0)},tb.lang=f("moment.lang is deprecated. Use moment.locale instead.",function(a,b){return tb.locale(a,b)}),tb.locale=function(a,b){var c;return a&&(c="undefined"!=typeof b?tb.defineLocale(a,b):tb.localeData(a),c&&(tb.duration._locale=tb._locale=c)),tb._locale._abbr},tb.defineLocale=function(a,b){return null!==b?(b.abbr=a,Hb[a]||(Hb[a]=new j),Hb[a].set(b),tb.locale(a),Hb[a]):(delete Hb[a],null)},tb.langData=f("moment.langData is deprecated. Use moment.localeData instead.",function(a){return tb.localeData(a)}),tb.localeData=function(a){var b;if(a&&a._locale&&a._locale._abbr&&(a=a._locale._abbr),!a)return tb._locale;if(!u(a)){if(b=J(a))return b;a=[a]}return I(a)},tb.isMoment=function(a){return a instanceof k||null!=a&&c(a,"_isAMomentObject")},tb.isDuration=function(a){return a instanceof l};for(vb=rc.length-1;vb>=0;--vb)z(rc[vb]);tb.normalizeUnits=function(a){return x(a)},tb.invalid=function(a){var b=tb.utc(0/0);return null!=a?m(b._pf,a):b._pf.userInvalidated=!0,b},tb.parseZone=function(){return tb.apply(null,arguments).parseZone()},tb.parseTwoDigitYear=function(a){return A(a)+(A(a)>68?1900:2e3)},m(tb.fn=k.prototype,{clone:function(){return tb(this)},valueOf:function(){return+this._d+6e4*(this._offset||0)},unix:function(){return Math.floor(+this/1e3)},toString:function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){var a=tb(this).utc();return 00:!1},parsingFlags:function(){return m({},this._pf)},invalidAt:function(){return this._pf.overflow},utc:function(a){return this.zone(0,a)},local:function(a){return this._isUTC&&(this.zone(0,a),this._isUTC=!1,a&&this.add(this._dateTzOffset(),"m")),this},format:function(a){var b=N(this,a||tb.defaultFormat);return this.localeData().postformat(b)},add:s(1,"add"),subtract:s(-1,"subtract"),diff:function(a,b,c){var d,e,f,g=K(a,this),h=6e4*(this.zone()-g.zone());return b=x(b),"year"===b||"month"===b?(d=432e5*(this.daysInMonth()+g.daysInMonth()),e=12*(this.year()-g.year())+(this.month()-g.month()),f=this-tb(this).startOf("month")-(g-tb(g).startOf("month")),f-=6e4*(this.zone()-tb(this).startOf("month").zone()-(g.zone()-tb(g).startOf("month").zone())),e+=f/d,"year"===b&&(e/=12)):(d=this-g,e="second"===b?d/1e3:"minute"===b?d/6e4:"hour"===b?d/36e5:"day"===b?(d-h)/864e5:"week"===b?(d-h)/6048e5:d),c?e:o(e)},from:function(a,b){return tb.duration({to:this,from:a}).locale(this.locale()).humanize(!b)},fromNow:function(a){return this.from(tb(),a)},calendar:function(a){var b=a||tb(),c=K(b,this).startOf("day"),d=this.diff(c,"days",!0),e=-6>d?"sameElse":-1>d?"lastWeek":0>d?"lastDay":1>d?"sameDay":2>d?"nextDay":7>d?"nextWeek":"sameElse";return this.format(this.localeData().calendar(e,this))},isLeapYear:function(){return E(this.year())},isDST:function(){return this.zone()+a):+this.clone().startOf(b)>+tb(a).startOf(b)},isBefore:function(a,b){return b=x("undefined"!=typeof b?b:"millisecond"),"millisecond"===b?(a=tb.isMoment(a)?a:tb(a),+a>+this):+this.clone().startOf(b)<+tb(a).startOf(b)},isSame:function(a,b){return b=x(b||"millisecond"),"millisecond"===b?(a=tb.isMoment(a)?a:tb(a),+this===+a):+this.clone().startOf(b)===+K(a,this).startOf(b)},min:f("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(a){return a=tb.apply(null,arguments),this>a?this:a}),max:f("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(a){return a=tb.apply(null,arguments),a>this?this:a}),zone:function(a,b){var c,d=this._offset||0;return null==a?this._isUTC?d:this._dateTzOffset():("string"==typeof a&&(a=Q(a)),Math.abs(a)<16&&(a=60*a),!this._isUTC&&b&&(c=this._dateTzOffset()),this._offset=a,this._isUTC=!0,null!=c&&this.subtract(c,"m"),d!==a&&(!b||this._changeInProgress?t(this,tb.duration(d-a,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,tb.updateOffset(this,!0),this._changeInProgress=null)),this)},zoneAbbr:function(){return this._isUTC?"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},parseZone:function(){return this._tzm?this.zone(this._tzm):"string"==typeof this._i&&this.zone(this._i),this},hasAlignedHourOffset:function(a){return a=a?tb(a).zone():0,(this.zone()-a)%60===0},daysInMonth:function(){return B(this.year(),this.month())},dayOfYear:function(a){var b=yb((tb(this).startOf("day")-tb(this).startOf("year"))/864e5)+1;return null==a?b:this.add(a-b,"d")},quarter:function(a){return null==a?Math.ceil((this.month()+1)/3):this.month(3*(a-1)+this.month()%3)},weekYear:function(a){var b=hb(this,this.localeData()._week.dow,this.localeData()._week.doy).year;return null==a?b:this.add(a-b,"y")},isoWeekYear:function(a){var b=hb(this,1,4).year;return null==a?b:this.add(a-b,"y")},week:function(a){var b=this.localeData().week(this);return null==a?b:this.add(7*(a-b),"d")},isoWeek:function(a){var b=hb(this,1,4).week;return null==a?b:this.add(7*(a-b),"d")},weekday:function(a){var b=(this.day()+7-this.localeData()._week.dow)%7;return null==a?b:this.add(a-b,"d")},isoWeekday:function(a){return null==a?this.day()||7:this.day(this.day()%7?a:a-7)},isoWeeksInYear:function(){return C(this.year(),1,4)},weeksInYear:function(){var a=this.localeData()._week;return C(this.year(),a.dow,a.doy)},get:function(a){return a=x(a),this[a]()},set:function(a,b){return a=x(a),"function"==typeof this[a]&&this[a](b),this},locale:function(b){var c;return b===a?this._locale._abbr:(c=tb.localeData(b),null!=c&&(this._locale=c),this)},lang:f("moment().lang() is deprecated. Use moment().localeData() instead.",function(b){return b===a?this.localeData():this.locale(b)}),localeData:function(){return this._locale},_dateTzOffset:function(){return 15*Math.round(this._d.getTimezoneOffset()/15)}}),tb.fn.millisecond=tb.fn.milliseconds=ob("Milliseconds",!1),tb.fn.second=tb.fn.seconds=ob("Seconds",!1),tb.fn.minute=tb.fn.minutes=ob("Minutes",!1),tb.fn.hour=tb.fn.hours=ob("Hours",!0),tb.fn.date=ob("Date",!0),tb.fn.dates=f("dates accessor is deprecated. Use date instead.",ob("Date",!0)),tb.fn.year=ob("FullYear",!0),tb.fn.years=f("years accessor is deprecated. Use year instead.",ob("FullYear",!0)),tb.fn.days=tb.fn.day,tb.fn.months=tb.fn.month,tb.fn.weeks=tb.fn.week,tb.fn.isoWeeks=tb.fn.isoWeek,tb.fn.quarters=tb.fn.quarter,tb.fn.toJSON=tb.fn.toISOString,m(tb.duration.fn=l.prototype,{_bubble:function(){var a,b,c,d=this._milliseconds,e=this._days,f=this._months,g=this._data,h=0;g.milliseconds=d%1e3,a=o(d/1e3),g.seconds=a%60,b=o(a/60),g.minutes=b%60,c=o(b/60),g.hours=c%24,e+=o(c/24),h=o(pb(e)),e-=o(qb(h)),f+=o(e/30),e%=30,h+=o(f/12),f%=12,g.days=e,g.months=f,g.years=h},abs:function(){return this._milliseconds=Math.abs(this._milliseconds),this._days=Math.abs(this._days),this._months=Math.abs(this._months),this._data.milliseconds=Math.abs(this._data.milliseconds),this._data.seconds=Math.abs(this._data.seconds),this._data.minutes=Math.abs(this._data.minutes),this._data.hours=Math.abs(this._data.hours),this._data.months=Math.abs(this._data.months),this._data.years=Math.abs(this._data.years),this},weeks:function(){return o(this.days()/7)},valueOf:function(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*A(this._months/12)},humanize:function(a){var b=gb(this,!a,this.localeData());return a&&(b=this.localeData().pastFuture(+this,b)),this.localeData().postformat(b)},add:function(a,b){var c=tb.duration(a,b);return this._milliseconds+=c._milliseconds,this._days+=c._days,this._months+=c._months,this._bubble(),this},subtract:function(a,b){var c=tb.duration(a,b);return this._milliseconds-=c._milliseconds,this._days-=c._days,this._months-=c._months,this._bubble(),this},get:function(a){return a=x(a),this[a.toLowerCase()+"s"]()},as:function(a){var b,c;if(a=x(a),"month"===a||"year"===a)return b=this._days+this._milliseconds/864e5,c=this._months+12*pb(b),"month"===a?c:c/12;switch(b=this._days+qb(this._months/12),a){case"week":return b/7+this._milliseconds/6048e5;case"day":return b+this._milliseconds/864e5;case"hour":return 24*b+this._milliseconds/36e5;case"minute":return 24*b*60+this._milliseconds/6e4;case"second":return 24*b*60*60+this._milliseconds/1e3;case"millisecond":return Math.floor(24*b*60*60*1e3)+this._milliseconds;default:throw new Error("Unknown unit "+a)}},lang:tb.fn.lang,locale:tb.fn.locale,toIsoString:f("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",function(){return this.toISOString()}),toISOString:function(){var a=Math.abs(this.years()),b=Math.abs(this.months()),c=Math.abs(this.days()),d=Math.abs(this.hours()),e=Math.abs(this.minutes()),f=Math.abs(this.seconds()+this.milliseconds()/1e3);return this.asSeconds()?(this.asSeconds()<0?"-":"")+"P"+(a?a+"Y":"")+(b?b+"M":"")+(c?c+"D":"")+(d||e||f?"T":"")+(d?d+"H":"")+(e?e+"M":"")+(f?f+"S":""):"P0D"},localeData:function(){return this._locale}}),tb.duration.fn.toString=tb.duration.fn.toISOString;for(vb in ic)c(ic,vb)&&rb(vb.toLowerCase());tb.duration.fn.asMilliseconds=function(){return this.as("ms")},tb.duration.fn.asSeconds=function(){return this.as("s")},tb.duration.fn.asMinutes=function(){return this.as("m")},tb.duration.fn.asHours=function(){return this.as("h")},tb.duration.fn.asDays=function(){return this.as("d")},tb.duration.fn.asWeeks=function(){return this.as("weeks")},tb.duration.fn.asMonths=function(){return this.as("M")},tb.duration.fn.asYears=function(){return this.as("y")},tb.locale("en",{ordinal:function(a){var b=a%10,c=1===A(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th"; -return a+c}}),Jb?module.exports=tb:"function"==typeof define&&define.amd?(define("moment",function(a,b,c){return c.config&&c.config()&&c.config().noGlobal===!0&&(xb.moment=ub),tb}),sb(!0)):sb()}).call(this); \ No newline at end of file +(function(a){function b(a,b,c){switch(arguments.length){case 2:return null!=a?a:b;case 3:return null!=a?a:null!=b?b:c;default:throw new Error("Implement me")}}function c(a,b){return Bb.call(a,b)}function d(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1}}function e(a){vb.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+a)}function f(a,b){var c=!0;return o(function(){return c&&(e(a),c=!1),b.apply(this,arguments)},b)}function g(a,b){sc[a]||(e(b),sc[a]=!0)}function h(a,b){return function(c){return r(a.call(this,c),b)}}function i(a,b){return function(c){return this.localeData().ordinal(a.call(this,c),b)}}function j(a,b){var c,d,e=12*(b.year()-a.year())+(b.month()-a.month()),f=a.clone().add(e,"months");return 0>b-f?(c=a.clone().add(e-1,"months"),d=(b-f)/(f-c)):(c=a.clone().add(e+1,"months"),d=(b-f)/(c-f)),-(e+d)}function k(a,b,c){var d;return null==c?b:null!=a.meridiemHour?a.meridiemHour(b,c):null!=a.isPM?(d=a.isPM(c),d&&12>b&&(b+=12),d||12!==b||(b=0),b):b}function l(){}function m(a,b){b!==!1&&H(a),p(this,a),this._d=new Date(+a._d),uc===!1&&(uc=!0,vb.updateOffset(this),uc=!1)}function n(a){var b=A(a),c=b.year||0,d=b.quarter||0,e=b.month||0,f=b.week||0,g=b.day||0,h=b.hour||0,i=b.minute||0,j=b.second||0,k=b.millisecond||0;this._milliseconds=+k+1e3*j+6e4*i+36e5*h,this._days=+g+7*f,this._months=+e+3*d+12*c,this._data={},this._locale=vb.localeData(),this._bubble()}function o(a,b){for(var d in b)c(b,d)&&(a[d]=b[d]);return c(b,"toString")&&(a.toString=b.toString),c(b,"valueOf")&&(a.valueOf=b.valueOf),a}function p(a,b){var c,d,e;if("undefined"!=typeof b._isAMomentObject&&(a._isAMomentObject=b._isAMomentObject),"undefined"!=typeof b._i&&(a._i=b._i),"undefined"!=typeof b._f&&(a._f=b._f),"undefined"!=typeof b._l&&(a._l=b._l),"undefined"!=typeof b._strict&&(a._strict=b._strict),"undefined"!=typeof b._tzm&&(a._tzm=b._tzm),"undefined"!=typeof b._isUTC&&(a._isUTC=b._isUTC),"undefined"!=typeof b._offset&&(a._offset=b._offset),"undefined"!=typeof b._pf&&(a._pf=b._pf),"undefined"!=typeof b._locale&&(a._locale=b._locale),Kb.length>0)for(c in Kb)d=Kb[c],e=b[d],"undefined"!=typeof e&&(a[d]=e);return a}function q(a){return 0>a?Math.ceil(a):Math.floor(a)}function r(a,b,c){for(var d=""+Math.abs(a),e=a>=0;d.lengthd;d++)(c&&a[d]!==b[d]||!c&&C(a[d])!==C(b[d]))&&g++;return g+f}function z(a){if(a){var b=a.toLowerCase().replace(/(.)s$/,"$1");a=lc[a]||mc[b]||b}return a}function A(a){var b,d,e={};for(d in a)c(a,d)&&(b=z(d),b&&(e[b]=a[d]));return e}function B(b){var c,d;if(0===b.indexOf("week"))c=7,d="day";else{if(0!==b.indexOf("month"))return;c=12,d="month"}vb[b]=function(e,f){var g,h,i=vb._locale[b],j=[];if("number"==typeof e&&(f=e,e=a),h=function(a){var b=vb().utc().set(d,a);return i.call(vb._locale,b,e||"")},null!=f)return h(f);for(g=0;c>g;g++)j.push(h(g));return j}}function C(a){var b=+a,c=0;return 0!==b&&isFinite(b)&&(c=b>=0?Math.floor(b):Math.ceil(b)),c}function D(a,b){return new Date(Date.UTC(a,b+1,0)).getUTCDate()}function E(a,b,c){return jb(vb([a,11,31+b-c]),b,c).week}function F(a){return G(a)?366:365}function G(a){return a%4===0&&a%100!==0||a%400===0}function H(a){var b;a._a&&-2===a._pf.overflow&&(b=a._a[Db]<0||a._a[Db]>11?Db:a._a[Eb]<1||a._a[Eb]>D(a._a[Cb],a._a[Db])?Eb:a._a[Fb]<0||a._a[Fb]>24||24===a._a[Fb]&&(0!==a._a[Gb]||0!==a._a[Hb]||0!==a._a[Ib])?Fb:a._a[Gb]<0||a._a[Gb]>59?Gb:a._a[Hb]<0||a._a[Hb]>59?Hb:a._a[Ib]<0||a._a[Ib]>999?Ib:-1,a._pf._overflowDayOfYear&&(Cb>b||b>Eb)&&(b=Eb),a._pf.overflow=b)}function I(b){return null==b._isValid&&(b._isValid=!isNaN(b._d.getTime())&&b._pf.overflow<0&&!b._pf.empty&&!b._pf.invalidMonth&&!b._pf.nullInput&&!b._pf.invalidFormat&&!b._pf.userInvalidated,b._strict&&(b._isValid=b._isValid&&0===b._pf.charsLeftOver&&0===b._pf.unusedTokens.length&&b._pf.bigHour===a)),b._isValid}function J(a){return a?a.toLowerCase().replace("_","-"):a}function K(a){for(var b,c,d,e,f=0;f0;){if(d=L(e.slice(0,b).join("-")))return d;if(c&&c.length>=b&&y(e,c,!0)>=b-1)break;b--}f++}return null}function L(a){var b=null;if(!Jb[a]&&Lb)try{b=vb.locale(),require("./locale/"+a),vb.locale(b)}catch(c){}return Jb[a]}function M(a,b){var c,d;return b._isUTC?(c=b.clone(),d=(vb.isMoment(a)||x(a)?+a:+vb(a))-+c,c._d.setTime(+c._d+d),vb.updateOffset(c,!1),c):vb(a).local()}function N(a){return a.match(/\[[\s\S]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"")}function O(a){var b,c,d=a.match(Pb);for(b=0,c=d.length;c>b;b++)d[b]=rc[d[b]]?rc[d[b]]:N(d[b]);return function(e){var f="";for(b=0;c>b;b++)f+=d[b]instanceof Function?d[b].call(e,a):d[b];return f}}function P(a,b){return a.isValid()?(b=Q(b,a.localeData()),nc[b]||(nc[b]=O(b)),nc[b](a)):a.localeData().invalidDate()}function Q(a,b){function c(a){return b.longDateFormat(a)||a}var d=5;for(Qb.lastIndex=0;d>=0&&Qb.test(a);)a=a.replace(Qb,c),Qb.lastIndex=0,d-=1;return a}function R(a,b){var c,d=b._strict;switch(a){case"Q":return _b;case"DDDD":return bc;case"YYYY":case"GGGG":case"gggg":return d?cc:Tb;case"Y":case"G":case"g":return ec;case"YYYYYY":case"YYYYY":case"GGGGG":case"ggggg":return d?dc:Ub;case"S":if(d)return _b;case"SS":if(d)return ac;case"SSS":if(d)return bc;case"DDD":return Sb;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":return Wb;case"a":case"A":return b._locale._meridiemParse;case"x":return Zb;case"X":return $b;case"Z":case"ZZ":return Xb;case"T":return Yb;case"SSSS":return Vb;case"MM":case"DD":case"YY":case"GG":case"gg":case"HH":case"hh":case"mm":case"ss":case"ww":case"WW":return d?ac:Rb;case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"W":case"e":case"E":return Rb;case"Do":return d?b._locale._ordinalParse:b._locale._ordinalParseLenient;default:return c=new RegExp($(Z(a.replace("\\","")),"i"))}}function S(a){a=a||"";var b=a.match(Xb)||[],c=b[b.length-1]||[],d=(c+"").match(jc)||["-",0,0],e=+(60*d[1])+C(d[2]);return"+"===d[0]?e:-e}function T(a,b,c){var d,e=c._a;switch(a){case"Q":null!=b&&(e[Db]=3*(C(b)-1));break;case"M":case"MM":null!=b&&(e[Db]=C(b)-1);break;case"MMM":case"MMMM":d=c._locale.monthsParse(b,a,c._strict),null!=d?e[Db]=d:c._pf.invalidMonth=b;break;case"D":case"DD":null!=b&&(e[Eb]=C(b));break;case"Do":null!=b&&(e[Eb]=C(parseInt(b.match(/\d{1,2}/)[0],10)));break;case"DDD":case"DDDD":null!=b&&(c._dayOfYear=C(b));break;case"YY":e[Cb]=vb.parseTwoDigitYear(b);break;case"YYYY":case"YYYYY":case"YYYYYY":e[Cb]=C(b);break;case"a":case"A":c._meridiem=b;break;case"h":case"hh":c._pf.bigHour=!0;case"H":case"HH":e[Fb]=C(b);break;case"m":case"mm":e[Gb]=C(b);break;case"s":case"ss":e[Hb]=C(b);break;case"S":case"SS":case"SSS":case"SSSS":e[Ib]=C(1e3*("0."+b));break;case"x":c._d=new Date(C(b));break;case"X":c._d=new Date(1e3*parseFloat(b));break;case"Z":case"ZZ":c._useUTC=!0,c._tzm=S(b);break;case"dd":case"ddd":case"dddd":d=c._locale.weekdaysParse(b),null!=d?(c._w=c._w||{},c._w.d=d):c._pf.invalidWeekday=b;break;case"w":case"ww":case"W":case"WW":case"d":case"e":case"E":a=a.substr(0,1);case"gggg":case"GGGG":case"GGGGG":a=a.substr(0,2),b&&(c._w=c._w||{},c._w[a]=C(b));break;case"gg":case"GG":c._w=c._w||{},c._w[a]=vb.parseTwoDigitYear(b)}}function U(a){var c,d,e,f,g,h,i;c=a._w,null!=c.GG||null!=c.W||null!=c.E?(g=1,h=4,d=b(c.GG,a._a[Cb],jb(vb(),1,4).year),e=b(c.W,1),f=b(c.E,1)):(g=a._locale._week.dow,h=a._locale._week.doy,d=b(c.gg,a._a[Cb],jb(vb(),g,h).year),e=b(c.w,1),null!=c.d?(f=c.d,g>f&&++e):f=null!=c.e?c.e+g:g),i=kb(d,e,f,h,g),a._a[Cb]=i.year,a._dayOfYear=i.dayOfYear}function V(a){var c,d,e,f,g=[];if(!a._d){for(e=X(a),a._w&&null==a._a[Eb]&&null==a._a[Db]&&U(a),a._dayOfYear&&(f=b(a._a[Cb],e[Cb]),a._dayOfYear>F(f)&&(a._pf._overflowDayOfYear=!0),d=fb(f,0,a._dayOfYear),a._a[Db]=d.getUTCMonth(),a._a[Eb]=d.getUTCDate()),c=0;3>c&&null==a._a[c];++c)a._a[c]=g[c]=e[c];for(;7>c;c++)a._a[c]=g[c]=null==a._a[c]?2===c?1:0:a._a[c];24===a._a[Fb]&&0===a._a[Gb]&&0===a._a[Hb]&&0===a._a[Ib]&&(a._nextDay=!0,a._a[Fb]=0),a._d=(a._useUTC?fb:eb).apply(null,g),null!=a._tzm&&a._d.setUTCMinutes(a._d.getUTCMinutes()-a._tzm),a._nextDay&&(a._a[Fb]=24)}}function W(a){var b;a._d||(b=A(a._i),a._a=[b.year,b.month,b.day||b.date,b.hour,b.minute,b.second,b.millisecond],V(a))}function X(a){var b=new Date;return a._useUTC?[b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate()]:[b.getFullYear(),b.getMonth(),b.getDate()]}function Y(b){if(b._f===vb.ISO_8601)return void ab(b);b._a=[],b._pf.empty=!0;var c,d,e,f,g,h=""+b._i,i=h.length,j=0;for(e=Q(b._f,b._locale).match(Pb)||[],c=0;c0&&b._pf.unusedInput.push(g),h=h.slice(h.indexOf(d)+d.length),j+=d.length),rc[f]?(d?b._pf.empty=!1:b._pf.unusedTokens.push(f),T(f,d,b)):b._strict&&!d&&b._pf.unusedTokens.push(f);b._pf.charsLeftOver=i-j,h.length>0&&b._pf.unusedInput.push(h),b._pf.bigHour===!0&&b._a[Fb]<=12&&(b._pf.bigHour=a),b._a[Fb]=k(b._locale,b._a[Fb],b._meridiem),V(b),H(b)}function Z(a){return a.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(a,b,c,d,e){return b||c||d||e})}function $(a){return a.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function _(a){var b,c,e,f,g;if(0===a._f.length)return a._pf.invalidFormat=!0,void(a._d=new Date(0/0));for(f=0;fg)&&(e=g,c=b));o(a,c||b)}function ab(a){var b,c,d=a._i,e=fc.exec(d);if(e){for(a._pf.iso=!0,b=0,c=hc.length;c>b;b++)if(hc[b][1].exec(d)){a._f=hc[b][0]+(e[6]||" ");break}for(b=0,c=ic.length;c>b;b++)if(ic[b][1].exec(d)){a._f+=ic[b][0];break}d.match(Xb)&&(a._f+="Z"),Y(a)}else a._isValid=!1}function bb(a){ab(a),a._isValid===!1&&(delete a._isValid,vb.createFromInputFallback(a))}function cb(a,b){var c,d=[];for(c=0;ca&&h.setFullYear(a),h}function fb(a){var b=new Date(Date.UTC.apply(null,arguments));return 1970>a&&b.setUTCFullYear(a),b}function gb(a,b){if("string"==typeof a)if(isNaN(a)){if(a=b.weekdaysParse(a),"number"!=typeof a)return null}else a=parseInt(a,10);return a}function hb(a,b,c,d,e){return e.relativeTime(b||1,!!c,a,d)}function ib(a,b,c){var d=vb.duration(a).abs(),e=Ab(d.as("s")),f=Ab(d.as("m")),g=Ab(d.as("h")),h=Ab(d.as("d")),i=Ab(d.as("M")),j=Ab(d.as("y")),k=e0,k[4]=c,hb.apply({},k)}function jb(a,b,c){var d,e=c-b,f=c-a.day();return f>e&&(f-=7),e-7>f&&(f+=7),d=vb(a).add(f,"d"),{week:Math.ceil(d.dayOfYear()/7),year:d.year()}}function kb(a,b,c,d,e){var f,g,h=fb(a,0,1).getUTCDay();return h=0===h?7:h,c=null!=c?c:e,f=e-h+(h>d?7:0)-(e>h?7:0),g=7*(b-1)+(c-e)+f+1,{year:g>0?a:a-1,dayOfYear:g>0?g:F(a-1)+g}}function lb(b){var c,d=b._i,e=b._f;return b._locale=b._locale||vb.localeData(b._l),null===d||e===a&&""===d?vb.invalid({nullInput:!0}):("string"==typeof d&&(b._i=d=b._locale.preparse(d)),vb.isMoment(d)?new m(d,!0):(e?w(e)?_(b):Y(b):db(b),c=new m(b),c._nextDay&&(c.add(1,"d"),c._nextDay=a),c))}function mb(a,b){var c,d;if(1===b.length&&w(b[0])&&(b=b[0]),!b.length)return vb();for(c=b[0],d=1;d=0?"+":"-";return b+r(Math.abs(a),6)},gg:function(){return r(this.weekYear()%100,2)},gggg:function(){return r(this.weekYear(),4)},ggggg:function(){return r(this.weekYear(),5)},GG:function(){return r(this.isoWeekYear()%100,2)},GGGG:function(){return r(this.isoWeekYear(),4)},GGGGG:function(){return r(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return C(this.milliseconds()/100)},SS:function(){return r(C(this.milliseconds()/10),2)},SSS:function(){return r(this.milliseconds(),3)},SSSS:function(){return r(this.milliseconds(),3)},Z:function(){var a=this.utcOffset(),b="+";return 0>a&&(a=-a,b="-"),b+r(C(a/60),2)+":"+r(C(a)%60,2)},ZZ:function(){var a=this.utcOffset(),b="+";return 0>a&&(a=-a,b="-"),b+r(C(a/60),2)+r(C(a)%60,2)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},x:function(){return this.valueOf()},X:function(){return this.unix()},Q:function(){return this.quarter()}},sc={},tc=["months","monthsShort","weekdays","weekdaysShort","weekdaysMin"],uc=!1;pc.length;)xb=pc.pop(),rc[xb+"o"]=i(rc[xb],xb);for(;qc.length;)xb=qc.pop(),rc[xb+xb]=h(rc[xb],2);rc.DDDD=h(rc.DDD,3),o(l.prototype,{set:function(a){var b,c;for(c in a)b=a[c],"function"==typeof b?this[c]=b:this["_"+c]=b;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(a){return this._months[a.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(a){return this._monthsShort[a.month()]},monthsParse:function(a,b,c){var d,e,f;for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),d=0;12>d;d++){if(e=vb.utc([2e3,d]),c&&!this._longMonthsParse[d]&&(this._longMonthsParse[d]=new RegExp("^"+this.months(e,"").replace(".","")+"$","i"),this._shortMonthsParse[d]=new RegExp("^"+this.monthsShort(e,"").replace(".","")+"$","i")),c||this._monthsParse[d]||(f="^"+this.months(e,"")+"|^"+this.monthsShort(e,""),this._monthsParse[d]=new RegExp(f.replace(".",""),"i")),c&&"MMMM"===b&&this._longMonthsParse[d].test(a))return d;if(c&&"MMM"===b&&this._shortMonthsParse[d].test(a))return d;if(!c&&this._monthsParse[d].test(a))return d}},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(a){return this._weekdays[a.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(a){return this._weekdaysShort[a.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(a){return this._weekdaysMin[a.day()]},weekdaysParse:function(a){var b,c,d;for(this._weekdaysParse||(this._weekdaysParse=[]),b=0;7>b;b++)if(this._weekdaysParse[b]||(c=vb([2e3,1]).day(b),d="^"+this.weekdays(c,"")+"|^"+this.weekdaysShort(c,"")+"|^"+this.weekdaysMin(c,""),this._weekdaysParse[b]=new RegExp(d.replace(".",""),"i")),this._weekdaysParse[b].test(a))return b},_longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM D, YYYY LT"},longDateFormat:function(a){var b=this._longDateFormat[a];return!b&&this._longDateFormat[a.toUpperCase()]&&(b=this._longDateFormat[a.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(a){return a.slice(1)}),this._longDateFormat[a]=b),b},isPM:function(a){return"p"===(a+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(a,b,c){return a>11?c?"pm":"PM":c?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},calendar:function(a,b,c){var d=this._calendar[a];return"function"==typeof d?d.apply(b,[c]):d},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(a,b,c,d){var e=this._relativeTime[c];return"function"==typeof e?e(a,b,c,d):e.replace(/%d/i,a)},pastFuture:function(a,b){var c=this._relativeTime[a>0?"future":"past"];return"function"==typeof c?c(b):c.replace(/%s/i,b)},ordinal:function(a){return this._ordinal.replace("%d",a)},_ordinal:"%d",_ordinalParse:/\d{1,2}/,preparse:function(a){return a},postformat:function(a){return a},week:function(a){return jb(a,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6},firstDayOfWeek:function(){return this._week.dow},firstDayOfYear:function(){return this._week.doy},_invalidDate:"Invalid date",invalidDate:function(){return this._invalidDate}}),vb=function(b,c,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._i=b,g._f=c,g._l=e,g._strict=f,g._isUTC=!1,g._pf=d(),lb(g)},vb.suppressDeprecationWarnings=!1,vb.createFromInputFallback=f("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(a){a._d=new Date(a._i+(a._useUTC?" UTC":""))}),vb.min=function(){var a=[].slice.call(arguments,0);return mb("isBefore",a)},vb.max=function(){var a=[].slice.call(arguments,0);return mb("isAfter",a)},vb.utc=function(b,c,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._useUTC=!0,g._isUTC=!0,g._l=e,g._i=b,g._f=c,g._strict=f,g._pf=d(),lb(g).utc()},vb.unix=function(a){return vb(1e3*a)},vb.duration=function(a,b){var d,e,f,g,h=a,i=null;return vb.isDuration(a)?h={ms:a._milliseconds,d:a._days,M:a._months}:"number"==typeof a?(h={},b?h[b]=a:h.milliseconds=a):(i=Nb.exec(a))?(d="-"===i[1]?-1:1,h={y:0,d:C(i[Eb])*d,h:C(i[Fb])*d,m:C(i[Gb])*d,s:C(i[Hb])*d,ms:C(i[Ib])*d}):(i=Ob.exec(a))?(d="-"===i[1]?-1:1,f=function(a){var b=a&&parseFloat(a.replace(",","."));return(isNaN(b)?0:b)*d},h={y:f(i[2]),M:f(i[3]),d:f(i[4]),h:f(i[5]),m:f(i[6]),s:f(i[7]),w:f(i[8])}):null==h?h={}:"object"==typeof h&&("from"in h||"to"in h)&&(g=t(vb(h.from),vb(h.to)),h={},h.ms=g.milliseconds,h.M=g.months),e=new n(h),vb.isDuration(a)&&c(a,"_locale")&&(e._locale=a._locale),e},vb.version=yb,vb.defaultFormat=gc,vb.ISO_8601=function(){},vb.momentProperties=Kb,vb.updateOffset=function(){},vb.relativeTimeThreshold=function(b,c){return oc[b]===a?!1:c===a?oc[b]:(oc[b]=c,!0)},vb.lang=f("moment.lang is deprecated. Use moment.locale instead.",function(a,b){return vb.locale(a,b)}),vb.locale=function(a,b){var c;return a&&(c="undefined"!=typeof b?vb.defineLocale(a,b):vb.localeData(a),c&&(vb.duration._locale=vb._locale=c)),vb._locale._abbr},vb.defineLocale=function(a,b){return null!==b?(b.abbr=a,Jb[a]||(Jb[a]=new l),Jb[a].set(b),vb.locale(a),Jb[a]):(delete Jb[a],null)},vb.langData=f("moment.langData is deprecated. Use moment.localeData instead.",function(a){return vb.localeData(a)}),vb.localeData=function(a){var b;if(a&&a._locale&&a._locale._abbr&&(a=a._locale._abbr),!a)return vb._locale;if(!w(a)){if(b=L(a))return b;a=[a]}return K(a)},vb.isMoment=function(a){return a instanceof m||null!=a&&c(a,"_isAMomentObject")},vb.isDuration=function(a){return a instanceof n};for(xb=tc.length-1;xb>=0;--xb)B(tc[xb]);vb.normalizeUnits=function(a){return z(a)},vb.invalid=function(a){var b=vb.utc(0/0);return null!=a?o(b._pf,a):b._pf.userInvalidated=!0,b},vb.parseZone=function(){return vb.apply(null,arguments).parseZone()},vb.parseTwoDigitYear=function(a){return C(a)+(C(a)>68?1900:2e3)},vb.isDate=x,o(vb.fn=m.prototype,{clone:function(){return vb(this)},valueOf:function(){return+this._d-6e4*(this._offset||0)},unix:function(){return Math.floor(+this/1e3)},toString:function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){var a=vb(this).utc();return 00:!1},parsingFlags:function(){return o({},this._pf)},invalidAt:function(){return this._pf.overflow},utc:function(a){return this.utcOffset(0,a)},local:function(a){return this._isUTC&&(this.utcOffset(0,a),this._isUTC=!1,a&&this.subtract(this._dateUtcOffset(),"m")),this},format:function(a){var b=P(this,a||vb.defaultFormat);return this.localeData().postformat(b)},add:u(1,"add"),subtract:u(-1,"subtract"),diff:function(a,b,c){var d,e,f=M(a,this),g=6e4*(f.utcOffset()-this.utcOffset());return b=z(b),"year"===b||"month"===b||"quarter"===b?(e=j(this,f),"quarter"===b?e/=3:"year"===b&&(e/=12)):(d=this-f,e="second"===b?d/1e3:"minute"===b?d/6e4:"hour"===b?d/36e5:"day"===b?(d-g)/864e5:"week"===b?(d-g)/6048e5:d),c?e:q(e)},from:function(a,b){return vb.duration({to:this,from:a}).locale(this.locale()).humanize(!b)},fromNow:function(a){return this.from(vb(),a)},calendar:function(a){var b=a||vb(),c=M(b,this).startOf("day"),d=this.diff(c,"days",!0),e=-6>d?"sameElse":-1>d?"lastWeek":0>d?"lastDay":1>d?"sameDay":2>d?"nextDay":7>d?"nextWeek":"sameElse";return this.format(this.localeData().calendar(e,this,vb(b)))},isLeapYear:function(){return G(this.year())},isDST:function(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},day:function(a){var b=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=a?(a=gb(a,this.localeData()),this.add(a-b,"d")):b},month:qb("Month",!0),startOf:function(a){switch(a=z(a)){case"year":this.month(0);case"quarter":case"month":this.date(1);case"week":case"isoWeek":case"day":this.hours(0);case"hour":this.minutes(0);case"minute":this.seconds(0);case"second":this.milliseconds(0)}return"week"===a?this.weekday(0):"isoWeek"===a&&this.isoWeekday(1),"quarter"===a&&this.month(3*Math.floor(this.month()/3)),this},endOf:function(b){return b=z(b),b===a||"millisecond"===b?this:this.startOf(b).add(1,"isoWeek"===b?"week":b).subtract(1,"ms")},isAfter:function(a,b){var c;return b=z("undefined"!=typeof b?b:"millisecond"),"millisecond"===b?(a=vb.isMoment(a)?a:vb(a),+this>+a):(c=vb.isMoment(a)?+a:+vb(a),c<+this.clone().startOf(b))},isBefore:function(a,b){var c;return b=z("undefined"!=typeof b?b:"millisecond"),"millisecond"===b?(a=vb.isMoment(a)?a:vb(a),+a>+this):(c=vb.isMoment(a)?+a:+vb(a),+this.clone().endOf(b)a?this:a}),max:f("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(a){return a=vb.apply(null,arguments),a>this?this:a}),zone:f("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",function(a,b){return null!=a?("string"!=typeof a&&(a=-a),this.utcOffset(a,b),this):-this.utcOffset()}),utcOffset:function(a,b){var c,d=this._offset||0;return null!=a?("string"==typeof a&&(a=S(a)),Math.abs(a)<16&&(a=60*a),!this._isUTC&&b&&(c=this._dateUtcOffset()),this._offset=a,this._isUTC=!0,null!=c&&this.add(c,"m"),d!==a&&(!b||this._changeInProgress?v(this,vb.duration(a-d,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,vb.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?d:this._dateUtcOffset()},isLocal:function(){return!this._isUTC},isUtcOffset:function(){return this._isUTC},isUtc:function(){return this._isUTC&&0===this._offset},zoneAbbr:function(){return this._isUTC?"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},parseZone:function(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(S(this._i)),this},hasAlignedHourOffset:function(a){return a=a?vb(a).utcOffset():0,(this.utcOffset()-a)%60===0},daysInMonth:function(){return D(this.year(),this.month())},dayOfYear:function(a){var b=Ab((vb(this).startOf("day")-vb(this).startOf("year"))/864e5)+1;return null==a?b:this.add(a-b,"d")},quarter:function(a){return null==a?Math.ceil((this.month()+1)/3):this.month(3*(a-1)+this.month()%3)},weekYear:function(a){var b=jb(this,this.localeData()._week.dow,this.localeData()._week.doy).year;return null==a?b:this.add(a-b,"y")},isoWeekYear:function(a){var b=jb(this,1,4).year;return null==a?b:this.add(a-b,"y")},week:function(a){var b=this.localeData().week(this);return null==a?b:this.add(7*(a-b),"d")},isoWeek:function(a){var b=jb(this,1,4).week;return null==a?b:this.add(7*(a-b),"d")},weekday:function(a){var b=(this.day()+7-this.localeData()._week.dow)%7;return null==a?b:this.add(a-b,"d")},isoWeekday:function(a){return null==a?this.day()||7:this.day(this.day()%7?a:a-7)},isoWeeksInYear:function(){return E(this.year(),1,4)},weeksInYear:function(){var a=this.localeData()._week;return E(this.year(),a.dow,a.doy)},get:function(a){return a=z(a),this[a]()},set:function(a,b){var c;if("object"==typeof a)for(c in a)this.set(c,a[c]);else a=z(a),"function"==typeof this[a]&&this[a](b);return this},locale:function(b){var c;return b===a?this._locale._abbr:(c=vb.localeData(b),null!=c&&(this._locale=c),this)},lang:f("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(b){return b===a?this.localeData():this.locale(b)}),localeData:function(){return this._locale},_dateUtcOffset:function(){return 15*-Math.round(this._d.getTimezoneOffset()/15)}}),vb.fn.millisecond=vb.fn.milliseconds=qb("Milliseconds",!1),vb.fn.second=vb.fn.seconds=qb("Seconds",!1),vb.fn.minute=vb.fn.minutes=qb("Minutes",!1),vb.fn.hour=vb.fn.hours=qb("Hours",!0),vb.fn.date=qb("Date",!0),vb.fn.dates=f("dates accessor is deprecated. Use date instead.",qb("Date",!0)),vb.fn.year=qb("FullYear",!0),vb.fn.years=f("years accessor is deprecated. Use year instead.",qb("FullYear",!0)),vb.fn.days=vb.fn.day,vb.fn.months=vb.fn.month,vb.fn.weeks=vb.fn.week,vb.fn.isoWeeks=vb.fn.isoWeek,vb.fn.quarters=vb.fn.quarter,vb.fn.toJSON=vb.fn.toISOString,vb.fn.isUTC=vb.fn.isUtc,o(vb.duration.fn=n.prototype,{_bubble:function(){var a,b,c,d=this._milliseconds,e=this._days,f=this._months,g=this._data,h=0;g.milliseconds=d%1e3,a=q(d/1e3),g.seconds=a%60,b=q(a/60),g.minutes=b%60,c=q(b/60),g.hours=c%24,e+=q(c/24),h=q(rb(e)),e-=q(sb(h)),f+=q(e/30),e%=30,h+=q(f/12),f%=12,g.days=e,g.months=f,g.years=h},abs:function(){return this._milliseconds=Math.abs(this._milliseconds),this._days=Math.abs(this._days),this._months=Math.abs(this._months),this._data.milliseconds=Math.abs(this._data.milliseconds),this._data.seconds=Math.abs(this._data.seconds),this._data.minutes=Math.abs(this._data.minutes),this._data.hours=Math.abs(this._data.hours),this._data.months=Math.abs(this._data.months),this._data.years=Math.abs(this._data.years),this},weeks:function(){return q(this.days()/7)},valueOf:function(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*C(this._months/12) +},humanize:function(a){var b=ib(this,!a,this.localeData());return a&&(b=this.localeData().pastFuture(+this,b)),this.localeData().postformat(b)},add:function(a,b){var c=vb.duration(a,b);return this._milliseconds+=c._milliseconds,this._days+=c._days,this._months+=c._months,this._bubble(),this},subtract:function(a,b){var c=vb.duration(a,b);return this._milliseconds-=c._milliseconds,this._days-=c._days,this._months-=c._months,this._bubble(),this},get:function(a){return a=z(a),this[a.toLowerCase()+"s"]()},as:function(a){var b,c;if(a=z(a),"month"===a||"year"===a)return b=this._days+this._milliseconds/864e5,c=this._months+12*rb(b),"month"===a?c:c/12;switch(b=this._days+Math.round(sb(this._months/12)),a){case"week":return b/7+this._milliseconds/6048e5;case"day":return b+this._milliseconds/864e5;case"hour":return 24*b+this._milliseconds/36e5;case"minute":return 24*b*60+this._milliseconds/6e4;case"second":return 24*b*60*60+this._milliseconds/1e3;case"millisecond":return Math.floor(24*b*60*60*1e3)+this._milliseconds;default:throw new Error("Unknown unit "+a)}},lang:vb.fn.lang,locale:vb.fn.locale,toIsoString:f("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",function(){return this.toISOString()}),toISOString:function(){var a=Math.abs(this.years()),b=Math.abs(this.months()),c=Math.abs(this.days()),d=Math.abs(this.hours()),e=Math.abs(this.minutes()),f=Math.abs(this.seconds()+this.milliseconds()/1e3);return this.asSeconds()?(this.asSeconds()<0?"-":"")+"P"+(a?a+"Y":"")+(b?b+"M":"")+(c?c+"D":"")+(d||e||f?"T":"")+(d?d+"H":"")+(e?e+"M":"")+(f?f+"S":""):"P0D"},localeData:function(){return this._locale},toJSON:function(){return this.toISOString()}}),vb.duration.fn.toString=vb.duration.fn.toISOString;for(xb in kc)c(kc,xb)&&tb(xb.toLowerCase());vb.duration.fn.asMilliseconds=function(){return this.as("ms")},vb.duration.fn.asSeconds=function(){return this.as("s")},vb.duration.fn.asMinutes=function(){return this.as("m")},vb.duration.fn.asHours=function(){return this.as("h")},vb.duration.fn.asDays=function(){return this.as("d")},vb.duration.fn.asWeeks=function(){return this.as("weeks")},vb.duration.fn.asMonths=function(){return this.as("M")},vb.duration.fn.asYears=function(){return this.as("y")},vb.locale("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(a){var b=a%10,c=1===C(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+c}}),Lb?module.exports=vb:"function"==typeof define&&define.amd?(define(function(a,b,c){return c.config&&c.config()&&c.config().noGlobal===!0&&(zb.moment=wb),vb}),ub(!0)):ub()}).call(this); \ No newline at end of file diff --git a/public/app/bower_components/moment/moment.js b/public/app/bower_components/moment/moment.js index d100a9c4..c635ec0b 100644 --- a/public/app/bower_components/moment/moment.js +++ b/public/app/bower_components/moment/moment.js @@ -1,5 +1,5 @@ //! moment.js -//! version : 2.8.3 +//! version : 2.9.0 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT //! momentjs.com @@ -10,9 +10,9 @@ ************************************/ var moment, - VERSION = '2.8.3', + VERSION = '2.9.0', // the global-scope this is NOT the global object in Node.js - globalScope = typeof global !== 'undefined' ? global : this, + globalScope = (typeof global !== 'undefined' && (typeof window === 'undefined' || window === global.window)) ? global : this, oldGlobalMoment, round = Math.round, hasOwnProperty = Object.prototype.hasOwnProperty, @@ -33,7 +33,7 @@ momentProperties = [], // check for nodeJS - hasModule = (typeof module !== 'undefined' && module.exports), + hasModule = (typeof module !== 'undefined' && module && module.exports), // ASP.NET json date format regex aspNetJsonRegex = /^\/?Date\((\-?\d+)/i, @@ -44,8 +44,8 @@ isoDurationRegex = /^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/, // format tokens - formattingTokens = /(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|X|zz?|ZZ?|.)/g, - localFormattingTokens = /(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g, + formattingTokens = /(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|x|X|zz?|ZZ?|.)/g, + localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, // parsing token regexes parseTokenOneOrTwoDigits = /\d\d?/, // 0 - 99 @@ -56,8 +56,8 @@ parseTokenWord = /[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i, // any word (or two) characters or numbers including two/three word month in arabic. parseTokenTimezone = /Z|[\+\-]\d\d:?\d\d/gi, // +00:00 -00:00 +0000 -0000 or Z parseTokenT = /T/i, // T (ISO separator) + parseTokenOffsetMs = /[\+\-]?\d+/, // 1234567890123 parseTokenTimestampMs = /[\+\-]?\d+(\.\d{1,3})?/, // 123456789 123456789.123 - parseTokenOrdinal = /\d{1,2}/, //strict parsing regexes parseTokenOneDigit = /\d/, // 0 - 9 @@ -89,7 +89,7 @@ ['HH', /(T| )\d\d/] ], - // timezone chunker '+10:00' > ['10', '00'] or '-1530' > ['-15', '30'] + // timezone chunker '+10:00' > ['10', '00'] or '-1530' > ['-', '15', '30'] parseTimezoneChunker = /([\+\-]|\d\d)/gi, // getter and setter names @@ -249,7 +249,7 @@ return leftZeroFill(this.milliseconds(), 3); }, Z : function () { - var a = -this.zone(), + var a = this.utcOffset(), b = '+'; if (a < 0) { a = -a; @@ -258,7 +258,7 @@ return b + leftZeroFill(toInt(a / 60), 2) + ':' + leftZeroFill(toInt(a) % 60, 2); }, ZZ : function () { - var a = -this.zone(), + var a = this.utcOffset(), b = '+'; if (a < 0) { a = -a; @@ -272,6 +272,9 @@ zz : function () { return this.zoneName(); }, + x : function () { + return this.valueOf(); + }, X : function () { return this.unix(); }, @@ -282,7 +285,9 @@ deprecations = {}, - lists = ['months', 'monthsShort', 'weekdays', 'weekdaysShort', 'weekdaysMin']; + lists = ['months', 'monthsShort', 'weekdays', 'weekdaysShort', 'weekdaysMin'], + + updateInProgress = false; // Pick the first defined of two or three arguments. dfl comes from // default. @@ -351,6 +356,26 @@ }; } + function monthDiff(a, b) { + // difference in months + var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()), + // b is in (anchor - 1 month, anchor + 1 month) + anchor = a.clone().add(wholeMonthDiff, 'months'), + anchor2, adjust; + + if (b - anchor < 0) { + anchor2 = a.clone().add(wholeMonthDiff - 1, 'months'); + // linear across the month + adjust = (b - anchor) / (anchor - anchor2); + } else { + anchor2 = a.clone().add(wholeMonthDiff + 1, 'months'); + // linear across the month + adjust = (b - anchor) / (anchor2 - anchor); + } + + return -(wholeMonthDiff + adjust); + } + while (ordinalizeTokens.length) { i = ordinalizeTokens.pop(); formatTokenFunctions[i + 'o'] = ordinalizeToken(formatTokenFunctions[i], i); @@ -362,6 +387,31 @@ formatTokenFunctions.DDDD = padToken(formatTokenFunctions.DDD, 3); + function meridiemFixWrap(locale, hour, meridiem) { + var isPm; + + if (meridiem == null) { + // nothing to do + return hour; + } + if (locale.meridiemHour != null) { + return locale.meridiemHour(hour, meridiem); + } else if (locale.isPM != null) { + // Fallback + isPm = locale.isPM(meridiem); + if (isPm && hour < 12) { + hour += 12; + } + if (!isPm && hour === 12) { + hour = 0; + } + return hour; + } else { + // thie is not supposed to happen + return hour; + } + } + /************************************ Constructors ************************************/ @@ -376,6 +426,13 @@ } copyConfig(this, config); this._d = new Date(+config._d); + // Prevent infinite loop in case updateOffset creates new moment + // objects. + if (updateInProgress === false) { + updateInProgress = true; + moment.updateOffset(this); + updateInProgress = false; + } } // Duration Constructor @@ -698,7 +755,10 @@ overflow = m._a[MONTH] < 0 || m._a[MONTH] > 11 ? MONTH : m._a[DATE] < 1 || m._a[DATE] > daysInMonth(m._a[YEAR], m._a[MONTH]) ? DATE : - m._a[HOUR] < 0 || m._a[HOUR] > 23 ? HOUR : + m._a[HOUR] < 0 || m._a[HOUR] > 24 || + (m._a[HOUR] === 24 && (m._a[MINUTE] !== 0 || + m._a[SECOND] !== 0 || + m._a[MILLISECOND] !== 0)) ? HOUR : m._a[MINUTE] < 0 || m._a[MINUTE] > 59 ? MINUTE : m._a[SECOND] < 0 || m._a[SECOND] > 59 ? SECOND : m._a[MILLISECOND] < 0 || m._a[MILLISECOND] > 999 ? MILLISECOND : @@ -725,7 +785,8 @@ if (m._strict) { m._isValid = m._isValid && m._pf.charsLeftOver === 0 && - m._pf.unusedTokens.length === 0; + m._pf.unusedTokens.length === 0 && + m._pf.bigHour === undefined; } } return m._isValid; @@ -775,10 +836,21 @@ return locales[name]; } - // Return a moment from input, that is local/utc/zone equivalent to model. + // Return a moment from input, that is local/utc/utcOffset equivalent to + // model. function makeAs(input, model) { - return model._isUTC ? moment(input).zone(model._offset || 0) : - moment(input).local(); + var res, diff; + if (model._isUTC) { + res = model.clone(); + diff = (moment.isMoment(input) || isDate(input) ? + +input : +moment(input)) - (+res); + // Use low-level api, because this fn is low-level api. + res._d.setTime(+res._d + diff); + moment.updateOffset(res, false); + return res; + } else { + return moment(input).local(); + } } /************************************ @@ -798,6 +870,9 @@ this['_' + i] = prop; } } + // Lenient ordinal parsing accepts just a number in addition to + // number + (possibly) stuff coming from _ordinalParseLenient. + this._ordinalParseLenient = new RegExp(this._ordinalParse.source + '|' + /\d{1,2}/.source); }, _months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'), @@ -810,22 +885,32 @@ return this._monthsShort[m.month()]; }, - monthsParse : function (monthName) { + monthsParse : function (monthName, format, strict) { var i, mom, regex; if (!this._monthsParse) { this._monthsParse = []; + this._longMonthsParse = []; + this._shortMonthsParse = []; } for (i = 0; i < 12; i++) { // make the regex if we don't have it already - if (!this._monthsParse[i]) { - mom = moment.utc([2000, i]); + mom = moment.utc([2000, i]); + if (strict && !this._longMonthsParse[i]) { + this._longMonthsParse[i] = new RegExp('^' + this.months(mom, '').replace('.', '') + '$', 'i'); + this._shortMonthsParse[i] = new RegExp('^' + this.monthsShort(mom, '').replace('.', '') + '$', 'i'); + } + if (!strict && !this._monthsParse[i]) { regex = '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, ''); this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i'); } // test the regex - if (this._monthsParse[i].test(monthName)) { + if (strict && format === 'MMMM' && this._longMonthsParse[i].test(monthName)) { + return i; + } else if (strict && format === 'MMM' && this._shortMonthsParse[i].test(monthName)) { + return i; + } else if (!strict && this._monthsParse[i].test(monthName)) { return i; } } @@ -868,6 +953,7 @@ }, _longDateFormat : { + LTS : 'h:mm:ss A', LT : 'h:mm A', L : 'MM/DD/YYYY', LL : 'MMMM D, YYYY', @@ -900,6 +986,7 @@ } }, + _calendar : { sameDay : '[Today at] LT', nextDay : '[Tomorrow at] LT', @@ -908,9 +995,9 @@ lastWeek : '[Last] dddd [at] LT', sameElse : 'L' }, - calendar : function (key, mom) { + calendar : function (key, mom, now) { var output = this._calendar[key]; - return typeof output === 'function' ? output.apply(mom) : output; + return typeof output === 'function' ? output.apply(mom, [now]) : output; }, _relativeTime : { @@ -945,6 +1032,7 @@ return this._ordinal.replace('%d', number); }, _ordinal : '%d', + _ordinalParse : /\d{1,2}/, preparse : function (string) { return string; @@ -963,6 +1051,14 @@ doy : 6 // The week that contains Jan 1st is the first week of the year. }, + firstDayOfWeek : function () { + return this._week.dow; + }, + + firstDayOfYear : function () { + return this._week.doy; + }, + _invalidDate: 'Invalid date', invalidDate: function () { return this._invalidDate; @@ -1086,6 +1182,8 @@ case 'a': case 'A': return config._locale._meridiemParse; + case 'x': + return parseTokenOffsetMs; case 'X': return parseTokenTimestampMs; case 'Z': @@ -1120,21 +1218,21 @@ case 'E': return parseTokenOneOrTwoDigits; case 'Do': - return parseTokenOrdinal; + return strict ? config._locale._ordinalParse : config._locale._ordinalParseLenient; default : a = new RegExp(regexpEscape(unescapeFormat(token.replace('\\', '')), 'i')); return a; } } - function timezoneMinutesFromString(string) { + function utcOffsetFromString(string) { string = string || ''; var possibleTzMatches = (string.match(parseTokenTimezone) || []), tzChunk = possibleTzMatches[possibleTzMatches.length - 1] || [], parts = (tzChunk + '').match(parseTimezoneChunker) || ['-', 0, 0], minutes = +(parts[1] * 60) + toInt(parts[2]); - return parts[0] === '+' ? -minutes : minutes; + return parts[0] === '+' ? minutes : -minutes; } // function to convert string input to date @@ -1157,7 +1255,7 @@ break; case 'MMM' : // fall through to MMMM case 'MMMM' : - a = config._locale.monthsParse(input); + a = config._locale.monthsParse(input, token, config._strict); // if we didn't find a month name, mark the date as invalid. if (a != null) { datePartArray[MONTH] = a; @@ -1174,7 +1272,8 @@ break; case 'Do' : if (input != null) { - datePartArray[DATE] = toInt(parseInt(input, 10)); + datePartArray[DATE] = toInt(parseInt( + input.match(/\d{1,2}/)[0], 10)); } break; // DAY OF YEAR @@ -1197,13 +1296,16 @@ // AM / PM case 'a' : // fall through to A case 'A' : - config._isPm = config._locale.isPM(input); + config._meridiem = input; + // config._isPm = config._locale.isPM(input); break; - // 24 HOUR - case 'H' : // fall through to hh - case 'HH' : // fall through to hh + // HOUR case 'h' : // fall through to hh case 'hh' : + config._pf.bigHour = true; + /* falls through */ + case 'H' : // fall through to HH + case 'HH' : datePartArray[HOUR] = toInt(input); break; // MINUTE @@ -1223,6 +1325,10 @@ case 'SSSS' : datePartArray[MILLISECOND] = toInt(('0.' + input) * 1000); break; + // UNIX OFFSET (MILLISECONDS) + case 'x': + config._d = new Date(toInt(input)); + break; // UNIX TIMESTAMP WITH MS case 'X': config._d = new Date(parseFloat(input) * 1000); @@ -1231,7 +1337,7 @@ case 'Z' : // fall through to ZZ case 'ZZ' : config._useUTC = true; - config._tzm = timezoneMinutesFromString(input); + config._tzm = utcOffsetFromString(input); break; // WEEKDAY - human case 'dd': @@ -1359,11 +1465,24 @@ config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i]; } + // Check for 24:00:00.000 + if (config._a[HOUR] === 24 && + config._a[MINUTE] === 0 && + config._a[SECOND] === 0 && + config._a[MILLISECOND] === 0) { + config._nextDay = true; + config._a[HOUR] = 0; + } + config._d = (config._useUTC ? makeUTCDate : makeDate).apply(null, input); - // Apply timezone offset from input. The actual zone can be changed + // Apply timezone offset from input. The actual utcOffset can be changed // with parseZone. if (config._tzm != null) { - config._d.setUTCMinutes(config._d.getUTCMinutes() + config._tzm); + config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm); + } + + if (config._nextDay) { + config._a[HOUR] = 24; } } @@ -1378,7 +1497,7 @@ config._a = [ normalizedInput.year, normalizedInput.month, - normalizedInput.day, + normalizedInput.day || normalizedInput.date, normalizedInput.hour, normalizedInput.minute, normalizedInput.second, @@ -1451,15 +1570,13 @@ config._pf.unusedInput.push(string); } - // handle am pm - if (config._isPm && config._a[HOUR] < 12) { - config._a[HOUR] += 12; + // clear _12h flag if hour is <= 12 + if (config._pf.bigHour === true && config._a[HOUR] <= 12) { + config._pf.bigHour = undefined; } - // if is 12 am, change hours to 0 - if (config._isPm === false && config._a[HOUR] === 12) { - config._a[HOUR] = 0; - } - + // handle meridiem + config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], + config._meridiem); dateFromConfig(config); checkOverflow(config); } @@ -1719,7 +1836,8 @@ function makeMoment(config) { var input = config._i, - format = config._f; + format = config._f, + res; config._locale = config._locale || moment.localeData(config._l); @@ -1743,7 +1861,14 @@ makeDateFromInput(config); } - return new Moment(config); + res = new Moment(config); + if (res._nextDay) { + // Adding is smart enough around DST + res.add(1, 'd'); + res._nextDay = undefined; + } + + return res; } moment = function (input, format, locale, strict) { @@ -1775,7 +1900,7 @@ 'release. Please refer to ' + 'https://github.com/moment/moment/issues/1407 for more info.', function (config) { - config._d = new Date(config._i); + config._d = new Date(config._i + (config._useUTC ? ' UTC' : '')); } ); @@ -1893,6 +2018,8 @@ s: parseIso(match[7]), w: parseIso(match[8]) }; + } else if (duration == null) {// checks for null or undefined + duration = {}; } else if (typeof duration === 'object' && ('from' in duration || 'to' in duration)) { diffRes = momentsDifference(moment(duration.from), moment(duration.to)); @@ -2057,6 +2184,8 @@ return toInt(input) + (toInt(input) > 68 ? 1900 : 2000); }; + moment.isDate = isDate; + /************************************ Moment Prototype ************************************/ @@ -2069,7 +2198,7 @@ }, valueOf : function () { - return +this._d + ((this._offset || 0) * 60000); + return +this._d - ((this._offset || 0) * 60000); }, unix : function () { @@ -2087,7 +2216,12 @@ toISOString : function () { var m = moment(this).utc(); if (0 < m.year() && m.year() <= 9999) { - return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]'); + if ('function' === typeof Date.prototype.toISOString) { + // native implementation is ~50x faster, use it when we can + return this.toDate().toISOString(); + } else { + return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]'); + } } else { return formatMoment(m, 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'); } @@ -2127,16 +2261,16 @@ }, utc : function (keepLocalTime) { - return this.zone(0, keepLocalTime); + return this.utcOffset(0, keepLocalTime); }, local : function (keepLocalTime) { if (this._isUTC) { - this.zone(0, keepLocalTime); + this.utcOffset(0, keepLocalTime); this._isUTC = false; if (keepLocalTime) { - this.add(this._dateTzOffset(), 'm'); + this.subtract(this._dateUtcOffset(), 'm'); } } return this; @@ -2153,29 +2287,20 @@ diff : function (input, units, asFloat) { var that = makeAs(input, this), - zoneDiff = (this.zone() - that.zone()) * 6e4, - diff, output, daysAdjust; + zoneDiff = (that.utcOffset() - this.utcOffset()) * 6e4, + anchor, diff, output, daysAdjust; units = normalizeUnits(units); - if (units === 'year' || units === 'month') { - // average number of days in the months in the given dates - diff = (this.daysInMonth() + that.daysInMonth()) * 432e5; // 24 * 60 * 60 * 1000 / 2 - // difference in months - output = ((this.year() - that.year()) * 12) + (this.month() - that.month()); - // adjust by taking difference in days, average number of days - // and dst in the given months. - daysAdjust = (this - moment(this).startOf('month')) - - (that - moment(that).startOf('month')); - // same as above but with zones, to negate all dst - daysAdjust -= ((this.zone() - moment(this).startOf('month').zone()) - - (that.zone() - moment(that).startOf('month').zone())) * 6e4; - output += daysAdjust / diff; - if (units === 'year') { + if (units === 'year' || units === 'month' || units === 'quarter') { + output = monthDiff(this, that); + if (units === 'quarter') { + output = output / 3; + } else if (units === 'year') { output = output / 12; } } else { - diff = (this - that); + diff = this - that; output = units === 'second' ? diff / 1e3 : // 1000 units === 'minute' ? diff / 6e4 : // 1000 * 60 units === 'hour' ? diff / 36e5 : // 1000 * 60 * 60 @@ -2196,7 +2321,8 @@ calendar : function (time) { // We want to compare the start of today, vs this. - // Getting start-of-today depends on whether we're zone'd or not. + // Getting start-of-today depends on whether we're locat/utc/offset + // or not. var now = time || moment(), sod = makeAs(now, this).startOf('day'), diff = this.diff(sod, 'days', true), @@ -2206,7 +2332,7 @@ diff < 1 ? 'sameDay' : diff < 2 ? 'nextDay' : diff < 7 ? 'nextWeek' : 'sameElse'; - return this.format(this.localeData().calendar(format, this)); + return this.format(this.localeData().calendar(format, this, moment(now))); }, isLeapYear : function () { @@ -2214,8 +2340,8 @@ }, isDST : function () { - return (this.zone() < this.clone().month(0).zone() || - this.zone() < this.clone().month(5).zone()); + return (this.utcOffset() > this.clone().month(0).utcOffset() || + this.utcOffset() > this.clone().month(5).utcOffset()); }, day : function (input) { @@ -2275,36 +2401,49 @@ endOf: function (units) { units = normalizeUnits(units); + if (units === undefined || units === 'millisecond') { + return this; + } return this.startOf(units).add(1, (units === 'isoWeek' ? 'week' : units)).subtract(1, 'ms'); }, isAfter: function (input, units) { + var inputMs; units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond'); if (units === 'millisecond') { input = moment.isMoment(input) ? input : moment(input); return +this > +input; } else { - return +this.clone().startOf(units) > +moment(input).startOf(units); + inputMs = moment.isMoment(input) ? +input : +moment(input); + return inputMs < +this.clone().startOf(units); } }, isBefore: function (input, units) { + var inputMs; units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond'); if (units === 'millisecond') { input = moment.isMoment(input) ? input : moment(input); return +this < +input; } else { - return +this.clone().startOf(units) < +moment(input).startOf(units); + inputMs = moment.isMoment(input) ? +input : +moment(input); + return +this.clone().endOf(units) < inputMs; } }, + isBetween: function (from, to, units) { + return this.isAfter(from, units) && this.isBefore(to, units); + }, + isSame: function (input, units) { + var inputMs; units = normalizeUnits(units || 'millisecond'); if (units === 'millisecond') { input = moment.isMoment(input) ? input : moment(input); return +this === +input; } else { - return +this.clone().startOf(units) === +makeAs(input, this).startOf(units); + inputMs = +moment(input); + return +(this.clone().startOf(units)) <= inputMs && inputMs <= +(this.clone().endOf(units)); } }, @@ -2324,9 +2463,27 @@ } ), + zone : deprecate( + 'moment().zone is deprecated, use moment().utcOffset instead. ' + + 'https://github.com/moment/moment/issues/1779', + function (input, keepLocalTime) { + if (input != null) { + if (typeof input !== 'string') { + input = -input; + } + + this.utcOffset(input, keepLocalTime); + + return this; + } else { + return -this.utcOffset(); + } + } + ), + // keepLocalTime = true means only change the timezone, without - // affecting the local hour. So 5:31:26 +0300 --[zone(2, true)]--> - // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist int zone + // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]--> + // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset // +0200, so we adjust the time as needed, to be valid. // // Keeping the time actually adds/subtracts (one hour) @@ -2334,38 +2491,51 @@ // a second time. In case it wants us to change the offset again // _changeInProgress == true case, then we have to adjust, because // there is no such time in the given timezone. - zone : function (input, keepLocalTime) { + utcOffset : function (input, keepLocalTime) { var offset = this._offset || 0, localAdjust; if (input != null) { if (typeof input === 'string') { - input = timezoneMinutesFromString(input); + input = utcOffsetFromString(input); } if (Math.abs(input) < 16) { input = input * 60; } if (!this._isUTC && keepLocalTime) { - localAdjust = this._dateTzOffset(); + localAdjust = this._dateUtcOffset(); } this._offset = input; this._isUTC = true; if (localAdjust != null) { - this.subtract(localAdjust, 'm'); + this.add(localAdjust, 'm'); } if (offset !== input) { if (!keepLocalTime || this._changeInProgress) { addOrSubtractDurationFromMoment(this, - moment.duration(offset - input, 'm'), 1, false); + moment.duration(input - offset, 'm'), 1, false); } else if (!this._changeInProgress) { this._changeInProgress = true; moment.updateOffset(this, true); this._changeInProgress = null; } } + + return this; } else { - return this._isUTC ? offset : this._dateTzOffset(); + return this._isUTC ? offset : this._dateUtcOffset(); } - return this; + }, + + isLocal : function () { + return !this._isUTC; + }, + + isUtcOffset : function () { + return this._isUTC; + }, + + isUtc : function () { + return this._isUTC && this._offset === 0; }, zoneAbbr : function () { @@ -2378,9 +2548,9 @@ parseZone : function () { if (this._tzm) { - this.zone(this._tzm); + this.utcOffset(this._tzm); } else if (typeof this._i === 'string') { - this.zone(this._i); + this.utcOffset(utcOffsetFromString(this._i)); } return this; }, @@ -2390,10 +2560,10 @@ input = 0; } else { - input = moment(input).zone(); + input = moment(input).utcOffset(); } - return (this.zone() - input) % 60 === 0; + return (this.utcOffset() - input) % 60 === 0; }, daysInMonth : function () { @@ -2456,9 +2626,17 @@ }, set : function (units, value) { - units = normalizeUnits(units); - if (typeof this[units] === 'function') { - this[units](value); + var unit; + if (typeof units === 'object') { + for (unit in units) { + this.set(unit, units[unit]); + } + } + else { + units = normalizeUnits(units); + if (typeof this[units] === 'function') { + this[units](value); + } } return this; }, @@ -2481,7 +2659,7 @@ }, lang : deprecate( - 'moment().lang() is deprecated. Use moment().localeData() instead.', + 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.', function (key) { if (key === undefined) { return this.localeData(); @@ -2495,11 +2673,12 @@ return this._locale; }, - _dateTzOffset : function () { + _dateUtcOffset : function () { // On Firefox.24 Date#getTimezoneOffset returns a floating point. // https://github.com/moment/moment/pull/1871 - return Math.round(this._d.getTimezoneOffset() / 15) * 15; + return -Math.round(this._d.getTimezoneOffset() / 15) * 15; } + }); function rawMonthSetter(mom, value) { @@ -2568,6 +2747,9 @@ // add aliased format methods moment.fn.toJSON = moment.fn.toISOString; + // alias isUtc for dev-friendliness + moment.fn.isUTC = moment.fn.isUtc; + /************************************ Duration Prototype ************************************/ @@ -2702,7 +2884,7 @@ return units === 'month' ? months : months / 12; } else { // handle milliseconds separately because of floating point math errors (issue #1867) - days = this._days + yearsToDays(this._months / 12); + days = this._days + Math.round(yearsToDays(this._months / 12)); switch (units) { case 'week': return days / 7 + this._milliseconds / 6048e5; case 'day': return days + this._milliseconds / 864e5; @@ -2755,6 +2937,10 @@ localeData : function () { return this._locale; + }, + + toJSON : function () { + return this.toISOString(); } }); @@ -2804,6 +2990,7 @@ // Set default locale, other locale will inherit from English. moment.locale('en', { + ordinalParse: /\d{1,2}(th|st|nd|rd)/, ordinal : function (number) { var b = number % 10, output = (toInt(number % 100 / 10) === 1) ? 'th' : @@ -2841,7 +3028,7 @@ if (hasModule) { module.exports = moment; } else if (typeof define === 'function' && define.amd) { - define('moment', function (require, exports, module) { + define(function (require, exports, module) { if (module.config && module.config() && module.config().noGlobal === true) { // release the global variable globalScope.moment = oldGlobalMoment; diff --git a/public/app/bower_components/moment/scripts/npm_prepublish.sh b/public/app/bower_components/moment/scripts/npm_prepublish.sh new file mode 100755 index 00000000..a4889a55 --- /dev/null +++ b/public/app/bower_components/moment/scripts/npm_prepublish.sh @@ -0,0 +1,43 @@ +#!/bin/bash + +set -e + +if [ "$#" != 1 ]; then + echo "Please provide tag to checkout" >&2 + exit 1 +fi +tag="$1" + +while [ "$PWD" != '/' -a ! -f moment.js ]; do + cd .. +done + +if [ ! -f moment.js ]; then + echo "Run me from the moment repo" >&2 + exit 1 +fi + +basename=$(basename $PWD) +src=moment-npm-git +dest=moment-npm + +cd .. + +rm -rf $src $dest + +git clone $basename $src +mkdir $dest + + +cp $src/moment.js $dest +cp $src/package.json $dest +cp $src/README.md $dest +cp $src/LICENSE $dest +cp -r $src/locale $dest +cp -r $src/min $dest +cp $src/ender.js $dest +cp $src/package.js $dest + +rm -rf $src + +echo "Check out $dest" diff --git a/public/app/css/app.css b/public/app/css/app.css index 2c00917d..651071d9 100644 --- a/public/app/css/app.css +++ b/public/app/css/app.css @@ -6,7 +6,8 @@ md-button { padding: 0 3px; margin: 0 3px; } md-content table { max-width: 99%; - width: 99%; } + width: 99%; + margin: 0 0.5%; } .date, .panel-heading { text-align: center } diff --git a/public/app/index.html b/public/app/index.html index d051edd0..59f336b0 100644 --- a/public/app/index.html +++ b/public/app/index.html @@ -11,52 +11,49 @@ - - + + - - - - + - + -
+
- - - - - - + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - + + + + + diff --git a/public/app/js/templates/dashboard.html b/public/app/js/templates/dashboard.html index 4b7f1ef6..66b08d27 100644 --- a/public/app/js/templates/dashboard.html +++ b/public/app/js/templates/dashboard.html @@ -1,184 +1,177 @@ - -

- From {{from_date | date:'longDate'}} to {{to_date | date:'longDate'}} - prev - Now - next -

+ +

From {{from_date | date:'longDate'}} to {{to_date | date:'longDate'}}

+
+ prev + Now + next +
- - - -
- - - - - - - - - - - - - - - - - - - -
AccountSpentBudgetedPercentageProgress
- {{account.account}} - - {{account.amount | number:2}}{{account.currency}} - - {{account.budget | number:2}}{{account.currency}} - - {{balance.buckets[1].raw_total - total_budget | number:2}}{{account.currency}} - - - {{account.percentage | number:2}}% - - {{( account.amount / ( balance.buckets[1].raw_total - total_budget ) ) * 100 | number:2}}% - - - - - -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - -
AccountLeftTotalPercentageProgress
- Balance - - {{balance.buckets[1].raw_total - balance.buckets[0].raw_total | number:2}}{{budget[0].currency}} - - {{balance.buckets[1].raw_total | number:2}}{{budget[0].currency}} - - {{( ( balance.buckets[1].raw_total - balance.buckets[0].raw_total ) / balance.buckets[1].raw_total ) * 100 | number:2}}% - - -
- Potential savings - - {{balance.buckets[1].raw_total - total_budget - total_unbudgeted | number:2}}{{budget[0].currency}} - - {{balance.buckets[1].raw_total - total_budget | number:2}}{{budget[0].currency}} - - {{( ( balance.buckets[1].raw_total - total_budget - total_unbudgeted ) / ( balance.buckets[1].raw_total - total_budget ) ) * 100 | number:2}}% - - -
-
-
- - -
- -

{{bucket.categories}}, total = {{bucket.total | number:2}} €

- - - -
- - - - - - + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + +
accountamountscore
- {{account.account}} - - {{account.amount | number:2}} € - - {{account.score}} -
AccountSpentBudgetedPercentageProgress
+ {{account.account}} + + {{account.amount | number:2}}{{account.currency}} + + {{account.budget | number:2}}{{account.currency}} + + {{balance.buckets[1].raw_total - total_budget | number:2}}{{account.currency}} + + + {{account.percentage | number:2}}% + + {{( account.amount / ( balance.buckets[1].raw_total - total_budget ) ) * 100 | number:2}}% + + + + + +
-
-
- -
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AccountLeftTotalPercentageProgress
+ Balance + + {{balance.buckets[1].raw_total - balance.buckets[0].raw_total | number:2}}{{budget[0].currency}} + + {{balance.buckets[1].raw_total | number:2}}{{budget[0].currency}} + + {{( ( balance.buckets[1].raw_total - balance.buckets[0].raw_total ) / balance.buckets[1].raw_total ) * 100 | number:2}}% + + +
+ Potential savings + + {{balance.buckets[1].raw_total - total_budget - total_unbudgeted | number:2}}{{budget[0].currency}} + + {{balance.buckets[1].raw_total - total_budget | number:2}}{{budget[0].currency}} + + {{( ( balance.buckets[1].raw_total - total_budget - total_unbudgeted ) / ( balance.buckets[1].raw_total - total_budget ) ) * 100 | number:2}}% + + +
+
+
+ + + +

{{bucket.categories}}, total = {{bucket.total | number:2}} €

+ + + +
+ + + + + + + + + + + + + + + + + + + + + + +
accountamountscore
+ {{account.account}} + + {{account.amount | number:2}} € + + {{account.score}} +
+
+
+