├── .gitattributes ├── .gitignore ├── README.md ├── cameras ├── __init__.py ├── admin.py ├── decorators.py ├── migrations │ ├── 0001_initial.py │ └── __init__.py ├── models.py ├── tests │ ├── __init__.py │ └── test_dummy.py ├── urls.py └── views.py ├── dev.sh ├── djangular3 ├── __init__.py ├── settings.py ├── urls.py └── wsgi.py ├── frontend ├── README.md ├── docs_src │ ├── README.md │ ├── component_catalog │ │ ├── component_catalog.js │ │ ├── component_catalog_tree.html │ │ └── sample_page.html │ └── docs_main.js ├── gulpfile.js ├── lib │ ├── angular-1.4.0 │ │ ├── angular-animate.js │ │ ├── angular-animate.min.js │ │ ├── angular-animate.min.js.map │ │ ├── angular-aria.js │ │ ├── angular-aria.min.js │ │ ├── angular-aria.min.js.map │ │ ├── angular-cookies.js │ │ ├── angular-cookies.min.js │ │ ├── angular-cookies.min.js.map │ │ ├── angular-csp.css │ │ ├── angular-loader.js │ │ ├── angular-loader.min.js │ │ ├── angular-loader.min.js.map │ │ ├── angular-message-format.js │ │ ├── angular-message-format.min.js │ │ ├── angular-message-format.min.js.map │ │ ├── angular-messages.js │ │ ├── angular-messages.min.js │ │ ├── angular-messages.min.js.map │ │ ├── angular-mocks.js │ │ ├── angular-resource.js │ │ ├── angular-resource.min.js │ │ ├── angular-resource.min.js.map │ │ ├── angular-route.js │ │ ├── angular-route.min.js │ │ ├── angular-route.min.js.map │ │ ├── angular-sanitize.js │ │ ├── angular-sanitize.min.js │ │ ├── angular-sanitize.min.js.map │ │ ├── angular-scenario.js │ │ ├── angular-touch.js │ │ ├── angular-touch.min.js │ │ ├── angular-touch.min.js.map │ │ ├── angular.js │ │ ├── angular.min.js │ │ ├── angular.min.js.map │ │ ├── errors.json │ │ ├── i18n │ │ │ ├── angular-locale_aa-dj.js │ │ │ ├── angular-locale_aa-er.js │ │ │ ├── angular-locale_aa-et.js │ │ │ ├── angular-locale_aa.js │ │ │ ├── angular-locale_af-na.js │ │ │ ├── angular-locale_af-za.js │ │ │ ├── angular-locale_af.js │ │ │ ├── angular-locale_agq-cm.js │ │ │ ├── angular-locale_agq.js │ │ │ ├── angular-locale_ak-gh.js │ │ │ ├── angular-locale_ak.js │ │ │ ├── angular-locale_am-et.js │ │ │ ├── angular-locale_am.js │ │ │ ├── angular-locale_ar-001.js │ │ │ ├── angular-locale_ar-ae.js │ │ │ ├── angular-locale_ar-bh.js │ │ │ ├── angular-locale_ar-dj.js │ │ │ ├── angular-locale_ar-dz.js │ │ │ ├── angular-locale_ar-eg.js │ │ │ ├── angular-locale_ar-eh.js │ │ │ ├── angular-locale_ar-er.js │ │ │ ├── angular-locale_ar-il.js │ │ │ ├── angular-locale_ar-iq.js │ │ │ ├── angular-locale_ar-jo.js │ │ │ ├── angular-locale_ar-km.js │ │ │ ├── angular-locale_ar-kw.js │ │ │ ├── angular-locale_ar-lb.js │ │ │ ├── angular-locale_ar-ly.js │ │ │ ├── angular-locale_ar-ma.js │ │ │ ├── angular-locale_ar-mr.js │ │ │ ├── angular-locale_ar-om.js │ │ │ ├── angular-locale_ar-ps.js │ │ │ ├── angular-locale_ar-qa.js │ │ │ ├── angular-locale_ar-sa.js │ │ │ ├── angular-locale_ar-sd.js │ │ │ ├── angular-locale_ar-so.js │ │ │ ├── angular-locale_ar-ss.js │ │ │ ├── angular-locale_ar-sy.js │ │ │ ├── angular-locale_ar-td.js │ │ │ ├── angular-locale_ar-tn.js │ │ │ ├── angular-locale_ar-ye.js │ │ │ ├── angular-locale_ar.js │ │ │ ├── angular-locale_as-in.js │ │ │ ├── angular-locale_as.js │ │ │ ├── angular-locale_asa-tz.js │ │ │ ├── angular-locale_asa.js │ │ │ ├── angular-locale_ast-es.js │ │ │ ├── angular-locale_ast.js │ │ │ ├── angular-locale_az-cyrl-az.js │ │ │ ├── angular-locale_az-cyrl.js │ │ │ ├── angular-locale_az-latn-az.js │ │ │ ├── angular-locale_az-latn.js │ │ │ ├── angular-locale_az.js │ │ │ ├── angular-locale_bas-cm.js │ │ │ ├── angular-locale_bas.js │ │ │ ├── angular-locale_be-by.js │ │ │ ├── angular-locale_be.js │ │ │ ├── angular-locale_bem-zm.js │ │ │ ├── angular-locale_bem.js │ │ │ ├── angular-locale_bez-tz.js │ │ │ ├── angular-locale_bez.js │ │ │ ├── angular-locale_bg-bg.js │ │ │ ├── angular-locale_bg.js │ │ │ ├── angular-locale_bm-latn-ml.js │ │ │ ├── angular-locale_bm-latn.js │ │ │ ├── angular-locale_bm-ml.js │ │ │ ├── angular-locale_bm.js │ │ │ ├── angular-locale_bn-bd.js │ │ │ ├── angular-locale_bn-in.js │ │ │ ├── angular-locale_bn.js │ │ │ ├── angular-locale_bo-cn.js │ │ │ ├── angular-locale_bo-in.js │ │ │ ├── angular-locale_bo.js │ │ │ ├── angular-locale_br-fr.js │ │ │ ├── angular-locale_br.js │ │ │ ├── angular-locale_brx-in.js │ │ │ ├── angular-locale_brx.js │ │ │ ├── angular-locale_bs-cyrl-ba.js │ │ │ ├── angular-locale_bs-cyrl.js │ │ │ ├── angular-locale_bs-latn-ba.js │ │ │ ├── angular-locale_bs-latn.js │ │ │ ├── angular-locale_bs.js │ │ │ ├── angular-locale_byn-er.js │ │ │ ├── angular-locale_byn.js │ │ │ ├── angular-locale_ca-ad.js │ │ │ ├── angular-locale_ca-es-valencia.js │ │ │ ├── angular-locale_ca-es.js │ │ │ ├── angular-locale_ca-fr.js │ │ │ ├── angular-locale_ca-it.js │ │ │ ├── angular-locale_ca.js │ │ │ ├── angular-locale_cgg-ug.js │ │ │ ├── angular-locale_cgg.js │ │ │ ├── angular-locale_chr-us.js │ │ │ ├── angular-locale_chr.js │ │ │ ├── angular-locale_ckb-arab-iq.js │ │ │ ├── angular-locale_ckb-arab-ir.js │ │ │ ├── angular-locale_ckb-arab.js │ │ │ ├── angular-locale_ckb-iq.js │ │ │ ├── angular-locale_ckb-ir.js │ │ │ ├── angular-locale_ckb-latn-iq.js │ │ │ ├── angular-locale_ckb-latn.js │ │ │ ├── angular-locale_ckb.js │ │ │ ├── angular-locale_cs-cz.js │ │ │ ├── angular-locale_cs.js │ │ │ ├── angular-locale_cy-gb.js │ │ │ ├── angular-locale_cy.js │ │ │ ├── angular-locale_da-dk.js │ │ │ ├── angular-locale_da-gl.js │ │ │ ├── angular-locale_da.js │ │ │ ├── angular-locale_dav-ke.js │ │ │ ├── angular-locale_dav.js │ │ │ ├── angular-locale_de-at.js │ │ │ ├── angular-locale_de-be.js │ │ │ ├── angular-locale_de-ch.js │ │ │ ├── angular-locale_de-de.js │ │ │ ├── angular-locale_de-li.js │ │ │ ├── angular-locale_de-lu.js │ │ │ ├── angular-locale_de.js │ │ │ ├── angular-locale_dje-ne.js │ │ │ ├── angular-locale_dje.js │ │ │ ├── angular-locale_dsb-de.js │ │ │ ├── angular-locale_dsb.js │ │ │ ├── angular-locale_dua-cm.js │ │ │ ├── angular-locale_dua.js │ │ │ ├── angular-locale_dyo-sn.js │ │ │ ├── angular-locale_dyo.js │ │ │ ├── angular-locale_dz-bt.js │ │ │ ├── angular-locale_dz.js │ │ │ ├── angular-locale_ebu-ke.js │ │ │ ├── angular-locale_ebu.js │ │ │ ├── angular-locale_ee-gh.js │ │ │ ├── angular-locale_ee-tg.js │ │ │ ├── angular-locale_ee.js │ │ │ ├── angular-locale_el-cy.js │ │ │ ├── angular-locale_el-gr.js │ │ │ ├── angular-locale_el.js │ │ │ ├── angular-locale_en-001.js │ │ │ ├── angular-locale_en-150.js │ │ │ ├── angular-locale_en-ag.js │ │ │ ├── angular-locale_en-ai.js │ │ │ ├── angular-locale_en-as.js │ │ │ ├── angular-locale_en-au.js │ │ │ ├── angular-locale_en-bb.js │ │ │ ├── angular-locale_en-be.js │ │ │ ├── angular-locale_en-bm.js │ │ │ ├── angular-locale_en-bs.js │ │ │ ├── angular-locale_en-bw.js │ │ │ ├── angular-locale_en-bz.js │ │ │ ├── angular-locale_en-ca.js │ │ │ ├── angular-locale_en-cc.js │ │ │ ├── angular-locale_en-ck.js │ │ │ ├── angular-locale_en-cm.js │ │ │ ├── angular-locale_en-cx.js │ │ │ ├── angular-locale_en-dg.js │ │ │ ├── angular-locale_en-dm.js │ │ │ ├── angular-locale_en-er.js │ │ │ ├── angular-locale_en-fj.js │ │ │ ├── angular-locale_en-fk.js │ │ │ ├── angular-locale_en-fm.js │ │ │ ├── angular-locale_en-gb.js │ │ │ ├── angular-locale_en-gd.js │ │ │ ├── angular-locale_en-gg.js │ │ │ ├── angular-locale_en-gh.js │ │ │ ├── angular-locale_en-gi.js │ │ │ ├── angular-locale_en-gm.js │ │ │ ├── angular-locale_en-gu.js │ │ │ ├── angular-locale_en-gy.js │ │ │ ├── angular-locale_en-hk.js │ │ │ ├── angular-locale_en-ie.js │ │ │ ├── angular-locale_en-im.js │ │ │ ├── angular-locale_en-in.js │ │ │ ├── angular-locale_en-io.js │ │ │ ├── angular-locale_en-iso.js │ │ │ ├── angular-locale_en-je.js │ │ │ ├── angular-locale_en-jm.js │ │ │ ├── angular-locale_en-ke.js │ │ │ ├── angular-locale_en-ki.js │ │ │ ├── angular-locale_en-kn.js │ │ │ ├── angular-locale_en-ky.js │ │ │ ├── angular-locale_en-lc.js │ │ │ ├── angular-locale_en-lr.js │ │ │ ├── angular-locale_en-ls.js │ │ │ ├── angular-locale_en-mg.js │ │ │ ├── angular-locale_en-mh.js │ │ │ ├── angular-locale_en-mo.js │ │ │ ├── angular-locale_en-mp.js │ │ │ ├── angular-locale_en-ms.js │ │ │ ├── angular-locale_en-mt.js │ │ │ ├── angular-locale_en-mu.js │ │ │ ├── angular-locale_en-mw.js │ │ │ ├── angular-locale_en-my.js │ │ │ ├── angular-locale_en-na.js │ │ │ ├── angular-locale_en-nf.js │ │ │ ├── angular-locale_en-ng.js │ │ │ ├── angular-locale_en-nr.js │ │ │ ├── angular-locale_en-nu.js │ │ │ ├── angular-locale_en-nz.js │ │ │ ├── angular-locale_en-pg.js │ │ │ ├── angular-locale_en-ph.js │ │ │ ├── angular-locale_en-pk.js │ │ │ ├── angular-locale_en-pn.js │ │ │ ├── angular-locale_en-pr.js │ │ │ ├── angular-locale_en-pw.js │ │ │ ├── angular-locale_en-rw.js │ │ │ ├── angular-locale_en-sb.js │ │ │ ├── angular-locale_en-sc.js │ │ │ ├── angular-locale_en-sd.js │ │ │ ├── angular-locale_en-sg.js │ │ │ ├── angular-locale_en-sh.js │ │ │ ├── angular-locale_en-sl.js │ │ │ ├── angular-locale_en-ss.js │ │ │ ├── angular-locale_en-sx.js │ │ │ ├── angular-locale_en-sz.js │ │ │ ├── angular-locale_en-tc.js │ │ │ ├── angular-locale_en-tk.js │ │ │ ├── angular-locale_en-to.js │ │ │ ├── angular-locale_en-tt.js │ │ │ ├── angular-locale_en-tv.js │ │ │ ├── angular-locale_en-tz.js │ │ │ ├── angular-locale_en-ug.js │ │ │ ├── angular-locale_en-um.js │ │ │ ├── angular-locale_en-us.js │ │ │ ├── angular-locale_en-vc.js │ │ │ ├── angular-locale_en-vg.js │ │ │ ├── angular-locale_en-vi.js │ │ │ ├── angular-locale_en-vu.js │ │ │ ├── angular-locale_en-ws.js │ │ │ ├── angular-locale_en-za.js │ │ │ ├── angular-locale_en-zm.js │ │ │ ├── angular-locale_en-zw.js │ │ │ ├── angular-locale_en.js │ │ │ ├── angular-locale_eo-001.js │ │ │ ├── angular-locale_eo.js │ │ │ ├── angular-locale_es-419.js │ │ │ ├── angular-locale_es-ar.js │ │ │ ├── angular-locale_es-bo.js │ │ │ ├── angular-locale_es-cl.js │ │ │ ├── angular-locale_es-co.js │ │ │ ├── angular-locale_es-cr.js │ │ │ ├── angular-locale_es-cu.js │ │ │ ├── angular-locale_es-do.js │ │ │ ├── angular-locale_es-ea.js │ │ │ ├── angular-locale_es-ec.js │ │ │ ├── angular-locale_es-es.js │ │ │ ├── angular-locale_es-gq.js │ │ │ ├── angular-locale_es-gt.js │ │ │ ├── angular-locale_es-hn.js │ │ │ ├── angular-locale_es-ic.js │ │ │ ├── angular-locale_es-mx.js │ │ │ ├── angular-locale_es-ni.js │ │ │ ├── angular-locale_es-pa.js │ │ │ ├── angular-locale_es-pe.js │ │ │ ├── angular-locale_es-ph.js │ │ │ ├── angular-locale_es-pr.js │ │ │ ├── angular-locale_es-py.js │ │ │ ├── angular-locale_es-sv.js │ │ │ ├── angular-locale_es-us.js │ │ │ ├── angular-locale_es-uy.js │ │ │ ├── angular-locale_es-ve.js │ │ │ ├── angular-locale_es.js │ │ │ ├── angular-locale_et-ee.js │ │ │ ├── angular-locale_et.js │ │ │ ├── angular-locale_eu-es.js │ │ │ ├── angular-locale_eu.js │ │ │ ├── angular-locale_ewo-cm.js │ │ │ ├── angular-locale_ewo.js │ │ │ ├── angular-locale_fa-af.js │ │ │ ├── angular-locale_fa-ir.js │ │ │ ├── angular-locale_fa.js │ │ │ ├── angular-locale_ff-cm.js │ │ │ ├── angular-locale_ff-gn.js │ │ │ ├── angular-locale_ff-mr.js │ │ │ ├── angular-locale_ff-sn.js │ │ │ ├── angular-locale_ff.js │ │ │ ├── angular-locale_fi-fi.js │ │ │ ├── angular-locale_fi.js │ │ │ ├── angular-locale_fil-ph.js │ │ │ ├── angular-locale_fil.js │ │ │ ├── angular-locale_fo-fo.js │ │ │ ├── angular-locale_fo.js │ │ │ ├── angular-locale_fr-be.js │ │ │ ├── angular-locale_fr-bf.js │ │ │ ├── angular-locale_fr-bi.js │ │ │ ├── angular-locale_fr-bj.js │ │ │ ├── angular-locale_fr-bl.js │ │ │ ├── angular-locale_fr-ca.js │ │ │ ├── angular-locale_fr-cd.js │ │ │ ├── angular-locale_fr-cf.js │ │ │ ├── angular-locale_fr-cg.js │ │ │ ├── angular-locale_fr-ch.js │ │ │ ├── angular-locale_fr-ci.js │ │ │ ├── angular-locale_fr-cm.js │ │ │ ├── angular-locale_fr-dj.js │ │ │ ├── angular-locale_fr-dz.js │ │ │ ├── angular-locale_fr-fr.js │ │ │ ├── angular-locale_fr-ga.js │ │ │ ├── angular-locale_fr-gf.js │ │ │ ├── angular-locale_fr-gn.js │ │ │ ├── angular-locale_fr-gp.js │ │ │ ├── angular-locale_fr-gq.js │ │ │ ├── angular-locale_fr-ht.js │ │ │ ├── angular-locale_fr-km.js │ │ │ ├── angular-locale_fr-lu.js │ │ │ ├── angular-locale_fr-ma.js │ │ │ ├── angular-locale_fr-mc.js │ │ │ ├── angular-locale_fr-mf.js │ │ │ ├── angular-locale_fr-mg.js │ │ │ ├── angular-locale_fr-ml.js │ │ │ ├── angular-locale_fr-mq.js │ │ │ ├── angular-locale_fr-mr.js │ │ │ ├── angular-locale_fr-mu.js │ │ │ ├── angular-locale_fr-nc.js │ │ │ ├── angular-locale_fr-ne.js │ │ │ ├── angular-locale_fr-pf.js │ │ │ ├── angular-locale_fr-pm.js │ │ │ ├── angular-locale_fr-re.js │ │ │ ├── angular-locale_fr-rw.js │ │ │ ├── angular-locale_fr-sc.js │ │ │ ├── angular-locale_fr-sn.js │ │ │ ├── angular-locale_fr-sy.js │ │ │ ├── angular-locale_fr-td.js │ │ │ ├── angular-locale_fr-tg.js │ │ │ ├── angular-locale_fr-tn.js │ │ │ ├── angular-locale_fr-vu.js │ │ │ ├── angular-locale_fr-wf.js │ │ │ ├── angular-locale_fr-yt.js │ │ │ ├── angular-locale_fr.js │ │ │ ├── angular-locale_fur-it.js │ │ │ ├── angular-locale_fur.js │ │ │ ├── angular-locale_fy-nl.js │ │ │ ├── angular-locale_fy.js │ │ │ ├── angular-locale_ga-ie.js │ │ │ ├── angular-locale_ga.js │ │ │ ├── angular-locale_gd-gb.js │ │ │ ├── angular-locale_gd.js │ │ │ ├── angular-locale_gl-es.js │ │ │ ├── angular-locale_gl.js │ │ │ ├── angular-locale_gsw-ch.js │ │ │ ├── angular-locale_gsw-fr.js │ │ │ ├── angular-locale_gsw-li.js │ │ │ ├── angular-locale_gsw.js │ │ │ ├── angular-locale_gu-in.js │ │ │ ├── angular-locale_gu.js │ │ │ ├── angular-locale_guz-ke.js │ │ │ ├── angular-locale_guz.js │ │ │ ├── angular-locale_gv-im.js │ │ │ ├── angular-locale_gv.js │ │ │ ├── angular-locale_ha-latn-gh.js │ │ │ ├── angular-locale_ha-latn-ne.js │ │ │ ├── angular-locale_ha-latn-ng.js │ │ │ ├── angular-locale_ha-latn.js │ │ │ ├── angular-locale_ha.js │ │ │ ├── angular-locale_haw-us.js │ │ │ ├── angular-locale_haw.js │ │ │ ├── angular-locale_he-il.js │ │ │ ├── angular-locale_he.js │ │ │ ├── angular-locale_hi-in.js │ │ │ ├── angular-locale_hi.js │ │ │ ├── angular-locale_hr-ba.js │ │ │ ├── angular-locale_hr-hr.js │ │ │ ├── angular-locale_hr.js │ │ │ ├── angular-locale_hsb-de.js │ │ │ ├── angular-locale_hsb.js │ │ │ ├── angular-locale_hu-hu.js │ │ │ ├── angular-locale_hu.js │ │ │ ├── angular-locale_hy-am.js │ │ │ ├── angular-locale_hy.js │ │ │ ├── angular-locale_ia-fr.js │ │ │ ├── angular-locale_ia.js │ │ │ ├── angular-locale_id-id.js │ │ │ ├── angular-locale_id.js │ │ │ ├── angular-locale_ig-ng.js │ │ │ ├── angular-locale_ig.js │ │ │ ├── angular-locale_ii-cn.js │ │ │ ├── angular-locale_ii.js │ │ │ ├── angular-locale_in.js │ │ │ ├── angular-locale_is-is.js │ │ │ ├── angular-locale_is.js │ │ │ ├── angular-locale_it-ch.js │ │ │ ├── angular-locale_it-it.js │ │ │ ├── angular-locale_it-sm.js │ │ │ ├── angular-locale_it.js │ │ │ ├── angular-locale_iw.js │ │ │ ├── angular-locale_ja-jp.js │ │ │ ├── angular-locale_ja.js │ │ │ ├── angular-locale_jgo-cm.js │ │ │ ├── angular-locale_jgo.js │ │ │ ├── angular-locale_jmc-tz.js │ │ │ ├── angular-locale_jmc.js │ │ │ ├── angular-locale_ka-ge.js │ │ │ ├── angular-locale_ka.js │ │ │ ├── angular-locale_kab-dz.js │ │ │ ├── angular-locale_kab.js │ │ │ ├── angular-locale_kam-ke.js │ │ │ ├── angular-locale_kam.js │ │ │ ├── angular-locale_kde-tz.js │ │ │ ├── angular-locale_kde.js │ │ │ ├── angular-locale_kea-cv.js │ │ │ ├── angular-locale_kea.js │ │ │ ├── angular-locale_khq-ml.js │ │ │ ├── angular-locale_khq.js │ │ │ ├── angular-locale_ki-ke.js │ │ │ ├── angular-locale_ki.js │ │ │ ├── angular-locale_kk-cyrl-kz.js │ │ │ ├── angular-locale_kk-cyrl.js │ │ │ ├── angular-locale_kk.js │ │ │ ├── angular-locale_kkj-cm.js │ │ │ ├── angular-locale_kkj.js │ │ │ ├── angular-locale_kl-gl.js │ │ │ ├── angular-locale_kl.js │ │ │ ├── angular-locale_kln-ke.js │ │ │ ├── angular-locale_kln.js │ │ │ ├── angular-locale_km-kh.js │ │ │ ├── angular-locale_km.js │ │ │ ├── angular-locale_kn-in.js │ │ │ ├── angular-locale_kn.js │ │ │ ├── angular-locale_ko-kp.js │ │ │ ├── angular-locale_ko-kr.js │ │ │ ├── angular-locale_ko.js │ │ │ ├── angular-locale_kok-in.js │ │ │ ├── angular-locale_kok.js │ │ │ ├── angular-locale_ks-arab-in.js │ │ │ ├── angular-locale_ks-arab.js │ │ │ ├── angular-locale_ks.js │ │ │ ├── angular-locale_ksb-tz.js │ │ │ ├── angular-locale_ksb.js │ │ │ ├── angular-locale_ksf-cm.js │ │ │ ├── angular-locale_ksf.js │ │ │ ├── angular-locale_ksh-de.js │ │ │ ├── angular-locale_ksh.js │ │ │ ├── angular-locale_kw-gb.js │ │ │ ├── angular-locale_kw.js │ │ │ ├── angular-locale_ky-cyrl-kg.js │ │ │ ├── angular-locale_ky-cyrl.js │ │ │ ├── angular-locale_ky.js │ │ │ ├── angular-locale_lag-tz.js │ │ │ ├── angular-locale_lag.js │ │ │ ├── angular-locale_lb-lu.js │ │ │ ├── angular-locale_lb.js │ │ │ ├── angular-locale_lg-ug.js │ │ │ ├── angular-locale_lg.js │ │ │ ├── angular-locale_lkt-us.js │ │ │ ├── angular-locale_lkt.js │ │ │ ├── angular-locale_ln-ao.js │ │ │ ├── angular-locale_ln-cd.js │ │ │ ├── angular-locale_ln-cf.js │ │ │ ├── angular-locale_ln-cg.js │ │ │ ├── angular-locale_ln.js │ │ │ ├── angular-locale_lo-la.js │ │ │ ├── angular-locale_lo.js │ │ │ ├── angular-locale_lt-lt.js │ │ │ ├── angular-locale_lt.js │ │ │ ├── angular-locale_lu-cd.js │ │ │ ├── angular-locale_lu.js │ │ │ ├── angular-locale_luo-ke.js │ │ │ ├── angular-locale_luo.js │ │ │ ├── angular-locale_luy-ke.js │ │ │ ├── angular-locale_luy.js │ │ │ ├── angular-locale_lv-lv.js │ │ │ ├── angular-locale_lv.js │ │ │ ├── angular-locale_mas-ke.js │ │ │ ├── angular-locale_mas-tz.js │ │ │ ├── angular-locale_mas.js │ │ │ ├── angular-locale_mer-ke.js │ │ │ ├── angular-locale_mer.js │ │ │ ├── angular-locale_mfe-mu.js │ │ │ ├── angular-locale_mfe.js │ │ │ ├── angular-locale_mg-mg.js │ │ │ ├── angular-locale_mg.js │ │ │ ├── angular-locale_mgh-mz.js │ │ │ ├── angular-locale_mgh.js │ │ │ ├── angular-locale_mgo-cm.js │ │ │ ├── angular-locale_mgo.js │ │ │ ├── angular-locale_mk-mk.js │ │ │ ├── angular-locale_mk.js │ │ │ ├── angular-locale_ml-in.js │ │ │ ├── angular-locale_ml.js │ │ │ ├── angular-locale_mn-cyrl-mn.js │ │ │ ├── angular-locale_mn-cyrl.js │ │ │ ├── angular-locale_mn.js │ │ │ ├── angular-locale_mr-in.js │ │ │ ├── angular-locale_mr.js │ │ │ ├── angular-locale_ms-latn-bn.js │ │ │ ├── angular-locale_ms-latn-my.js │ │ │ ├── angular-locale_ms-latn-sg.js │ │ │ ├── angular-locale_ms-latn.js │ │ │ ├── angular-locale_ms.js │ │ │ ├── angular-locale_mt-mt.js │ │ │ ├── angular-locale_mt.js │ │ │ ├── angular-locale_mua-cm.js │ │ │ ├── angular-locale_mua.js │ │ │ ├── angular-locale_my-mm.js │ │ │ ├── angular-locale_my.js │ │ │ ├── angular-locale_naq-na.js │ │ │ ├── angular-locale_naq.js │ │ │ ├── angular-locale_nb-no.js │ │ │ ├── angular-locale_nb-sj.js │ │ │ ├── angular-locale_nb.js │ │ │ ├── angular-locale_nd-zw.js │ │ │ ├── angular-locale_nd.js │ │ │ ├── angular-locale_ne-in.js │ │ │ ├── angular-locale_ne-np.js │ │ │ ├── angular-locale_ne.js │ │ │ ├── angular-locale_nl-aw.js │ │ │ ├── angular-locale_nl-be.js │ │ │ ├── angular-locale_nl-bq.js │ │ │ ├── angular-locale_nl-cw.js │ │ │ ├── angular-locale_nl-nl.js │ │ │ ├── angular-locale_nl-sr.js │ │ │ ├── angular-locale_nl-sx.js │ │ │ ├── angular-locale_nl.js │ │ │ ├── angular-locale_nmg-cm.js │ │ │ ├── angular-locale_nmg.js │ │ │ ├── angular-locale_nn-no.js │ │ │ ├── angular-locale_nn.js │ │ │ ├── angular-locale_nnh-cm.js │ │ │ ├── angular-locale_nnh.js │ │ │ ├── angular-locale_no-no.js │ │ │ ├── angular-locale_no.js │ │ │ ├── angular-locale_nr-za.js │ │ │ ├── angular-locale_nr.js │ │ │ ├── angular-locale_nso-za.js │ │ │ ├── angular-locale_nso.js │ │ │ ├── angular-locale_nus-sd.js │ │ │ ├── angular-locale_nus.js │ │ │ ├── angular-locale_nyn-ug.js │ │ │ ├── angular-locale_nyn.js │ │ │ ├── angular-locale_om-et.js │ │ │ ├── angular-locale_om-ke.js │ │ │ ├── angular-locale_om.js │ │ │ ├── angular-locale_or-in.js │ │ │ ├── angular-locale_or.js │ │ │ ├── angular-locale_os-ge.js │ │ │ ├── angular-locale_os-ru.js │ │ │ ├── angular-locale_os.js │ │ │ ├── angular-locale_pa-arab-pk.js │ │ │ ├── angular-locale_pa-arab.js │ │ │ ├── angular-locale_pa-guru-in.js │ │ │ ├── angular-locale_pa-guru.js │ │ │ ├── angular-locale_pa.js │ │ │ ├── angular-locale_pl-pl.js │ │ │ ├── angular-locale_pl.js │ │ │ ├── angular-locale_ps-af.js │ │ │ ├── angular-locale_ps.js │ │ │ ├── angular-locale_pt-ao.js │ │ │ ├── angular-locale_pt-br.js │ │ │ ├── angular-locale_pt-cv.js │ │ │ ├── angular-locale_pt-gw.js │ │ │ ├── angular-locale_pt-mo.js │ │ │ ├── angular-locale_pt-mz.js │ │ │ ├── angular-locale_pt-pt.js │ │ │ ├── angular-locale_pt-st.js │ │ │ ├── angular-locale_pt-tl.js │ │ │ ├── angular-locale_pt.js │ │ │ ├── angular-locale_qu-bo.js │ │ │ ├── angular-locale_qu-ec.js │ │ │ ├── angular-locale_qu-pe.js │ │ │ ├── angular-locale_qu.js │ │ │ ├── angular-locale_rm-ch.js │ │ │ ├── angular-locale_rm.js │ │ │ ├── angular-locale_rn-bi.js │ │ │ ├── angular-locale_rn.js │ │ │ ├── angular-locale_ro-md.js │ │ │ ├── angular-locale_ro-ro.js │ │ │ ├── angular-locale_ro.js │ │ │ ├── angular-locale_rof-tz.js │ │ │ ├── angular-locale_rof.js │ │ │ ├── angular-locale_ru-by.js │ │ │ ├── angular-locale_ru-kg.js │ │ │ ├── angular-locale_ru-kz.js │ │ │ ├── angular-locale_ru-md.js │ │ │ ├── angular-locale_ru-ru.js │ │ │ ├── angular-locale_ru-ua.js │ │ │ ├── angular-locale_ru.js │ │ │ ├── angular-locale_rw-rw.js │ │ │ ├── angular-locale_rw.js │ │ │ ├── angular-locale_rwk-tz.js │ │ │ ├── angular-locale_rwk.js │ │ │ ├── angular-locale_sah-ru.js │ │ │ ├── angular-locale_sah.js │ │ │ ├── angular-locale_saq-ke.js │ │ │ ├── angular-locale_saq.js │ │ │ ├── angular-locale_sbp-tz.js │ │ │ ├── angular-locale_sbp.js │ │ │ ├── angular-locale_se-fi.js │ │ │ ├── angular-locale_se-no.js │ │ │ ├── angular-locale_se-se.js │ │ │ ├── angular-locale_se.js │ │ │ ├── angular-locale_seh-mz.js │ │ │ ├── angular-locale_seh.js │ │ │ ├── angular-locale_ses-ml.js │ │ │ ├── angular-locale_ses.js │ │ │ ├── angular-locale_sg-cf.js │ │ │ ├── angular-locale_sg.js │ │ │ ├── angular-locale_shi-latn-ma.js │ │ │ ├── angular-locale_shi-latn.js │ │ │ ├── angular-locale_shi-tfng-ma.js │ │ │ ├── angular-locale_shi-tfng.js │ │ │ ├── angular-locale_shi.js │ │ │ ├── angular-locale_si-lk.js │ │ │ ├── angular-locale_si.js │ │ │ ├── angular-locale_sk-sk.js │ │ │ ├── angular-locale_sk.js │ │ │ ├── angular-locale_sl-si.js │ │ │ ├── angular-locale_sl.js │ │ │ ├── angular-locale_smn-fi.js │ │ │ ├── angular-locale_smn.js │ │ │ ├── angular-locale_sn-zw.js │ │ │ ├── angular-locale_sn.js │ │ │ ├── angular-locale_so-dj.js │ │ │ ├── angular-locale_so-et.js │ │ │ ├── angular-locale_so-ke.js │ │ │ ├── angular-locale_so-so.js │ │ │ ├── angular-locale_so.js │ │ │ ├── angular-locale_sq-al.js │ │ │ ├── angular-locale_sq-mk.js │ │ │ ├── angular-locale_sq-xk.js │ │ │ ├── angular-locale_sq.js │ │ │ ├── angular-locale_sr-cyrl-ba.js │ │ │ ├── angular-locale_sr-cyrl-me.js │ │ │ ├── angular-locale_sr-cyrl-rs.js │ │ │ ├── angular-locale_sr-cyrl-xk.js │ │ │ ├── angular-locale_sr-cyrl.js │ │ │ ├── angular-locale_sr-latn-ba.js │ │ │ ├── angular-locale_sr-latn-me.js │ │ │ ├── angular-locale_sr-latn-rs.js │ │ │ ├── angular-locale_sr-latn-xk.js │ │ │ ├── angular-locale_sr-latn.js │ │ │ ├── angular-locale_sr.js │ │ │ ├── angular-locale_ss-sz.js │ │ │ ├── angular-locale_ss-za.js │ │ │ ├── angular-locale_ss.js │ │ │ ├── angular-locale_ssy-er.js │ │ │ ├── angular-locale_ssy.js │ │ │ ├── angular-locale_st-ls.js │ │ │ ├── angular-locale_st-za.js │ │ │ ├── angular-locale_st.js │ │ │ ├── angular-locale_sv-ax.js │ │ │ ├── angular-locale_sv-fi.js │ │ │ ├── angular-locale_sv-se.js │ │ │ ├── angular-locale_sv.js │ │ │ ├── angular-locale_sw-ke.js │ │ │ ├── angular-locale_sw-tz.js │ │ │ ├── angular-locale_sw-ug.js │ │ │ ├── angular-locale_sw.js │ │ │ ├── angular-locale_swc-cd.js │ │ │ ├── angular-locale_swc.js │ │ │ ├── angular-locale_ta-in.js │ │ │ ├── angular-locale_ta-lk.js │ │ │ ├── angular-locale_ta-my.js │ │ │ ├── angular-locale_ta-sg.js │ │ │ ├── angular-locale_ta.js │ │ │ ├── angular-locale_te-in.js │ │ │ ├── angular-locale_te.js │ │ │ ├── angular-locale_teo-ke.js │ │ │ ├── angular-locale_teo-ug.js │ │ │ ├── angular-locale_teo.js │ │ │ ├── angular-locale_tg-cyrl-tj.js │ │ │ ├── angular-locale_tg-cyrl.js │ │ │ ├── angular-locale_tg.js │ │ │ ├── angular-locale_th-th.js │ │ │ ├── angular-locale_th.js │ │ │ ├── angular-locale_ti-er.js │ │ │ ├── angular-locale_ti-et.js │ │ │ ├── angular-locale_ti.js │ │ │ ├── angular-locale_tig-er.js │ │ │ ├── angular-locale_tig.js │ │ │ ├── angular-locale_tl.js │ │ │ ├── angular-locale_tn-bw.js │ │ │ ├── angular-locale_tn-za.js │ │ │ ├── angular-locale_tn.js │ │ │ ├── angular-locale_to-to.js │ │ │ ├── angular-locale_to.js │ │ │ ├── angular-locale_tr-cy.js │ │ │ ├── angular-locale_tr-tr.js │ │ │ ├── angular-locale_tr.js │ │ │ ├── angular-locale_ts-za.js │ │ │ ├── angular-locale_ts.js │ │ │ ├── angular-locale_twq-ne.js │ │ │ ├── angular-locale_twq.js │ │ │ ├── angular-locale_tzm-latn-ma.js │ │ │ ├── angular-locale_tzm-latn.js │ │ │ ├── angular-locale_tzm.js │ │ │ ├── angular-locale_ug-arab-cn.js │ │ │ ├── angular-locale_ug-arab.js │ │ │ ├── angular-locale_ug.js │ │ │ ├── angular-locale_uk-ua.js │ │ │ ├── angular-locale_uk.js │ │ │ ├── angular-locale_ur-in.js │ │ │ ├── angular-locale_ur-pk.js │ │ │ ├── angular-locale_ur.js │ │ │ ├── angular-locale_uz-arab-af.js │ │ │ ├── angular-locale_uz-arab.js │ │ │ ├── angular-locale_uz-cyrl-uz.js │ │ │ ├── angular-locale_uz-cyrl.js │ │ │ ├── angular-locale_uz-latn-uz.js │ │ │ ├── angular-locale_uz-latn.js │ │ │ ├── angular-locale_uz.js │ │ │ ├── angular-locale_vai-latn-lr.js │ │ │ ├── angular-locale_vai-latn.js │ │ │ ├── angular-locale_vai-vaii-lr.js │ │ │ ├── angular-locale_vai-vaii.js │ │ │ ├── angular-locale_vai.js │ │ │ ├── angular-locale_ve-za.js │ │ │ ├── angular-locale_ve.js │ │ │ ├── angular-locale_vi-vn.js │ │ │ ├── angular-locale_vi.js │ │ │ ├── angular-locale_vo-001.js │ │ │ ├── angular-locale_vo.js │ │ │ ├── angular-locale_vun-tz.js │ │ │ ├── angular-locale_vun.js │ │ │ ├── angular-locale_wae-ch.js │ │ │ ├── angular-locale_wae.js │ │ │ ├── angular-locale_wal-et.js │ │ │ ├── angular-locale_wal.js │ │ │ ├── angular-locale_xh-za.js │ │ │ ├── angular-locale_xh.js │ │ │ ├── angular-locale_xog-ug.js │ │ │ ├── angular-locale_xog.js │ │ │ ├── angular-locale_yav-cm.js │ │ │ ├── angular-locale_yav.js │ │ │ ├── angular-locale_yi-001.js │ │ │ ├── angular-locale_yi.js │ │ │ ├── angular-locale_yo-bj.js │ │ │ ├── angular-locale_yo-ng.js │ │ │ ├── angular-locale_yo.js │ │ │ ├── angular-locale_zgh-ma.js │ │ │ ├── angular-locale_zgh.js │ │ │ ├── angular-locale_zh-cn.js │ │ │ ├── angular-locale_zh-hans-cn.js │ │ │ ├── angular-locale_zh-hans-hk.js │ │ │ ├── angular-locale_zh-hans-mo.js │ │ │ ├── angular-locale_zh-hans-sg.js │ │ │ ├── angular-locale_zh-hans.js │ │ │ ├── angular-locale_zh-hant-hk.js │ │ │ ├── angular-locale_zh-hant-mo.js │ │ │ ├── angular-locale_zh-hant-tw.js │ │ │ ├── angular-locale_zh-hant.js │ │ │ ├── angular-locale_zh-hk.js │ │ │ ├── angular-locale_zh-tw.js │ │ │ ├── angular-locale_zh.js │ │ │ ├── angular-locale_zu-za.js │ │ │ └── angular-locale_zu.js │ │ ├── version.json │ │ └── version.txt │ ├── angular-material-0.9.8 │ │ ├── .bower.json │ │ ├── .gitignore │ │ ├── angular-material-mocks.js │ │ ├── angular-material.css │ │ ├── angular-material.js │ │ ├── angular-material.min.css │ │ └── angular-material.min.js │ ├── angular-ui-router-0.2.15 │ │ ├── angular-ui-router.js │ │ └── angular-ui-router.min.js │ ├── bootstrap │ │ ├── README.md │ │ ├── dist │ │ │ ├── css │ │ │ │ ├── bootstrap-theme.css │ │ │ │ ├── bootstrap-theme.css.map │ │ │ │ ├── bootstrap-theme.min.css │ │ │ │ ├── bootstrap.css │ │ │ │ ├── bootstrap.css.map │ │ │ │ └── bootstrap.min.css │ │ │ ├── fonts │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ └── js │ │ │ │ ├── bootstrap.js │ │ │ │ ├── bootstrap.min.js │ │ │ │ └── npm.js │ │ ├── fonts │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ └── glyphicons-halflings-regular.woff2 │ │ └── js │ │ │ ├── .jscsrc │ │ │ ├── .jshintrc │ │ │ ├── affix.js │ │ │ ├── alert.js │ │ │ ├── button.js │ │ │ ├── carousel.js │ │ │ ├── collapse.js │ │ │ ├── dropdown.js │ │ │ ├── modal.js │ │ │ ├── popover.js │ │ │ ├── scrollspy.js │ │ │ ├── tab.js │ │ │ ├── tooltip.js │ │ │ └── transition.js │ └── jquery │ │ ├── jquery.js │ │ ├── jquery.min.js │ │ └── jquery.min.map ├── package.json ├── settings │ ├── dev.js │ └── prod.js ├── src │ ├── admin │ │ ├── _admin.scss │ │ └── appadmin.js │ ├── api │ │ ├── api.js │ │ └── api_mock.js │ ├── app.scss │ ├── cameras │ │ ├── cameras.html │ │ └── cameras.js │ ├── commons │ │ ├── appajax.js │ │ └── jsutils.js │ ├── components │ │ ├── todo_example │ │ │ ├── _todo.scss │ │ │ ├── docs │ │ │ │ ├── test_todo.js │ │ │ │ ├── todo_sample.html │ │ │ │ └── todo_sample.js │ │ │ ├── todo.html │ │ │ └── todo.js │ │ └── toolbar │ │ │ ├── apptoolbar.html │ │ │ └── apptoolbar.js │ ├── docs.html │ ├── docs.scss │ ├── home │ │ ├── apphome.html │ │ └── apphome.js │ ├── index.html │ ├── index.scss │ ├── login │ │ ├── applogin.html │ │ └── applogin.js │ ├── main │ │ ├── app_global.js │ │ ├── app_main.js │ │ └── appauth.js │ ├── viewuser │ │ ├── appviewuser.html │ │ └── appviewuser.js │ └── workarounds │ │ └── ng_bind_html_unsafe.js └── testlib │ ├── chai │ └── chai.js │ ├── setup_globals.js │ └── sinon │ └── sinon.js ├── hangout_topics.md ├── manage.py ├── requirements.txt ├── roteiro.md ├── sem_angular.md └── templates └── index.html /.gitattributes: -------------------------------------------------------------------------------- 1 | frontend/lib/* linguist-vendored 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | frontend/dist/ 3 | frontend/bower_components 4 | frontend/node_modules 5 | cameras/static/js 6 | cameras/static/css 7 | coverage/ -------------------------------------------------------------------------------- /cameras/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qmagico/djangular3/65a46b015462c8a37dd9332b6d29d772978556ff/cameras/__init__.py -------------------------------------------------------------------------------- /cameras/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | from cameras.models import Camera 3 | 4 | # Register your models here. 5 | admin.site.register(Camera) -------------------------------------------------------------------------------- /cameras/decorators.py: -------------------------------------------------------------------------------- 1 | from functools import wraps 2 | import json 3 | from django.http.response import HttpResponse 4 | 5 | def ajax_login_required(view_func): 6 | @wraps(view_func) 7 | def wrapper(request, *args, **kwargs): 8 | if request.user.is_authenticated(): 9 | return view_func(request, *args, **kwargs) 10 | resp = json.dumps({ 'not_authenticated': True }) 11 | return HttpResponse(resp, content_type='application/json', status=401) 12 | return wrapper 13 | -------------------------------------------------------------------------------- /cameras/migrations/0001_initial.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from django.db import models, migrations 5 | 6 | 7 | class Migration(migrations.Migration): 8 | 9 | dependencies = [ 10 | ] 11 | 12 | operations = [ 13 | migrations.CreateModel( 14 | name='Camera', 15 | fields=[ 16 | ('id', models.AutoField(auto_created=True, verbose_name='ID', serialize=False, primary_key=True)), 17 | ('name', models.CharField(max_length=256)), 18 | ('address', models.CharField(max_length=2048)), 19 | ], 20 | ), 21 | ] 22 | -------------------------------------------------------------------------------- /cameras/migrations/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qmagico/djangular3/65a46b015462c8a37dd9332b6d29d772978556ff/cameras/migrations/__init__.py -------------------------------------------------------------------------------- /cameras/models.py: -------------------------------------------------------------------------------- 1 | from django.db import models 2 | 3 | class Camera(models.Model): 4 | name = models.CharField(max_length=256) 5 | address = models.CharField(max_length=2048) 6 | 7 | def to_dict_json(self): 8 | return { 9 | 'name': self.name, 10 | } 11 | -------------------------------------------------------------------------------- /cameras/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qmagico/djangular3/65a46b015462c8a37dd9332b6d29d772978556ff/cameras/tests/__init__.py -------------------------------------------------------------------------------- /cameras/tests/test_dummy.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | class DummyTest(TestCase): 4 | def test_sum(self): 5 | self.assertEquals(1 + 1, 2) 6 | -------------------------------------------------------------------------------- /cameras/urls.py: -------------------------------------------------------------------------------- 1 | # coding: utf-8 2 | from django.conf.urls import patterns, url 3 | 4 | urlpatterns = patterns('cameras.views', 5 | url(r'^api/login$', 'login'), 6 | url(r'^api/logout$', 'logout'), 7 | url(r'^api/whoami$', 'whoami'), 8 | url(r'^api/get_user_details$', 'get_user_details'), 9 | url(r'^api/list_cameras$', 'list_cameras'), 10 | ) 11 | -------------------------------------------------------------------------------- /cameras/views.py: -------------------------------------------------------------------------------- 1 | import json 2 | from django.http.response import HttpResponse 3 | from django.core.exceptions import ObjectDoesNotExist 4 | from django.contrib import auth 5 | from cameras.models import Camera 6 | from cameras.decorators import ajax_login_required 7 | 8 | def login(request): 9 | username = request.POST['username'] 10 | password = request.POST['password'] 11 | user = auth.authenticate(username=username, password=password) 12 | user_dict = None 13 | if user is not None: 14 | if user.is_active: 15 | auth.login(request, user) 16 | user_dict = _user2dict(user) 17 | return HttpResponse(json.dumps(user_dict), content_type='application/json') 18 | 19 | 20 | def logout(request): 21 | auth.logout(request) 22 | return HttpResponse('{}', content_type='application/json') 23 | 24 | 25 | def whoami(request): 26 | i_am = { 27 | 'user': _user2dict(request.user), 28 | 'authenticated': True, 29 | } if request.user.is_authenticated() else {'authenticated': False} 30 | return HttpResponse(json.dumps(i_am), content_type='application/json') 31 | 32 | 33 | def get_user_details(request): 34 | username = request.GET['username'] 35 | user = auth.get_user_model().objects.get(username=username) 36 | user_dict = _user2dict(user) 37 | return HttpResponse(json.dumps(user_dict), content_type='application/json') 38 | 39 | 40 | @ajax_login_required 41 | def list_cameras(request): 42 | filters = json.loads(request.GET.get('filters', '{}')) 43 | cams = Camera.objects.all() 44 | cams_dic = [c.to_dict_json() for c in cams] 45 | return HttpResponse(json.dumps(cams_dic), content_type='application/json') 46 | 47 | 48 | def _user2dict(user): 49 | return { 50 | 'username': user.username, 51 | 'name': user.first_name, 52 | 'permissions':{ 53 | 'ADMIN': user.is_superuser, 54 | 'STAFF': user.is_staff, 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /djangular3/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qmagico/djangular3/65a46b015462c8a37dd9332b6d29d772978556ff/djangular3/__init__.py -------------------------------------------------------------------------------- /djangular3/urls.py: -------------------------------------------------------------------------------- 1 | from django.conf.urls import include, url 2 | from django.contrib import admin 3 | from django.views.generic import TemplateView 4 | 5 | urlpatterns = [ 6 | # Examples: 7 | # url(r'^$', 'djangular3.views.home', name='home'), 8 | # url(r'^blog/', include('blog.urls')), 9 | 10 | url(r'^$', TemplateView.as_view(template_name='index.html')), 11 | url(r'^admin/', include(admin.site.urls)), 12 | url(r'^', include('cameras.urls')), 13 | ] 14 | -------------------------------------------------------------------------------- /djangular3/wsgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | WSGI config for djangular3 project. 3 | 4 | It exposes the WSGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/1.8/howto/deployment/wsgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.wsgi import get_wsgi_application 13 | 14 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "djangular3.settings") 15 | 16 | application = get_wsgi_application() 17 | -------------------------------------------------------------------------------- /frontend/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qmagico/djangular3/65a46b015462c8a37dd9332b6d29d772978556ff/frontend/README.md -------------------------------------------------------------------------------- /frontend/docs_src/README.md: -------------------------------------------------------------------------------- 1 | This is a couple of components that facilitates building a documentation website with a bunch of sample pages that demonstrate how to use components. 2 | 3 | To see an example, look at the `src/pages/docs.html`, or the generated `dist/docs.html` once you run any build. 4 | 5 | For DOCS to work, there are a few settings (global js variables) that need to be in place: 6 | 7 | * DOCS.SAMPLE_BASE_URL: points to where DOCS should look for code samples (should not be cached with $templateCache!) 8 | * DOCS.BASE_URL: where docs should look for its own templates (can be cached) 9 | 10 | -------------------------------------------------------------------------------- /frontend/docs_src/component_catalog/component_catalog_tree.html: -------------------------------------------------------------------------------- 1 |
2 | 17 |
18 | -------------------------------------------------------------------------------- /frontend/docs_src/component_catalog/sample_page.html: -------------------------------------------------------------------------------- 1 |
2 | 3 |
4 |

{[{m.active_component.title}]}

5 | 6 | 7 |
8 | 9 |
10 |
11 |
12 |
    13 |
  • 14 | {[{sourcefile.name}]} 15 |
    {[{sourcefile.content}]}
    16 |
  • 17 |
18 |
19 |
20 |
-------------------------------------------------------------------------------- /frontend/docs_src/docs_main.js: -------------------------------------------------------------------------------- 1 | (function(){ 2 | 3 | var deps = [ 4 | 'component_catalog', 5 | 'ui.router', 6 | ]; 7 | if(window.DOCS && DOCS.angular_dependencies){ 8 | deps = deps.concat(DOCS.angular_dependencies); 9 | } 10 | 11 | angular.module('docs_main', deps); 12 | angular.module('docs_main').config(function($interpolateProvider, $controllerProvider, $stateProvider, $urlRouterProvider) { 13 | $interpolateProvider.startSymbol('{[{').endSymbol('}]}'); 14 | 15 | $controllerProvider.allowGlobals(); 16 | $urlRouterProvider.otherwise('/instructions'); 17 | 18 | $stateProvider 19 | .state('base', { 20 | url: '/:category/:title', 21 | template: '', 22 | controller: 'IncludeComponentCatalogSampleCtrl' 23 | }) 24 | .state('instructions', { 25 | url: '/instructions', 26 | template: '
select something on the left
' 27 | }); 28 | }); 29 | })(); 30 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/angular-cookies.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | AngularJS v1.4.0 3 | (c) 2010-2015 Google, Inc. http://angularjs.org 4 | License: MIT 5 | */ 6 | (function(p,g,l){'use strict';function m(b,a,f){var c=f.baseHref(),k=b[0];return function(b,d,e){var f,h;e=e||{};h=e.expires;f=g.isDefined(e.path)?e.path:c;d===l&&(h="Thu, 01 Jan 1970 00:00:00 GMT",d="");g.isString(h)&&(h=new Date(h));d=encodeURIComponent(b)+"="+encodeURIComponent(d);d=d+(f?";path="+f:"")+(e.domain?";domain="+e.domain:"");d+=h?";expires="+h.toUTCString():"";d+=e.secure?";secure":"";e=d.length+1;4096 4096 bytes)!");k.cookie=d}}g.module("ngCookies",["ng"]).provider("$cookies",[function(){var b=this.defaults={};this.$get=["$$cookieReader","$$cookieWriter",function(a,f){return{get:function(c){return a()[c]},getObject:function(c){return(c=this.get(c))?g.fromJson(c):c},getAll:function(){return a()},put:function(c,a,n){f(c,a,n?g.extend({},b,n):b)},putObject:function(c,b,a){this.put(c,g.toJson(b),a)},remove:function(a,k){f(a,l,k?g.extend({},b,k):b)}}}]}]);g.module("ngCookies").factory("$cookieStore", 8 | ["$cookies",function(b){return{get:function(a){return b.getObject(a)},put:function(a,f){b.putObject(a,f)},remove:function(a){b.remove(a)}}}]);m.$inject=["$document","$log","$browser"];g.module("ngCookies").provider("$$cookieWriter",function(){this.$get=m})})(window,window.angular); 9 | //# sourceMappingURL=angular-cookies.min.js.map 10 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/angular-csp.css: -------------------------------------------------------------------------------- 1 | /* Include this file in your html if you are using the CSP mode. */ 2 | 3 | @charset "UTF-8"; 4 | 5 | [ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], 6 | .ng-cloak, .x-ng-cloak, 7 | .ng-hide:not(.ng-hide-animate) { 8 | display: none !important; 9 | } 10 | 11 | ng\:form { 12 | display: block; 13 | } 14 | 15 | .ng-animate-shim { 16 | visibility:hidden; 17 | } 18 | 19 | .ng-anchor { 20 | position:absolute; 21 | } 22 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/angular-loader.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | AngularJS v1.4.0 3 | (c) 2010-2015 Google, Inc. http://angularjs.org 4 | License: MIT 5 | */ 6 | (function(){'use strict';function d(b){return function(){var c=arguments[0],e;e="["+(b?b+":":"")+c+"] http://errors.angularjs.org/1.4.0/"+(b?b+"/":"")+c;for(c=1;c= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_sq-al.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "paradite", 8 | "pasdite" 9 | ], 10 | "DAY": [ 11 | "e diel", 12 | "e h\u00ebn\u00eb", 13 | "e mart\u00eb", 14 | "e m\u00ebrkur\u00eb", 15 | "e enjte", 16 | "e premte", 17 | "e shtun\u00eb" 18 | ], 19 | "ERANAMES": [ 20 | "para er\u00ebs s\u00eb re", 21 | "er\u00ebs s\u00eb re" 22 | ], 23 | "ERAS": [ 24 | "p.e.r.", 25 | "e.r." 26 | ], 27 | "FIRSTDAYOFWEEK": 0, 28 | "MONTH": [ 29 | "janar", 30 | "shkurt", 31 | "mars", 32 | "prill", 33 | "maj", 34 | "qershor", 35 | "korrik", 36 | "gusht", 37 | "shtator", 38 | "tetor", 39 | "n\u00ebntor", 40 | "dhjetor" 41 | ], 42 | "SHORTDAY": [ 43 | "Die", 44 | "H\u00ebn", 45 | "Mar", 46 | "M\u00ebr", 47 | "Enj", 48 | "Pre", 49 | "Sht" 50 | ], 51 | "SHORTMONTH": [ 52 | "Jan", 53 | "Shk", 54 | "Mar", 55 | "Pri", 56 | "Maj", 57 | "Qer", 58 | "Kor", 59 | "Gsh", 60 | "Sht", 61 | "Tet", 62 | "N\u00ebn", 63 | "Dhj" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "EEEE, d MMMM y", 70 | "longDate": "d MMMM y", 71 | "medium": "d MMM y HH:mm:ss", 72 | "mediumDate": "d MMM y", 73 | "mediumTime": "HH:mm:ss", 74 | "short": "d.M.yy HH:mm", 75 | "shortDate": "d.M.yy", 76 | "shortTime": "HH:mm" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "Lek", 80 | "DECIMAL_SEP": ",", 81 | "GROUP_SEP": "\u00a0", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "-", 101 | "negSuf": "\u00a0\u00a4", 102 | "posPre": "", 103 | "posSuf": "\u00a0\u00a4" 104 | } 105 | ] 106 | }, 107 | "id": "sq-al", 108 | "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_sq-mk.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "paradite", 8 | "pasdite" 9 | ], 10 | "DAY": [ 11 | "e diel", 12 | "e h\u00ebn\u00eb", 13 | "e mart\u00eb", 14 | "e m\u00ebrkur\u00eb", 15 | "e enjte", 16 | "e premte", 17 | "e shtun\u00eb" 18 | ], 19 | "ERANAMES": [ 20 | "para er\u00ebs s\u00eb re", 21 | "er\u00ebs s\u00eb re" 22 | ], 23 | "ERAS": [ 24 | "p.e.r.", 25 | "e.r." 26 | ], 27 | "FIRSTDAYOFWEEK": 0, 28 | "MONTH": [ 29 | "janar", 30 | "shkurt", 31 | "mars", 32 | "prill", 33 | "maj", 34 | "qershor", 35 | "korrik", 36 | "gusht", 37 | "shtator", 38 | "tetor", 39 | "n\u00ebntor", 40 | "dhjetor" 41 | ], 42 | "SHORTDAY": [ 43 | "Die", 44 | "H\u00ebn", 45 | "Mar", 46 | "M\u00ebr", 47 | "Enj", 48 | "Pre", 49 | "Sht" 50 | ], 51 | "SHORTMONTH": [ 52 | "Jan", 53 | "Shk", 54 | "Mar", 55 | "Pri", 56 | "Maj", 57 | "Qer", 58 | "Kor", 59 | "Gsh", 60 | "Sht", 61 | "Tet", 62 | "N\u00ebn", 63 | "Dhj" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "EEEE, d MMMM y", 70 | "longDate": "d MMMM y", 71 | "medium": "d MMM y HH:mm:ss", 72 | "mediumDate": "d MMM y", 73 | "mediumTime": "HH:mm:ss", 74 | "short": "d.M.yy HH:mm", 75 | "shortDate": "d.M.yy", 76 | "shortTime": "HH:mm" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "din", 80 | "DECIMAL_SEP": ",", 81 | "GROUP_SEP": "\u00a0", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "-", 101 | "negSuf": "\u00a0\u00a4", 102 | "posPre": "", 103 | "posSuf": "\u00a0\u00a4" 104 | } 105 | ] 106 | }, 107 | "id": "sq-mk", 108 | "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_sq-xk.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "paradite", 8 | "pasdite" 9 | ], 10 | "DAY": [ 11 | "e diel", 12 | "e h\u00ebn\u00eb", 13 | "e mart\u00eb", 14 | "e m\u00ebrkur\u00eb", 15 | "e enjte", 16 | "e premte", 17 | "e shtun\u00eb" 18 | ], 19 | "ERANAMES": [ 20 | "para er\u00ebs s\u00eb re", 21 | "er\u00ebs s\u00eb re" 22 | ], 23 | "ERAS": [ 24 | "p.e.r.", 25 | "e.r." 26 | ], 27 | "FIRSTDAYOFWEEK": 0, 28 | "MONTH": [ 29 | "janar", 30 | "shkurt", 31 | "mars", 32 | "prill", 33 | "maj", 34 | "qershor", 35 | "korrik", 36 | "gusht", 37 | "shtator", 38 | "tetor", 39 | "n\u00ebntor", 40 | "dhjetor" 41 | ], 42 | "SHORTDAY": [ 43 | "Die", 44 | "H\u00ebn", 45 | "Mar", 46 | "M\u00ebr", 47 | "Enj", 48 | "Pre", 49 | "Sht" 50 | ], 51 | "SHORTMONTH": [ 52 | "Jan", 53 | "Shk", 54 | "Mar", 55 | "Pri", 56 | "Maj", 57 | "Qer", 58 | "Kor", 59 | "Gsh", 60 | "Sht", 61 | "Tet", 62 | "N\u00ebn", 63 | "Dhj" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "EEEE, d MMMM y", 70 | "longDate": "d MMMM y", 71 | "medium": "d MMM y HH:mm:ss", 72 | "mediumDate": "d MMM y", 73 | "mediumTime": "HH:mm:ss", 74 | "short": "d.M.yy HH:mm", 75 | "shortDate": "d.M.yy", 76 | "shortTime": "HH:mm" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "\u20ac", 80 | "DECIMAL_SEP": ",", 81 | "GROUP_SEP": "\u00a0", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "-", 101 | "negSuf": "\u00a0\u00a4", 102 | "posPre": "", 103 | "posSuf": "\u00a0\u00a4" 104 | } 105 | ] 106 | }, 107 | "id": "sq-xk", 108 | "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_sq.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "paradite", 8 | "pasdite" 9 | ], 10 | "DAY": [ 11 | "e diel", 12 | "e h\u00ebn\u00eb", 13 | "e mart\u00eb", 14 | "e m\u00ebrkur\u00eb", 15 | "e enjte", 16 | "e premte", 17 | "e shtun\u00eb" 18 | ], 19 | "ERANAMES": [ 20 | "para er\u00ebs s\u00eb re", 21 | "er\u00ebs s\u00eb re" 22 | ], 23 | "ERAS": [ 24 | "p.e.r.", 25 | "e.r." 26 | ], 27 | "FIRSTDAYOFWEEK": 0, 28 | "MONTH": [ 29 | "janar", 30 | "shkurt", 31 | "mars", 32 | "prill", 33 | "maj", 34 | "qershor", 35 | "korrik", 36 | "gusht", 37 | "shtator", 38 | "tetor", 39 | "n\u00ebntor", 40 | "dhjetor" 41 | ], 42 | "SHORTDAY": [ 43 | "Die", 44 | "H\u00ebn", 45 | "Mar", 46 | "M\u00ebr", 47 | "Enj", 48 | "Pre", 49 | "Sht" 50 | ], 51 | "SHORTMONTH": [ 52 | "Jan", 53 | "Shk", 54 | "Mar", 55 | "Pri", 56 | "Maj", 57 | "Qer", 58 | "Kor", 59 | "Gsh", 60 | "Sht", 61 | "Tet", 62 | "N\u00ebn", 63 | "Dhj" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "EEEE, d MMMM y", 70 | "longDate": "d MMMM y", 71 | "medium": "d MMM y HH:mm:ss", 72 | "mediumDate": "d MMM y", 73 | "mediumTime": "HH:mm:ss", 74 | "short": "d.M.yy HH:mm", 75 | "shortDate": "d.M.yy", 76 | "shortTime": "HH:mm" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "Lek", 80 | "DECIMAL_SEP": ",", 81 | "GROUP_SEP": "\u00a0", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "-", 101 | "negSuf": "\u00a0\u00a4", 102 | "posPre": "", 103 | "posSuf": "\u00a0\u00a4" 104 | } 105 | ] 106 | }, 107 | "id": "sq", 108 | "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_tr-cy.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "\u00d6\u00d6", 8 | "\u00d6S" 9 | ], 10 | "DAY": [ 11 | "Pazar", 12 | "Pazartesi", 13 | "Sal\u0131", 14 | "\u00c7ar\u015famba", 15 | "Per\u015fembe", 16 | "Cuma", 17 | "Cumartesi" 18 | ], 19 | "ERANAMES": [ 20 | "Milattan \u00d6nce", 21 | "Milattan Sonra" 22 | ], 23 | "ERAS": [ 24 | "M\u00d6", 25 | "MS" 26 | ], 27 | "FIRSTDAYOFWEEK": 0, 28 | "MONTH": [ 29 | "Ocak", 30 | "\u015eubat", 31 | "Mart", 32 | "Nisan", 33 | "May\u0131s", 34 | "Haziran", 35 | "Temmuz", 36 | "A\u011fustos", 37 | "Eyl\u00fcl", 38 | "Ekim", 39 | "Kas\u0131m", 40 | "Aral\u0131k" 41 | ], 42 | "SHORTDAY": [ 43 | "Paz", 44 | "Pzt", 45 | "Sal", 46 | "\u00c7ar", 47 | "Per", 48 | "Cum", 49 | "Cmt" 50 | ], 51 | "SHORTMONTH": [ 52 | "Oca", 53 | "\u015eub", 54 | "Mar", 55 | "Nis", 56 | "May", 57 | "Haz", 58 | "Tem", 59 | "A\u011fu", 60 | "Eyl", 61 | "Eki", 62 | "Kas", 63 | "Ara" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "d MMMM y EEEE", 70 | "longDate": "d MMMM y", 71 | "medium": "d MMM y HH:mm:ss", 72 | "mediumDate": "d MMM y", 73 | "mediumTime": "HH:mm:ss", 74 | "short": "d MM y HH:mm", 75 | "shortDate": "d MM y", 76 | "shortTime": "HH:mm" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "\u20ac", 80 | "DECIMAL_SEP": ",", 81 | "GROUP_SEP": ".", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "-", 101 | "negSuf": "\u00a0\u00a4", 102 | "posPre": "", 103 | "posSuf": "\u00a0\u00a4" 104 | } 105 | ] 106 | }, 107 | "id": "tr-cy", 108 | "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_tr-tr.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "\u00d6\u00d6", 8 | "\u00d6S" 9 | ], 10 | "DAY": [ 11 | "Pazar", 12 | "Pazartesi", 13 | "Sal\u0131", 14 | "\u00c7ar\u015famba", 15 | "Per\u015fembe", 16 | "Cuma", 17 | "Cumartesi" 18 | ], 19 | "ERANAMES": [ 20 | "Milattan \u00d6nce", 21 | "Milattan Sonra" 22 | ], 23 | "ERAS": [ 24 | "M\u00d6", 25 | "MS" 26 | ], 27 | "FIRSTDAYOFWEEK": 0, 28 | "MONTH": [ 29 | "Ocak", 30 | "\u015eubat", 31 | "Mart", 32 | "Nisan", 33 | "May\u0131s", 34 | "Haziran", 35 | "Temmuz", 36 | "A\u011fustos", 37 | "Eyl\u00fcl", 38 | "Ekim", 39 | "Kas\u0131m", 40 | "Aral\u0131k" 41 | ], 42 | "SHORTDAY": [ 43 | "Paz", 44 | "Pzt", 45 | "Sal", 46 | "\u00c7ar", 47 | "Per", 48 | "Cum", 49 | "Cmt" 50 | ], 51 | "SHORTMONTH": [ 52 | "Oca", 53 | "\u015eub", 54 | "Mar", 55 | "Nis", 56 | "May", 57 | "Haz", 58 | "Tem", 59 | "A\u011fu", 60 | "Eyl", 61 | "Eki", 62 | "Kas", 63 | "Ara" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "d MMMM y EEEE", 70 | "longDate": "d MMMM y", 71 | "medium": "d MMM y HH:mm:ss", 72 | "mediumDate": "d MMM y", 73 | "mediumTime": "HH:mm:ss", 74 | "short": "d MM y HH:mm", 75 | "shortDate": "d MM y", 76 | "shortTime": "HH:mm" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "TL", 80 | "DECIMAL_SEP": ",", 81 | "GROUP_SEP": ".", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "-", 101 | "negSuf": "\u00a0\u00a4", 102 | "posPre": "", 103 | "posSuf": "\u00a0\u00a4" 104 | } 105 | ] 106 | }, 107 | "id": "tr-tr", 108 | "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_tr.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "\u00d6\u00d6", 8 | "\u00d6S" 9 | ], 10 | "DAY": [ 11 | "Pazar", 12 | "Pazartesi", 13 | "Sal\u0131", 14 | "\u00c7ar\u015famba", 15 | "Per\u015fembe", 16 | "Cuma", 17 | "Cumartesi" 18 | ], 19 | "ERANAMES": [ 20 | "Milattan \u00d6nce", 21 | "Milattan Sonra" 22 | ], 23 | "ERAS": [ 24 | "M\u00d6", 25 | "MS" 26 | ], 27 | "FIRSTDAYOFWEEK": 0, 28 | "MONTH": [ 29 | "Ocak", 30 | "\u015eubat", 31 | "Mart", 32 | "Nisan", 33 | "May\u0131s", 34 | "Haziran", 35 | "Temmuz", 36 | "A\u011fustos", 37 | "Eyl\u00fcl", 38 | "Ekim", 39 | "Kas\u0131m", 40 | "Aral\u0131k" 41 | ], 42 | "SHORTDAY": [ 43 | "Paz", 44 | "Pzt", 45 | "Sal", 46 | "\u00c7ar", 47 | "Per", 48 | "Cum", 49 | "Cmt" 50 | ], 51 | "SHORTMONTH": [ 52 | "Oca", 53 | "\u015eub", 54 | "Mar", 55 | "Nis", 56 | "May", 57 | "Haz", 58 | "Tem", 59 | "A\u011fu", 60 | "Eyl", 61 | "Eki", 62 | "Kas", 63 | "Ara" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "d MMMM y EEEE", 70 | "longDate": "d MMMM y", 71 | "medium": "d MMM y HH:mm:ss", 72 | "mediumDate": "d MMM y", 73 | "mediumTime": "HH:mm:ss", 74 | "short": "d MM y HH:mm", 75 | "shortDate": "d MM y", 76 | "shortTime": "HH:mm" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "TL", 80 | "DECIMAL_SEP": ",", 81 | "GROUP_SEP": ".", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "-", 101 | "negSuf": "\u00a0\u00a4", 102 | "posPre": "", 103 | "posSuf": "\u00a0\u00a4" 104 | } 105 | ] 106 | }, 107 | "id": "tr", 108 | "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_uz-latn-uz.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "TO", 8 | "TK" 9 | ], 10 | "DAY": [ 11 | "yakshanba", 12 | "dushanba", 13 | "seshanba", 14 | "chorshanba", 15 | "payshanba", 16 | "juma", 17 | "shanba" 18 | ], 19 | "ERANAMES": [ 20 | "M.A.", 21 | "E" 22 | ], 23 | "ERAS": [ 24 | "M.A.", 25 | "E" 26 | ], 27 | "FIRSTDAYOFWEEK": 0, 28 | "MONTH": [ 29 | "Yanvar", 30 | "Fevral", 31 | "Mart", 32 | "Aprel", 33 | "May", 34 | "Iyun", 35 | "Iyul", 36 | "Avgust", 37 | "Sentabr", 38 | "Oktabr", 39 | "Noyabr", 40 | "Dekabr" 41 | ], 42 | "SHORTDAY": [ 43 | "Yaksh", 44 | "Dush", 45 | "Sesh", 46 | "Chor", 47 | "Pay", 48 | "Jum", 49 | "Shan" 50 | ], 51 | "SHORTMONTH": [ 52 | "Yanv", 53 | "Fev", 54 | "Mar", 55 | "Apr", 56 | "May", 57 | "Iyun", 58 | "Iyul", 59 | "Avg", 60 | "Sen", 61 | "Okt", 62 | "Noya", 63 | "Dek" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "EEEE, y MMMM dd", 70 | "longDate": "y MMMM d", 71 | "medium": "y MMM d HH:mm:ss", 72 | "mediumDate": "y MMM d", 73 | "mediumTime": "HH:mm:ss", 74 | "short": "yy/MM/dd HH:mm", 75 | "shortDate": "yy/MM/dd", 76 | "shortTime": "HH:mm" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "so\u02bcm", 80 | "DECIMAL_SEP": ",", 81 | "GROUP_SEP": "\u00a0", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "\u00a4\u00a0-", 101 | "negSuf": "", 102 | "posPre": "\u00a4\u00a0", 103 | "posSuf": "" 104 | } 105 | ] 106 | }, 107 | "id": "uz-latn-uz", 108 | "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_uz-latn.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "TO", 8 | "TK" 9 | ], 10 | "DAY": [ 11 | "yakshanba", 12 | "dushanba", 13 | "seshanba", 14 | "chorshanba", 15 | "payshanba", 16 | "juma", 17 | "shanba" 18 | ], 19 | "ERANAMES": [ 20 | "M.A.", 21 | "E" 22 | ], 23 | "ERAS": [ 24 | "M.A.", 25 | "E" 26 | ], 27 | "FIRSTDAYOFWEEK": 0, 28 | "MONTH": [ 29 | "Yanvar", 30 | "Fevral", 31 | "Mart", 32 | "Aprel", 33 | "May", 34 | "Iyun", 35 | "Iyul", 36 | "Avgust", 37 | "Sentabr", 38 | "Oktabr", 39 | "Noyabr", 40 | "Dekabr" 41 | ], 42 | "SHORTDAY": [ 43 | "Yaksh", 44 | "Dush", 45 | "Sesh", 46 | "Chor", 47 | "Pay", 48 | "Jum", 49 | "Shan" 50 | ], 51 | "SHORTMONTH": [ 52 | "Yanv", 53 | "Fev", 54 | "Mar", 55 | "Apr", 56 | "May", 57 | "Iyun", 58 | "Iyul", 59 | "Avg", 60 | "Sen", 61 | "Okt", 62 | "Noya", 63 | "Dek" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "EEEE, y MMMM dd", 70 | "longDate": "y MMMM d", 71 | "medium": "y MMM d HH:mm:ss", 72 | "mediumDate": "y MMM d", 73 | "mediumTime": "HH:mm:ss", 74 | "short": "yy/MM/dd HH:mm", 75 | "shortDate": "yy/MM/dd", 76 | "shortTime": "HH:mm" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "\u20ac", 80 | "DECIMAL_SEP": ",", 81 | "GROUP_SEP": "\u00a0", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "\u00a4\u00a0-", 101 | "negSuf": "", 102 | "posPre": "\u00a4\u00a0", 103 | "posSuf": "" 104 | } 105 | ] 106 | }, 107 | "id": "uz-latn", 108 | "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_uz.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "TO", 8 | "TK" 9 | ], 10 | "DAY": [ 11 | "yakshanba", 12 | "dushanba", 13 | "seshanba", 14 | "chorshanba", 15 | "payshanba", 16 | "juma", 17 | "shanba" 18 | ], 19 | "ERANAMES": [ 20 | "M.A.", 21 | "E" 22 | ], 23 | "ERAS": [ 24 | "M.A.", 25 | "E" 26 | ], 27 | "FIRSTDAYOFWEEK": 0, 28 | "MONTH": [ 29 | "Yanvar", 30 | "Fevral", 31 | "Mart", 32 | "Aprel", 33 | "May", 34 | "Iyun", 35 | "Iyul", 36 | "Avgust", 37 | "Sentabr", 38 | "Oktabr", 39 | "Noyabr", 40 | "Dekabr" 41 | ], 42 | "SHORTDAY": [ 43 | "Yaksh", 44 | "Dush", 45 | "Sesh", 46 | "Chor", 47 | "Pay", 48 | "Jum", 49 | "Shan" 50 | ], 51 | "SHORTMONTH": [ 52 | "Yanv", 53 | "Fev", 54 | "Mar", 55 | "Apr", 56 | "May", 57 | "Iyun", 58 | "Iyul", 59 | "Avg", 60 | "Sen", 61 | "Okt", 62 | "Noya", 63 | "Dek" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "EEEE, y MMMM dd", 70 | "longDate": "y MMMM d", 71 | "medium": "y MMM d HH:mm:ss", 72 | "mediumDate": "y MMM d", 73 | "mediumTime": "HH:mm:ss", 74 | "short": "yy/MM/dd HH:mm", 75 | "shortDate": "yy/MM/dd", 76 | "shortTime": "HH:mm" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "so\u02bcm", 80 | "DECIMAL_SEP": ",", 81 | "GROUP_SEP": "\u00a0", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "\u00a4\u00a0-", 101 | "negSuf": "", 102 | "posPre": "\u00a4\u00a0", 103 | "posSuf": "" 104 | } 105 | ] 106 | }, 107 | "id": "uz", 108 | "pluralCat": function(n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_zu-za.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "Ekuseni", 8 | "Ntambama" 9 | ], 10 | "DAY": [ 11 | "Sonto", 12 | "Msombuluko", 13 | "Lwesibili", 14 | "Lwesithathu", 15 | "Lwesine", 16 | "Lwesihlanu", 17 | "Mgqibelo" 18 | ], 19 | "ERANAMES": [ 20 | "BC", 21 | "AD" 22 | ], 23 | "ERAS": [ 24 | "BC", 25 | "AD" 26 | ], 27 | "FIRSTDAYOFWEEK": 6, 28 | "MONTH": [ 29 | "Januwari", 30 | "Februwari", 31 | "Mashi", 32 | "Apreli", 33 | "Meyi", 34 | "Juni", 35 | "Julayi", 36 | "Agasti", 37 | "Septhemba", 38 | "Okthoba", 39 | "Novemba", 40 | "Disemba" 41 | ], 42 | "SHORTDAY": [ 43 | "Son", 44 | "Mso", 45 | "Bil", 46 | "Tha", 47 | "Sin", 48 | "Hla", 49 | "Mgq" 50 | ], 51 | "SHORTMONTH": [ 52 | "Jan", 53 | "Feb", 54 | "Mas", 55 | "Apr", 56 | "Mey", 57 | "Jun", 58 | "Jul", 59 | "Aga", 60 | "Sep", 61 | "Okt", 62 | "Nov", 63 | "Dis" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "EEEE, MMMM d, y", 70 | "longDate": "MMMM d, y", 71 | "medium": "MMM d, y h:mm:ss a", 72 | "mediumDate": "MMM d, y", 73 | "mediumTime": "h:mm:ss a", 74 | "short": "M/d/yy h:mm a", 75 | "shortDate": "M/d/yy", 76 | "shortTime": "h:mm a" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "R", 80 | "DECIMAL_SEP": ".", 81 | "GROUP_SEP": ",", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "\u00a4-", 101 | "negSuf": "", 102 | "posPre": "\u00a4", 103 | "posSuf": "" 104 | } 105 | ] 106 | }, 107 | "id": "zu-za", 108 | "pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/i18n/angular-locale_zu.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | angular.module("ngLocale", [], ["$provide", function($provide) { 3 | var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; 4 | $provide.value("$locale", { 5 | "DATETIME_FORMATS": { 6 | "AMPMS": [ 7 | "Ekuseni", 8 | "Ntambama" 9 | ], 10 | "DAY": [ 11 | "Sonto", 12 | "Msombuluko", 13 | "Lwesibili", 14 | "Lwesithathu", 15 | "Lwesine", 16 | "Lwesihlanu", 17 | "Mgqibelo" 18 | ], 19 | "ERANAMES": [ 20 | "BC", 21 | "AD" 22 | ], 23 | "ERAS": [ 24 | "BC", 25 | "AD" 26 | ], 27 | "FIRSTDAYOFWEEK": 6, 28 | "MONTH": [ 29 | "Januwari", 30 | "Februwari", 31 | "Mashi", 32 | "Apreli", 33 | "Meyi", 34 | "Juni", 35 | "Julayi", 36 | "Agasti", 37 | "Septhemba", 38 | "Okthoba", 39 | "Novemba", 40 | "Disemba" 41 | ], 42 | "SHORTDAY": [ 43 | "Son", 44 | "Mso", 45 | "Bil", 46 | "Tha", 47 | "Sin", 48 | "Hla", 49 | "Mgq" 50 | ], 51 | "SHORTMONTH": [ 52 | "Jan", 53 | "Feb", 54 | "Mas", 55 | "Apr", 56 | "Mey", 57 | "Jun", 58 | "Jul", 59 | "Aga", 60 | "Sep", 61 | "Okt", 62 | "Nov", 63 | "Dis" 64 | ], 65 | "WEEKENDRANGE": [ 66 | 5, 67 | 6 68 | ], 69 | "fullDate": "EEEE, MMMM d, y", 70 | "longDate": "MMMM d, y", 71 | "medium": "MMM d, y h:mm:ss a", 72 | "mediumDate": "MMM d, y", 73 | "mediumTime": "h:mm:ss a", 74 | "short": "M/d/yy h:mm a", 75 | "shortDate": "M/d/yy", 76 | "shortTime": "h:mm a" 77 | }, 78 | "NUMBER_FORMATS": { 79 | "CURRENCY_SYM": "R", 80 | "DECIMAL_SEP": ".", 81 | "GROUP_SEP": ",", 82 | "PATTERNS": [ 83 | { 84 | "gSize": 3, 85 | "lgSize": 3, 86 | "maxFrac": 3, 87 | "minFrac": 0, 88 | "minInt": 1, 89 | "negPre": "-", 90 | "negSuf": "", 91 | "posPre": "", 92 | "posSuf": "" 93 | }, 94 | { 95 | "gSize": 3, 96 | "lgSize": 3, 97 | "maxFrac": 2, 98 | "minFrac": 2, 99 | "minInt": 1, 100 | "negPre": "\u00a4-", 101 | "negSuf": "", 102 | "posPre": "\u00a4", 103 | "posSuf": "" 104 | } 105 | ] 106 | }, 107 | "id": "zu", 108 | "pluralCat": function(n, opt_precision) { var i = n | 0; if (i == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} 109 | }); 110 | }]); 111 | -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/version.json: -------------------------------------------------------------------------------- 1 | {"raw":"v1.4.0","major":1,"minor":4,"patch":0,"prerelease":[],"build":[],"version":"1.4.0","codeName":"jaracimrman-existence","full":"1.4.0","branch":"v1.4.x","cdn":{"raw":"v1.4.0-rc.2","major":1,"minor":4,"patch":0,"prerelease":["rc",2],"build":[],"version":"1.4.0-rc.2","docsUrl":"http://code.angularjs.org/1.4.0-rc.2/docs"}} -------------------------------------------------------------------------------- /frontend/lib/angular-1.4.0/version.txt: -------------------------------------------------------------------------------- 1 | 1.4.0 -------------------------------------------------------------------------------- /frontend/lib/angular-material-0.9.8/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angular-material", 3 | "version": "0.9.8", 4 | "ignore": [], 5 | "dependencies": { 6 | "angular": "^1.3.0 || >1.4.0-beta.0", 7 | "angular-animate": "^1.3.0 || >1.4.0-beta.0", 8 | "angular-aria": "^1.3.15 || >1.4.0-beta.0" 9 | }, 10 | "main": [ 11 | "angular-material.js", 12 | "angular-material.css" 13 | ], 14 | "homepage": "https://github.com/angular/bower-material", 15 | "_release": "0.9.8", 16 | "_resolution": { 17 | "type": "version", 18 | "tag": "v0.9.8", 19 | "commit": "5f7de8ced18d4663d7a90caecf620fc1f8a66568" 20 | }, 21 | "_source": "git://github.com/angular/bower-material.git", 22 | "_target": "~0.9.8", 23 | "_originalSource": "angular-material", 24 | "_direct": true 25 | } -------------------------------------------------------------------------------- /frontend/lib/angular-material-0.9.8/.gitignore: -------------------------------------------------------------------------------- 1 | *.log 2 | *.sw* 3 | .DS_STORE 4 | /.idea/ 5 | default-theme.css 6 | -------------------------------------------------------------------------------- /frontend/lib/angular-material-0.9.8/angular-material-mocks.js: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Angular-Material-Mocks 4 | * 5 | * Developers interested in running their own custom unit tests WITH angular-material.js loaded... 6 | * must also include this *mocks* file. Similar to `angular-mocks.js`, `angular-material-mocks.js` 7 | * will override and disable specific Angular Material performance settings: 8 | * 9 | * - Disabled Theme CSS rule generations 10 | * - Forces $mdAria.expectWithText() to be synchronous 11 | * - Mocks $$rAF.throttle() 12 | * - Captures flush exceptions from $$rAF 13 | * 14 | */ 15 | (function(window, angular, undefined) { 16 | 17 | 'use strict'; 18 | 19 | /** 20 | * @ngdoc module 21 | * @name ngMaterial-mock 22 | * @packageName angular-material-mocks 23 | * 24 | * @description 25 | * 26 | * The `ngMaterial-mock` module provides support 27 | * 28 | */ 29 | angular.module('ngMaterial-mock', ['ngMock', 'material.core']) 30 | .config(['$provide', function($provide) { 31 | 32 | /** 33 | * Angular Material dynamically generates Style tags 34 | * based on themes and palletes; for each ng-app. 35 | * 36 | * For testing, we want to disable generation and 37 | *