├── .gitignore ├── AzureCards.ConsoleClient ├── App.config ├── AzureCards.ConsoleClient.csproj ├── AzureCards │ ├── AzureCardsClient.cs │ ├── AzureCardsClientAppServiceExtensions.cs │ ├── AzureCardsClientExtensions.cs │ ├── Deck.cs │ ├── DeckExtensions.cs │ ├── IAzureCardsClient.cs │ ├── IDeck.cs │ └── Models │ │ ├── Card.cs │ │ └── DealResponseMessage.cs ├── Program.cs ├── Properties │ └── AssemblyInfo.cs └── packages.config ├── AzureCards.DesktopClient ├── App.config ├── AzureCards.DesktopClient.csproj ├── AzureCards │ ├── AzureCardsClient.cs │ ├── AzureCardsClientAppServiceExtensions.cs │ ├── AzureCardsClientExtensions.cs │ ├── Deck.cs │ ├── DeckExtensions.cs │ ├── IAzureCardsClient.cs │ ├── IDeck.cs │ └── Models │ │ ├── Card.cs │ │ └── DealResponseMessage.cs ├── Form1.Designer.cs ├── Form1.cs ├── Form1.resx ├── Program.cs ├── Properties │ ├── AssemblyInfo.cs │ ├── Resources.Designer.cs │ ├── Resources.resx │ ├── Settings.Designer.cs │ └── Settings.settings └── packages.config ├── AzureCards.WebApp ├── AzureCards.WebApp.csproj ├── Content │ ├── bootstrap-theme.css │ ├── bootstrap-theme.css.map │ ├── bootstrap-theme.min.css │ ├── bootstrap.css │ ├── bootstrap.css.map │ ├── bootstrap.min.css │ └── img │ │ ├── ace_of_clubs.png │ │ ├── ace_of_diamonds.png │ │ ├── ace_of_hearts.png │ │ ├── ace_of_spades.png │ │ ├── eight_of_clubs.png │ │ ├── eight_of_diamonds.png │ │ ├── eight_of_hearts.png │ │ ├── eight_of_spades.png │ │ ├── five_of_clubs.png │ │ ├── five_of_diamonds.png │ │ ├── five_of_hearts.png │ │ ├── five_of_spades.png │ │ ├── four_of_clubs.png │ │ ├── four_of_diamonds.png │ │ ├── four_of_hearts.png │ │ ├── four_of_spades.png │ │ ├── jack_of_clubs.png │ │ ├── jack_of_diamonds.png │ │ ├── jack_of_hearts.png │ │ ├── jack_of_spades.png │ │ ├── king_of_clubs.png │ │ ├── king_of_diamonds.png │ │ ├── king_of_hearts.png │ │ ├── king_of_spades.png │ │ ├── nine_of_clubs.png │ │ ├── nine_of_diamonds.png │ │ ├── nine_of_hearts.png │ │ ├── nine_of_spades.png │ │ ├── queen_of_clubs.png │ │ ├── queen_of_diamonds.png │ │ ├── queen_of_hearts.png │ │ ├── queen_of_spades.png │ │ ├── seven_of_clubs.png │ │ ├── seven_of_diamonds.png │ │ ├── seven_of_hearts.png │ │ ├── seven_of_spades.png │ │ ├── six_of_clubs.png │ │ ├── six_of_diamonds.png │ │ ├── six_of_hearts.png │ │ ├── six_of_spades.png │ │ ├── ten_of_clubs.png │ │ ├── ten_of_diamonds.png │ │ ├── ten_of_hearts.png │ │ ├── ten_of_spades.png │ │ ├── three_of_clubs.png │ │ ├── three_of_diamonds.png │ │ ├── three_of_hearts.png │ │ ├── three_of_spades.png │ │ ├── two_of_clubs.png │ │ ├── two_of_diamonds.png │ │ ├── two_of_hearts.png │ │ └── two_of_spades.png ├── Icon.png ├── Properties │ └── AssemblyInfo.cs ├── Scripts │ ├── 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-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 │ ├── bootstrap.js │ ├── bootstrap.min.js │ ├── 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 │ ├── jquery-1.9.1.intellisense.js │ ├── jquery-1.9.1.js │ ├── jquery-1.9.1.min.js │ ├── jquery-1.9.1.min.map │ ├── npm.js │ └── version.json ├── Web.Debug.config ├── Web.Release.config ├── Web.config ├── fonts │ ├── glyphicons-halflings-regular.eot │ ├── glyphicons-halflings-regular.svg │ ├── glyphicons-halflings-regular.ttf │ ├── glyphicons-halflings-regular.woff │ └── glyphicons-halflings-regular.woff2 ├── index.html └── packages.config ├── AzureCards.WindowsStoreApp ├── App.xaml ├── App.xaml.cs ├── Assets │ ├── SmallLogo.scale-100.png │ ├── SplashScreen.scale-100.png │ ├── StoreLogo.scale-100.png │ ├── ace_of_clubs.png │ ├── ace_of_diamonds.png │ ├── ace_of_hearts.png │ ├── ace_of_spades.png │ ├── eight_of_clubs.png │ ├── eight_of_diamonds.png │ ├── eight_of_hearts.png │ ├── eight_of_spades.png │ ├── five_of_clubs.png │ ├── five_of_diamonds.png │ ├── five_of_hearts.png │ ├── five_of_spades.png │ ├── four_of_clubs.png │ ├── four_of_diamonds.png │ ├── four_of_hearts.png │ ├── four_of_spades.png │ ├── jack_of_clubs.png │ ├── jack_of_diamonds.png │ ├── jack_of_hearts.png │ ├── jack_of_spades.png │ ├── king_of_clubs.png │ ├── king_of_diamonds.png │ ├── king_of_hearts.png │ ├── king_of_spades.png │ ├── nine_of_clubs.png │ ├── nine_of_diamonds.png │ ├── nine_of_hearts.png │ ├── nine_of_spades.png │ ├── queen_of_clubs.png │ ├── queen_of_diamonds.png │ ├── queen_of_hearts.png │ ├── queen_of_spades.png │ ├── seven_of_clubs.png │ ├── seven_of_diamonds.png │ ├── seven_of_hearts.png │ ├── seven_of_spades.png │ ├── six_of_clubs.png │ ├── six_of_diamonds.png │ ├── six_of_hearts.png │ ├── six_of_spades.png │ ├── ten_of_clubs.png │ ├── ten_of_diamonds.png │ ├── ten_of_hearts.png │ ├── ten_of_spades.png │ ├── three_of_clubs.png │ ├── three_of_diamonds.png │ ├── three_of_hearts.png │ ├── three_of_spades.png │ ├── two_of_clubs.png │ ├── two_of_diamonds.png │ ├── two_of_hearts.png │ └── two_of_spades.png ├── AzureCards.WindowsStoreApp.csproj ├── AzureCards │ ├── AzureCardsClient.cs │ ├── AzureCardsClientAppServiceExtensions.cs │ ├── AzureCardsClientExtensions.cs │ ├── Deck.cs │ ├── DeckExtensions.cs │ ├── IAzureCardsClient.cs │ ├── IDeck.cs │ └── Models │ │ ├── Card.cs │ │ └── DealResponseMessage.cs ├── CardDatabinderConverter.cs ├── MainPage.xaml ├── MainPage.xaml.cs ├── Package.appxmanifest ├── Properties │ └── AssemblyInfo.cs ├── TokenExpiredHandler.cs ├── ViewModels.cs └── packages.config ├── AzureCards.sln ├── AzureCards ├── App_Start │ ├── DeckIsolatedStorage.cs │ ├── SwaggerConfig.cs │ └── WebApiConfig.cs ├── AzureCards.csproj ├── Content │ ├── bootstrap-theme.css │ ├── bootstrap-theme.css.map │ ├── bootstrap-theme.min.css │ ├── bootstrap.css │ ├── bootstrap.css.map │ ├── bootstrap.min.css │ └── img │ │ ├── ace_of_clubs.png │ │ ├── ace_of_diamonds.png │ │ ├── ace_of_hearts.png │ │ ├── ace_of_spades.png │ │ ├── eight_of_clubs.png │ │ ├── eight_of_diamonds.png │ │ ├── eight_of_hearts.png │ │ ├── eight_of_spades.png │ │ ├── five_of_clubs.png │ │ ├── five_of_diamonds.png │ │ ├── five_of_hearts.png │ │ ├── five_of_spades.png │ │ ├── four_of_clubs.png │ │ ├── four_of_diamonds.png │ │ ├── four_of_hearts.png │ │ ├── four_of_spades.png │ │ ├── jack_of_clubs.png │ │ ├── jack_of_diamonds.png │ │ ├── jack_of_hearts.png │ │ ├── jack_of_spades.png │ │ ├── king_of_clubs.png │ │ ├── king_of_diamonds.png │ │ ├── king_of_hearts.png │ │ ├── king_of_spades.png │ │ ├── nine_of_clubs.png │ │ ├── nine_of_diamonds.png │ │ ├── nine_of_hearts.png │ │ ├── nine_of_spades.png │ │ ├── queen_of_clubs.png │ │ ├── queen_of_diamonds.png │ │ ├── queen_of_hearts.png │ │ ├── queen_of_spades.png │ │ ├── seven_of_clubs.png │ │ ├── seven_of_diamonds.png │ │ ├── seven_of_hearts.png │ │ ├── seven_of_spades.png │ │ ├── six_of_clubs.png │ │ ├── six_of_diamonds.png │ │ ├── six_of_hearts.png │ │ ├── six_of_spades.png │ │ ├── ten_of_clubs.png │ │ ├── ten_of_diamonds.png │ │ ├── ten_of_hearts.png │ │ ├── ten_of_spades.png │ │ ├── three_of_clubs.png │ │ ├── three_of_diamonds.png │ │ ├── three_of_hearts.png │ │ ├── three_of_spades.png │ │ ├── two_of_clubs.png │ │ ├── two_of_diamonds.png │ │ ├── two_of_hearts.png │ │ └── two_of_spades.png ├── Controllers │ └── DeckController.cs ├── Global.asax ├── Global.asax.cs ├── Icon.png ├── Metadata │ └── deploymentTemplates │ │ └── apiappconfig.azureresource.json ├── Models │ ├── Card.cs │ ├── Deck.cs │ ├── Face.cs │ ├── ResponseModels.cs │ └── Suit.cs ├── Project_Readme.html ├── Properties │ └── AssemblyInfo.cs ├── Scripts │ ├── 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-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 │ ├── bootstrap.js │ ├── bootstrap.min.js │ ├── 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 │ ├── jquery-1.9.1.intellisense.js │ ├── jquery-1.9.1.js │ ├── jquery-1.9.1.min.js │ ├── jquery-1.9.1.min.map │ ├── npm.js │ └── version.json ├── Web.Debug.config ├── Web.Release.config ├── Web.config ├── apiapp.json ├── fonts │ ├── glyphicons-halflings-regular.eot │ ├── glyphicons-halflings-regular.svg │ ├── glyphicons-halflings-regular.ttf │ ├── glyphicons-halflings-regular.woff │ └── glyphicons-halflings-regular.woff2 ├── index.html └── packages.config ├── CONTRIBUTING.md ├── LICENSE ├── README.md └── Snippets ├── 01-controller-new-deck.snippet ├── 02-controller-shuffle-deck.snippet ├── 03-controller-deal-deck.snippet ├── 04-setup-windows-store.snippet ├── 05-authenticate.snippet ├── 06-refresh-card-display.snippet └── 07-on-navigated-to.snippet /AzureCards.ConsoleClient/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /AzureCards.ConsoleClient/AzureCards/AzureCardsClientAppServiceExtensions.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Net.Http; 3 | using Microsoft.Azure.AppService; 4 | 5 | namespace AzureCards.ConsoleClient 6 | { 7 | public static class AzureCardsClientAppServiceExtensions 8 | { 9 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client) 10 | { 11 | return new AzureCardsClient(client.CreateHandler()); 12 | } 13 | 14 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client, params DelegatingHandler[] handlers) 15 | { 16 | return new AzureCardsClient(client.CreateHandler(handlers)); 17 | } 18 | 19 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client, Uri uri, params DelegatingHandler[] handlers) 20 | { 21 | return new AzureCardsClient(uri, client.CreateHandler(handlers)); 22 | } 23 | 24 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client, HttpClientHandler rootHandler, params DelegatingHandler[] handlers) 25 | { 26 | return new AzureCardsClient(rootHandler, client.CreateHandler(handlers)); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /AzureCards.ConsoleClient/AzureCards/AzureCardsClientExtensions.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | 7 | namespace AzureCards.ConsoleClient 8 | { 9 | public static partial class AzureCardsClientExtensions 10 | { 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /AzureCards.ConsoleClient/AzureCards/IAzureCardsClient.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | using AzureCards.ConsoleClient; 7 | using Microsoft.Rest; 8 | 9 | namespace AzureCards.ConsoleClient 10 | { 11 | public partial interface IAzureCardsClient : IDisposable 12 | { 13 | /// 14 | /// The base URI of the service. 15 | /// 16 | Uri BaseUri 17 | { 18 | get; set; 19 | } 20 | 21 | /// 22 | /// Credentials for authenticating with the service. 23 | /// 24 | ServiceClientCredentials Credentials 25 | { 26 | get; set; 27 | } 28 | 29 | IDeck Deck 30 | { 31 | get; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /AzureCards.ConsoleClient/AzureCards/IDeck.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | using System.Threading; 7 | using System.Threading.Tasks; 8 | using AzureCards.ConsoleClient.Models; 9 | using Microsoft.Rest; 10 | 11 | namespace AzureCards.ConsoleClient 12 | { 13 | public partial interface IDeck 14 | { 15 | /// 16 | /// Required. 17 | /// 18 | /// 19 | /// Required. 20 | /// 21 | /// 22 | /// Cancellation token. 23 | /// 24 | Task> DealWithOperationResponseAsync(string deckId, int cardCount, CancellationToken cancellationToken = default(System.Threading.CancellationToken)); 25 | 26 | /// 27 | /// Cancellation token. 28 | /// 29 | Task> NewWithOperationResponseAsync(CancellationToken cancellationToken = default(System.Threading.CancellationToken)); 30 | 31 | /// 32 | /// Required. 33 | /// 34 | /// 35 | /// Cancellation token. 36 | /// 37 | Task> ShuffleWithOperationResponseAsync(string deckId, CancellationToken cancellationToken = default(System.Threading.CancellationToken)); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /AzureCards.ConsoleClient/AzureCards/Models/Card.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace AzureCards.ConsoleClient.Models 9 | { 10 | public partial class Card 11 | { 12 | private string _face; 13 | 14 | /// 15 | /// Optional. 16 | /// 17 | public string Face 18 | { 19 | get { return this._face; } 20 | set { this._face = value; } 21 | } 22 | 23 | private string _suit; 24 | 25 | /// 26 | /// Optional. 27 | /// 28 | public string Suit 29 | { 30 | get { return this._suit; } 31 | set { this._suit = value; } 32 | } 33 | 34 | /// 35 | /// Initializes a new instance of the Card class. 36 | /// 37 | public Card() 38 | { 39 | } 40 | 41 | /// 42 | /// Deserialize the object 43 | /// 44 | public virtual void DeserializeJson(JToken inputObject) 45 | { 46 | if (inputObject != null && inputObject.Type != JTokenType.Null) 47 | { 48 | JToken faceValue = inputObject["Face"]; 49 | if (faceValue != null && faceValue.Type != JTokenType.Null) 50 | { 51 | this.Face = ((string)faceValue); 52 | } 53 | JToken suitValue = inputObject["Suit"]; 54 | if (suitValue != null && suitValue.Type != JTokenType.Null) 55 | { 56 | this.Suit = ((string)suitValue); 57 | } 58 | } 59 | } 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /AzureCards.ConsoleClient/AzureCards/Models/DealResponseMessage.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using AzureCards.ConsoleClient.Models; 8 | using Microsoft.Rest; 9 | using Newtonsoft.Json.Linq; 10 | 11 | namespace AzureCards.ConsoleClient.Models 12 | { 13 | public partial class DealResponseMessage 14 | { 15 | private IList _cards; 16 | 17 | /// 18 | /// Optional. 19 | /// 20 | public IList Cards 21 | { 22 | get { return this._cards; } 23 | set { this._cards = value; } 24 | } 25 | 26 | /// 27 | /// Initializes a new instance of the DealResponseMessage class. 28 | /// 29 | public DealResponseMessage() 30 | { 31 | this.Cards = new LazyList(); 32 | } 33 | 34 | /// 35 | /// Deserialize the object 36 | /// 37 | public virtual void DeserializeJson(JToken inputObject) 38 | { 39 | if (inputObject != null && inputObject.Type != JTokenType.Null) 40 | { 41 | JToken cardsSequence = ((JToken)inputObject["Cards"]); 42 | if (cardsSequence != null && cardsSequence.Type != JTokenType.Null) 43 | { 44 | foreach (JToken cardsValue in ((JArray)cardsSequence)) 45 | { 46 | Card card = new Card(); 47 | card.DeserializeJson(cardsValue); 48 | this.Cards.Add(card); 49 | } 50 | } 51 | } 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /AzureCards.ConsoleClient/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("AzureCards.ConsoleClient")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("AzureCards.ConsoleClient")] 13 | [assembly: AssemblyCopyright("Copyright © 2015")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("c86ff9a9-6b3f-4b69-9fca-e28eb0d1ec67")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /AzureCards.ConsoleClient/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/AzureCards/AzureCardsClientAppServiceExtensions.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Net.Http; 3 | using Microsoft.Azure.AppService; 4 | 5 | namespace AzureCards.DesktopClient 6 | { 7 | public static class AzureCardsClientAppServiceExtensions 8 | { 9 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client) 10 | { 11 | return new AzureCardsClient(client.CreateHandler()); 12 | } 13 | 14 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client, params DelegatingHandler[] handlers) 15 | { 16 | return new AzureCardsClient(client.CreateHandler(handlers)); 17 | } 18 | 19 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client, Uri uri, params DelegatingHandler[] handlers) 20 | { 21 | return new AzureCardsClient(uri, client.CreateHandler(handlers)); 22 | } 23 | 24 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client, HttpClientHandler rootHandler, params DelegatingHandler[] handlers) 25 | { 26 | return new AzureCardsClient(rootHandler, client.CreateHandler(handlers)); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/AzureCards/AzureCardsClientExtensions.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | 7 | namespace AzureCards.DesktopClient 8 | { 9 | public static partial class AzureCardsClientExtensions 10 | { 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/AzureCards/IAzureCardsClient.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | using AzureCards.DesktopClient; 7 | using Microsoft.Rest; 8 | 9 | namespace AzureCards.DesktopClient 10 | { 11 | public partial interface IAzureCardsClient : IDisposable 12 | { 13 | /// 14 | /// The base URI of the service. 15 | /// 16 | Uri BaseUri 17 | { 18 | get; set; 19 | } 20 | 21 | /// 22 | /// Credentials for authenticating with the service. 23 | /// 24 | ServiceClientCredentials Credentials 25 | { 26 | get; set; 27 | } 28 | 29 | IDeck Deck 30 | { 31 | get; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/AzureCards/IDeck.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | using System.Threading; 7 | using System.Threading.Tasks; 8 | using AzureCards.DesktopClient.Models; 9 | using Microsoft.Rest; 10 | 11 | namespace AzureCards.DesktopClient 12 | { 13 | public partial interface IDeck 14 | { 15 | /// 16 | /// Required. 17 | /// 18 | /// 19 | /// Required. 20 | /// 21 | /// 22 | /// Cancellation token. 23 | /// 24 | Task> DealWithOperationResponseAsync(string deckId, int cardCount, CancellationToken cancellationToken = default(System.Threading.CancellationToken)); 25 | 26 | /// 27 | /// Cancellation token. 28 | /// 29 | Task> NewWithOperationResponseAsync(CancellationToken cancellationToken = default(System.Threading.CancellationToken)); 30 | 31 | /// 32 | /// Required. 33 | /// 34 | /// 35 | /// Cancellation token. 36 | /// 37 | Task> ShuffleWithOperationResponseAsync(string deckId, CancellationToken cancellationToken = default(System.Threading.CancellationToken)); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/AzureCards/Models/Card.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace AzureCards.DesktopClient.Models 9 | { 10 | public partial class Card 11 | { 12 | private string _face; 13 | 14 | /// 15 | /// Optional. 16 | /// 17 | public string Face 18 | { 19 | get { return this._face; } 20 | set { this._face = value; } 21 | } 22 | 23 | private string _suit; 24 | 25 | /// 26 | /// Optional. 27 | /// 28 | public string Suit 29 | { 30 | get { return this._suit; } 31 | set { this._suit = value; } 32 | } 33 | 34 | /// 35 | /// Initializes a new instance of the Card class. 36 | /// 37 | public Card() 38 | { 39 | } 40 | 41 | /// 42 | /// Deserialize the object 43 | /// 44 | public virtual void DeserializeJson(JToken inputObject) 45 | { 46 | if (inputObject != null && inputObject.Type != JTokenType.Null) 47 | { 48 | JToken faceValue = inputObject["Face"]; 49 | if (faceValue != null && faceValue.Type != JTokenType.Null) 50 | { 51 | this.Face = ((string)faceValue); 52 | } 53 | JToken suitValue = inputObject["Suit"]; 54 | if (suitValue != null && suitValue.Type != JTokenType.Null) 55 | { 56 | this.Suit = ((string)suitValue); 57 | } 58 | } 59 | } 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/AzureCards/Models/DealResponseMessage.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using AzureCards.DesktopClient.Models; 8 | using Microsoft.Rest; 9 | using Newtonsoft.Json.Linq; 10 | 11 | namespace AzureCards.DesktopClient.Models 12 | { 13 | public partial class DealResponseMessage 14 | { 15 | private IList _cards; 16 | 17 | /// 18 | /// Optional. 19 | /// 20 | public IList Cards 21 | { 22 | get { return this._cards; } 23 | set { this._cards = value; } 24 | } 25 | 26 | /// 27 | /// Initializes a new instance of the DealResponseMessage class. 28 | /// 29 | public DealResponseMessage() 30 | { 31 | this.Cards = new LazyList(); 32 | } 33 | 34 | /// 35 | /// Deserialize the object 36 | /// 37 | public virtual void DeserializeJson(JToken inputObject) 38 | { 39 | if (inputObject != null && inputObject.Type != JTokenType.Null) 40 | { 41 | JToken cardsSequence = ((JToken)inputObject["Cards"]); 42 | if (cardsSequence != null && cardsSequence.Type != JTokenType.Null) 43 | { 44 | foreach (JToken cardsValue in ((JArray)cardsSequence)) 45 | { 46 | Card card = new Card(); 47 | card.DeserializeJson(cardsValue); 48 | this.Cards.Add(card); 49 | } 50 | } 51 | } 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/Form1.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Azure.AppService; 2 | using Newtonsoft.Json; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.ComponentModel; 6 | using System.Data; 7 | using System.Drawing; 8 | using System.Linq; 9 | using System.Text; 10 | using System.Threading.Tasks; 11 | using System.Windows.Forms; 12 | 13 | namespace AzureCards.DesktopClient 14 | { 15 | public partial class Form1 : Form 16 | { 17 | private const string GW_URL = "YOUR GATEWAY URL"; 18 | private const string URL_TOKEN = "#token="; 19 | 20 | public Form1() 21 | { 22 | InitializeComponent(); 23 | } 24 | 25 | protected override void OnLoad(EventArgs e) 26 | { 27 | base.OnLoad(e); 28 | _deckIdLabel.Visible = false; 29 | webBrowser1.Navigate(string.Format(@"{0}login/twitter", GW_URL)); 30 | } 31 | 32 | private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 33 | { 34 | if (e.Url.AbsoluteUri.IndexOf(URL_TOKEN) > -1) 35 | { 36 | var encodedJson = e.Url.AbsoluteUri.Substring(e.Url.AbsoluteUri.IndexOf(URL_TOKEN) + URL_TOKEN.Length); 37 | var decodedJson = Uri.UnescapeDataString(encodedJson); 38 | var result = JsonConvert.DeserializeObject(decodedJson); 39 | string userId = result.user.userId; 40 | string userToken = result.authenticationToken; 41 | 42 | var appServiceClient = new AppServiceClient(GW_URL); 43 | appServiceClient.SetCurrentUser(userId, userToken); 44 | 45 | var deckClient = appServiceClient.CreateAzureCardsClient(); 46 | var deckId = deckClient.Deck.New(); 47 | 48 | webBrowser1.Visible = false; 49 | _deckIdLabel.Text = string.Format("Your new Deck ID is {0}", deckId); 50 | _deckIdLabel.Visible = true; 51 | } 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using System.Windows.Forms; 6 | 7 | namespace AzureCards.DesktopClient 8 | { 9 | static class Program 10 | { 11 | /// 12 | /// The main entry point for the application. 13 | /// 14 | [STAThread] 15 | static void Main() 16 | { 17 | Application.EnableVisualStyles(); 18 | Application.SetCompatibleTextRenderingDefault(false); 19 | Application.Run(new Form1()); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("AzureCards.DesktopClient")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("AzureCards.DesktopClient")] 13 | [assembly: AssemblyCopyright("Copyright © 2015")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("23e15d1d-8658-4b97-9157-f4e71028664f")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.0 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace AzureCards.DesktopClient.Properties 12 | { 13 | 14 | 15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] 17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase 18 | { 19 | 20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 21 | 22 | public static Settings Default 23 | { 24 | get 25 | { 26 | return defaultInstance; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /AzureCards.DesktopClient/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/ace_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/ace_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/ace_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/ace_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/ace_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/ace_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/ace_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/ace_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/eight_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/eight_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/eight_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/eight_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/eight_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/eight_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/eight_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/eight_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/five_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/five_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/five_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/five_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/five_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/five_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/five_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/five_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/four_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/four_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/four_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/four_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/four_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/four_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/four_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/four_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/jack_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/jack_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/jack_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/jack_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/jack_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/jack_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/jack_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/jack_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/king_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/king_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/king_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/king_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/king_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/king_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/king_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/king_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/nine_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/nine_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/nine_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/nine_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/nine_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/nine_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/nine_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/nine_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/queen_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/queen_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/queen_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/queen_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/queen_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/queen_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/queen_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/queen_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/seven_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/seven_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/seven_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/seven_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/seven_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/seven_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/seven_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/seven_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/six_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/six_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/six_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/six_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/six_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/six_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/six_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/six_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/ten_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/ten_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/ten_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/ten_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/ten_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/ten_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/ten_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/ten_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/three_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/three_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/three_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/three_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/three_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/three_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/three_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/three_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/two_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/two_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/two_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/two_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/two_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/two_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Content/img/two_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Content/img/two_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/Icon.png -------------------------------------------------------------------------------- /AzureCards.WebApp/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("AzureCards.WebApp")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("AzureCards.WebApp")] 13 | [assembly: AssemblyCopyright("Copyright © 2015")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("d2849302-6c82-43cd-aa1a-81e8cba010c7")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Revision and Build Numbers 33 | // by using the '*' as shown below: 34 | [assembly: AssemblyVersion("1.0.0.0")] 35 | [assembly: AssemblyFileVersion("1.0.0.0")] 36 | -------------------------------------------------------------------------------- /AzureCards.WebApp/Scripts/angular-cookies.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | AngularJS v1.3.15 3 | (c) 2010-2014 Google, Inc. http://angularjs.org 4 | License: MIT 5 | */ 6 | (function(p,f,n){'use strict';f.module("ngCookies",["ng"]).factory("$cookies",["$rootScope","$browser",function(e,b){var c={},g={},h,k=!1,l=f.copy,m=f.isUndefined;b.addPollFn(function(){var a=b.cookies();h!=a&&(h=a,l(a,g),l(a,c),k&&e.$apply())})();k=!0;e.$watch(function(){var a,d,e;for(a in g)m(c[a])&&b.cookies(a,n);for(a in c)d=c[a],f.isString(d)||(d=""+d,c[a]=d),d!==g[a]&&(b.cookies(a,d),e=!0);if(e)for(a in d=b.cookies(),c)c[a]!==d[a]&&(m(d[a])?delete c[a]:c[a]=d[a])});return c}]).factory("$cookieStore", 7 | ["$cookies",function(e){return{get:function(b){return(b=e[b])?f.fromJson(b):b},put:function(b,c){e[b]=f.toJson(c)},remove:function(b){delete e[b]}}}])})(window,window.angular); 8 | //# sourceMappingURL=angular-cookies.min.js.map 9 | -------------------------------------------------------------------------------- /AzureCards.WebApp/Scripts/angular-cookies.min.js.map: -------------------------------------------------------------------------------- 1 | { 2 | "version":3, 3 | "file":"angular-cookies.min.js", 4 | "lineCount":7, 5 | "mappings":"A;;;;;aAKC,SAAQ,CAACA,CAAD,CAASC,CAAT,CAAkBC,CAAlB,CAA6B,CAmBtCD,CAAAE,OAAA,CAAe,WAAf,CAA4B,CAAC,IAAD,CAA5B,CAAAC,QAAA,CA0BW,UA1BX,CA0BuB,CAAC,YAAD,CAAe,UAAf,CAA2B,QAAQ,CAACC,CAAD,CAAaC,CAAb,CAAuB,CAAA,IACvEC,EAAU,EAD6D,CAEvEC,EAAc,EAFyD,CAGvEC,CAHuE,CAIvEC,EAAU,CAAA,CAJ6D,CAKvEC,EAAOV,CAAAU,KALgE,CAMvEC,EAAcX,CAAAW,YAGlBN,EAAAO,UAAA,CAAmB,QAAQ,EAAG,CAC5B,IAAIC,EAAiBR,CAAAC,QAAA,EACjBE,EAAJ,EAA0BK,CAA1B,GACEL,CAGA,CAHqBK,CAGrB,CAFAH,CAAA,CAAKG,CAAL,CAAqBN,CAArB,CAEA,CADAG,CAAA,CAAKG,CAAL,CAAqBP,CAArB,CACA,CAAIG,CAAJ,EAAaL,CAAAU,OAAA,EAJf,CAF4B,CAA9B,CAAA,EAUAL,EAAA,CAAU,CAAA,CAKVL,EAAAW,OAAA,CASAC,QAAa,EAAG,CAAA,IACVC,CADU,CAEVC,CAFU,CAIVC,CAGJ,KAAKF,CAAL,GAAaV,EAAb,CACMI,CAAA,CAAYL,CAAA,CAAQW,CAAR,CAAZ,CAAJ,EACEZ,CAAAC,QAAA,CAAiBW,CAAjB,CAAuBhB,CAAvB,CAKJ,KAAKgB,CAAL,GAAaX,EAAb,CACEY,CAKA,CALQZ,CAAA,CAAQW,CAAR,CAKR,CAJKjB,CAAAoB,SAAA,CAAiBF,CAAjB,CAIL,GAHEA,CACA,CADQ,EACR,CADaA,CACb,CAAAZ,CAAA,CAAQW,CAAR,CAAA,CAAgBC,CAElB,EAAIA,CAAJ,GAAcX,CAAA,CAAYU,CAAZ,CAAd,GACEZ,CAAAC,QAAA,CAAiBW,CAAjB,CAAuBC,CAAvB,CACA,CAAAC,CAAA,CAAU,CAAA,CAFZ,CAOF,IAAIA,CAAJ,CAIE,IAAKF,CAAL,GAFAI,EAEaf,CAFID,CAAAC,QAAA,EAEJA,CAAAA,CAAb,CACMA,CAAA,CAAQW,CAAR,CAAJ,GAAsBI,CAAA,CAAeJ,CAAf,CAAtB,GAEMN,CAAA,CAAYU,CAAA,CAAeJ,CAAf,CAAZ,CAAJ,CACE,OAAOX,CAAA,CAAQW,CAAR,CADT,CAGEX,CAAA,CAAQW,CAAR,CAHF,CAGkBI,CAAA,CAAeJ,CAAf,CALpB,CAhCU,CAThB,CAEA,OAAOX,EA1BoE,CAA1D,CA1BvB,CAAAH,QAAA,CAoIW,cApIX;AAoI2B,CAAC,UAAD,CAAa,QAAQ,CAACmB,CAAD,CAAW,CAErD,MAAO,CAWLC,IAAKA,QAAQ,CAACC,CAAD,CAAM,CAEjB,MAAO,CADHN,CACG,CADKI,CAAA,CAASE,CAAT,CACL,EAAQxB,CAAAyB,SAAA,CAAiBP,CAAjB,CAAR,CAAkCA,CAFxB,CAXd,CA0BLQ,IAAKA,QAAQ,CAACF,CAAD,CAAMN,CAAN,CAAa,CACxBI,CAAA,CAASE,CAAT,CAAA,CAAgBxB,CAAA2B,OAAA,CAAeT,CAAf,CADQ,CA1BrB,CAuCLU,OAAQA,QAAQ,CAACJ,CAAD,CAAM,CACpB,OAAOF,CAAA,CAASE,CAAT,CADa,CAvCjB,CAF8C,CAAhC,CApI3B,CAnBsC,CAArC,CAAD,CAwMGzB,MAxMH,CAwMWA,MAAAC,QAxMX;", 6 | "sources":["angular-cookies.js"], 7 | "names":["window","angular","undefined","module","factory","$rootScope","$browser","cookies","lastCookies","lastBrowserCookies","runEval","copy","isUndefined","addPollFn","currentCookies","$apply","$watch","push","name","value","updated","isString","browserCookies","$cookies","get","key","fromJson","put","toJson","remove"] 8 | } 9 | -------------------------------------------------------------------------------- /AzureCards.WebApp/Scripts/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 | -------------------------------------------------------------------------------- /AzureCards.WebApp/Scripts/angular-loader.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | AngularJS v1.3.15 3 | (c) 2010-2014 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.3.15/"+(b?b+"/":"")+c;for(c=1;c").html(a);f.forEach(a.children(), 8 | function(a){a=f.element(a);h?h.after(a):d.prepend(a);h=a;q(a)(b)});c.renderMessages(e,g)})}}}]).directive("ngMessage",["$animate",function(f){return{require:"^ngMessages",transclude:"element",terminal:!0,restrict:"AE",link:function(k,l,b,d,a){for(var c,g,e=l[0],n=e.parentNode,h=0,p=0;h 2 | 3 | 4 | 5 | 6 | 17 | 18 | 29 | 30 | -------------------------------------------------------------------------------- /AzureCards.WebApp/Web.Release.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 17 | 18 | 19 | 30 | 31 | -------------------------------------------------------------------------------- /AzureCards.WebApp/Web.config: -------------------------------------------------------------------------------- 1 |  2 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /AzureCards.WebApp/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /AzureCards.WebApp/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /AzureCards.WebApp/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /AzureCards.WebApp/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WebApp/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /AzureCards.WebApp/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/App.xaml: -------------------------------------------------------------------------------- 1 |  6 | 7 | 8 | -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/SmallLogo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/SmallLogo.scale-100.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/SplashScreen.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/SplashScreen.scale-100.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/StoreLogo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/StoreLogo.scale-100.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/ace_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/ace_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/ace_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/ace_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/ace_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/ace_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/ace_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/ace_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/eight_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/eight_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/eight_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/eight_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/eight_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/eight_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/eight_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/eight_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/five_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/five_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/five_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/five_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/five_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/five_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/five_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/five_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/four_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/four_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/four_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/four_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/four_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/four_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/four_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/four_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/jack_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/jack_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/jack_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/jack_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/jack_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/jack_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/jack_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/jack_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/king_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/king_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/king_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/king_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/king_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/king_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/king_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/king_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/nine_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/nine_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/nine_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/nine_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/nine_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/nine_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/nine_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/nine_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/queen_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/queen_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/queen_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/queen_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/queen_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/queen_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/queen_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/queen_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/seven_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/seven_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/seven_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/seven_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/seven_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/seven_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/seven_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/seven_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/six_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/six_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/six_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/six_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/six_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/six_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/six_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/six_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/ten_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/ten_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/ten_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/ten_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/ten_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/ten_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/ten_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/ten_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/three_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/three_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/three_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/three_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/three_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/three_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/three_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/three_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/two_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/two_of_clubs.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/two_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/two_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/two_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/two_of_hearts.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Assets/two_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards.WindowsStoreApp/Assets/two_of_spades.png -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/AzureCards/AzureCardsClientAppServiceExtensions.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Net.Http; 3 | using Microsoft.Azure.AppService; 4 | 5 | namespace AzureCards.WindowsStoreApp 6 | { 7 | public static class AzureCardsClientAppServiceExtensions 8 | { 9 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client) 10 | { 11 | return new AzureCardsClient(client.CreateHandler()); 12 | } 13 | 14 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client, params DelegatingHandler[] handlers) 15 | { 16 | return new AzureCardsClient(client.CreateHandler(handlers)); 17 | } 18 | 19 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client, Uri uri, params DelegatingHandler[] handlers) 20 | { 21 | return new AzureCardsClient(uri, client.CreateHandler(handlers)); 22 | } 23 | 24 | public static AzureCardsClient CreateAzureCardsClient(this IAppServiceClient client, HttpClientHandler rootHandler, params DelegatingHandler[] handlers) 25 | { 26 | return new AzureCardsClient(rootHandler, client.CreateHandler(handlers)); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/AzureCards/AzureCardsClientExtensions.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | 7 | namespace AzureCards.WindowsStoreApp 8 | { 9 | public static partial class AzureCardsClientExtensions 10 | { 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/AzureCards/IAzureCardsClient.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | using AzureCards.WindowsStoreApp; 7 | using Microsoft.Rest; 8 | 9 | namespace AzureCards.WindowsStoreApp 10 | { 11 | public partial interface IAzureCardsClient : IDisposable 12 | { 13 | /// 14 | /// The base URI of the service. 15 | /// 16 | Uri BaseUri 17 | { 18 | get; set; 19 | } 20 | 21 | /// 22 | /// Credentials for authenticating with the service. 23 | /// 24 | ServiceClientCredentials Credentials 25 | { 26 | get; set; 27 | } 28 | 29 | IDeck Deck 30 | { 31 | get; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/AzureCards/IDeck.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | using System.Threading; 7 | using System.Threading.Tasks; 8 | using AzureCards.WindowsStoreApp.Models; 9 | using Microsoft.Rest; 10 | 11 | namespace AzureCards.WindowsStoreApp 12 | { 13 | public partial interface IDeck 14 | { 15 | /// 16 | /// Required. 17 | /// 18 | /// 19 | /// Required. 20 | /// 21 | /// 22 | /// Cancellation token. 23 | /// 24 | Task> DealWithOperationResponseAsync(string deckId, int cardCount, CancellationToken cancellationToken = default(System.Threading.CancellationToken)); 25 | 26 | /// 27 | /// Cancellation token. 28 | /// 29 | Task> NewWithOperationResponseAsync(CancellationToken cancellationToken = default(System.Threading.CancellationToken)); 30 | 31 | /// 32 | /// Required. 33 | /// 34 | /// 35 | /// Cancellation token. 36 | /// 37 | Task> ShuffleWithOperationResponseAsync(string deckId, CancellationToken cancellationToken = default(System.Threading.CancellationToken)); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/AzureCards/Models/Card.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Linq; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace AzureCards.WindowsStoreApp.Models 9 | { 10 | public partial class Card 11 | { 12 | private string _face; 13 | 14 | /// 15 | /// Optional. 16 | /// 17 | public string Face 18 | { 19 | get { return this._face; } 20 | set { this._face = value; } 21 | } 22 | 23 | private string _suit; 24 | 25 | /// 26 | /// Optional. 27 | /// 28 | public string Suit 29 | { 30 | get { return this._suit; } 31 | set { this._suit = value; } 32 | } 33 | 34 | /// 35 | /// Initializes a new instance of the Card class. 36 | /// 37 | public Card() 38 | { 39 | } 40 | 41 | /// 42 | /// Deserialize the object 43 | /// 44 | public virtual void DeserializeJson(JToken inputObject) 45 | { 46 | if (inputObject != null && inputObject.Type != JTokenType.Null) 47 | { 48 | JToken faceValue = inputObject["Face"]; 49 | if (faceValue != null && faceValue.Type != JTokenType.Null) 50 | { 51 | this.Face = ((string)faceValue); 52 | } 53 | JToken suitValue = inputObject["Suit"]; 54 | if (suitValue != null && suitValue.Type != JTokenType.Null) 55 | { 56 | this.Suit = ((string)suitValue); 57 | } 58 | } 59 | } 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/AzureCards/Models/DealResponseMessage.cs: -------------------------------------------------------------------------------- 1 | // Code generated by Microsoft (R) AutoRest Code Generator 0.9.7.0 2 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 3 | 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using AzureCards.WindowsStoreApp.Models; 8 | using Microsoft.Rest; 9 | using Newtonsoft.Json.Linq; 10 | 11 | namespace AzureCards.WindowsStoreApp.Models 12 | { 13 | public partial class DealResponseMessage 14 | { 15 | private IList _cards; 16 | 17 | /// 18 | /// Optional. 19 | /// 20 | public IList Cards 21 | { 22 | get { return this._cards; } 23 | set { this._cards = value; } 24 | } 25 | 26 | /// 27 | /// Initializes a new instance of the DealResponseMessage class. 28 | /// 29 | public DealResponseMessage() 30 | { 31 | this.Cards = new LazyList(); 32 | } 33 | 34 | /// 35 | /// Deserialize the object 36 | /// 37 | public virtual void DeserializeJson(JToken inputObject) 38 | { 39 | if (inputObject != null && inputObject.Type != JTokenType.Null) 40 | { 41 | JToken cardsSequence = ((JToken)inputObject["Cards"]); 42 | if (cardsSequence != null && cardsSequence.Type != JTokenType.Null) 43 | { 44 | foreach (JToken cardsValue in ((JArray)cardsSequence)) 45 | { 46 | Card card = new Card(); 47 | card.DeserializeJson(cardsValue); 48 | this.Cards.Add(card); 49 | } 50 | } 51 | } 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/CardDatabinderConverter.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Windows.UI.Xaml.Data; 7 | 8 | namespace AzureCards.WindowsStoreApp 9 | { 10 | public class CardDatabinderConverter : IValueConverter 11 | { 12 | public object Convert(object value, Type targetType, object parameter, string language) 13 | { 14 | var cardViewModel = value as CardViewModel; 15 | 16 | if(cardViewModel != null) 17 | return string.Format(@"Assets/{0}_of_{1}.png", cardViewModel.Face, cardViewModel.Suit); 18 | 19 | return value; 20 | } 21 | 22 | public object ConvertBack(object value, Type targetType, object parameter, string language) 23 | { 24 | return value; 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/MainPage.xaml: -------------------------------------------------------------------------------- 1 |  9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Package.appxmanifest: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 7 | 8 | 9 | AzureCards.WindowsStoreApp 10 | bradyg 11 | Assets\StoreLogo.png 12 | 13 | 14 | 15 | 6.3.0 16 | 6.3.0 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 27 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("AzureCards.WindowsStoreApp")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("AzureCards.WindowsStoreApp")] 13 | [assembly: AssemblyCopyright("Copyright © 2015")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Version information for an assembly consists of the following four values: 18 | // 19 | // Major Version 20 | // Minor Version 21 | // Build Number 22 | // Revision 23 | // 24 | // You can specify all the values or you can default the Build and Revision Numbers 25 | // by using the '*' as shown below: 26 | // [assembly: AssemblyVersion("1.0.*")] 27 | [assembly: AssemblyVersion("1.0.0.0")] 28 | [assembly: AssemblyFileVersion("1.0.0.0")] 29 | [assembly: ComVisible(false)] -------------------------------------------------------------------------------- /AzureCards.WindowsStoreApp/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /AzureCards/App_Start/DeckIsolatedStorage.cs: -------------------------------------------------------------------------------- 1 | using AzureCards.Models; 2 | using Microsoft.Azure.AppService.ApiApps.Service; 3 | using Newtonsoft.Json; 4 | using System; 5 | using System.IO; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace AzureCards 10 | { 11 | public class DeckIsolatedStorage 12 | { 13 | private CloudIsolatedStorage _storage; 14 | 15 | public DeckIsolatedStorage() 16 | { 17 | _storage = Runtime.FromAppSettings().IsolatedStorage; 18 | } 19 | 20 | public async Task New(Deck deck) 21 | { 22 | var deckId = Path.GetFileNameWithoutExtension(Path.GetRandomFileName()); 23 | await Save(deckId, deck); 24 | return deckId; 25 | } 26 | 27 | public async Task Save(string deckId, Deck deck) 28 | { 29 | var filename = string.Format("{0}.json", deckId); 30 | var json = JsonConvert.SerializeObject(deck); 31 | var data = Encoding.ASCII.GetBytes(json); 32 | await _storage.WriteAsync(filename, data); 33 | return deckId; 34 | } 35 | 36 | public async Task GetById(string deckId) 37 | { 38 | var filename = string.Format("{0}.json", deckId); 39 | var json = await _storage.ReadAsStringAsync(filename); 40 | return JsonConvert.DeserializeObject(json); 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /AzureCards/App_Start/SwaggerConfig.cs: -------------------------------------------------------------------------------- 1 | using System.Web.Http; 2 | using Swashbuckle.Application; 3 | using WebActivatorEx; 4 | using AzureCards; 5 | 6 | [assembly: PreApplicationStartMethod(typeof(SwaggerConfig), "Register")] 7 | 8 | namespace AzureCards 9 | { 10 | public class SwaggerConfig 11 | { 12 | public static void Register() 13 | { 14 | var thisAssembly = typeof(SwaggerConfig).Assembly; 15 | 16 | GlobalConfiguration.Configuration 17 | .EnableSwagger(c => c.SingleApiVersion("v1", "AzureCards")) 18 | .EnableSwaggerUi(c => { }); 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /AzureCards/App_Start/WebApiConfig.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Web.Http; 5 | 6 | namespace AzureCards 7 | { 8 | public static class WebApiConfig 9 | { 10 | public static void Register(HttpConfiguration config) 11 | { 12 | // Web API configuration and services 13 | config.EnableCors(); 14 | 15 | // Web API routes 16 | config.MapHttpAttributeRoutes(); 17 | 18 | config.Routes.MapHttpRoute( 19 | name: "DefaultApi", 20 | routeTemplate: "api/{controller}/{id}", 21 | defaults: new { id = RouteParameter.Optional } 22 | ); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /AzureCards/Content/img/ace_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/ace_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/ace_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/ace_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/ace_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/ace_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/ace_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/ace_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/eight_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/eight_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/eight_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/eight_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/eight_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/eight_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/eight_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/eight_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/five_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/five_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/five_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/five_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/five_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/five_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/five_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/five_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/four_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/four_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/four_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/four_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/four_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/four_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/four_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/four_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/jack_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/jack_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/jack_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/jack_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/jack_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/jack_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/jack_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/jack_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/king_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/king_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/king_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/king_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/king_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/king_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/king_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/king_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/nine_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/nine_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/nine_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/nine_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/nine_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/nine_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/nine_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/nine_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/queen_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/queen_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/queen_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/queen_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/queen_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/queen_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/queen_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/queen_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/seven_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/seven_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/seven_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/seven_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/seven_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/seven_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/seven_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/seven_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/six_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/six_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/six_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/six_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/six_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/six_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/six_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/six_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/ten_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/ten_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/ten_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/ten_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/ten_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/ten_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/ten_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/ten_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/three_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/three_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/three_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/three_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/three_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/three_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/three_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/three_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Content/img/two_of_clubs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/two_of_clubs.png -------------------------------------------------------------------------------- /AzureCards/Content/img/two_of_diamonds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/two_of_diamonds.png -------------------------------------------------------------------------------- /AzureCards/Content/img/two_of_hearts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/two_of_hearts.png -------------------------------------------------------------------------------- /AzureCards/Content/img/two_of_spades.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Content/img/two_of_spades.png -------------------------------------------------------------------------------- /AzureCards/Global.asax: -------------------------------------------------------------------------------- 1 | <%@ Application Codebehind="Global.asax.cs" Inherits="AzureCards.WebApiApplication" Language="C#" %> 2 | -------------------------------------------------------------------------------- /AzureCards/Global.asax.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Web; 5 | using System.Web.Http; 6 | using System.Web.Routing; 7 | 8 | namespace AzureCards 9 | { 10 | public class WebApiApplication : System.Web.HttpApplication 11 | { 12 | protected void Application_Start() 13 | { 14 | GlobalConfiguration.Configure(WebApiConfig.Register); 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /AzureCards/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/Icon.png -------------------------------------------------------------------------------- /AzureCards/Metadata/deploymentTemplates/apiappconfig.azureresource.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://schemas.management.azure.com/schemas/2014-04-01-preview/deploymentTemplate.json#", 3 | "contentVersion": "1.0.0.0", 4 | "parameters": { 5 | "$system": { 6 | "type": "Object" 7 | } 8 | }, 9 | "resources": [] 10 | } -------------------------------------------------------------------------------- /AzureCards/Models/Card.cs: -------------------------------------------------------------------------------- 1 |  2 | namespace AzureCards.Models 3 | { 4 | public class Card 5 | { 6 | public Suit Suit { get; set; } 7 | 8 | public Face Face { get; set; } 9 | 10 | public override bool Equals(object obj) 11 | { 12 | Card card = obj as Card; 13 | return (card.Face == this.Face) && (card.Suit == this.Suit); 14 | } 15 | 16 | public static bool operator ==(Card a, Card b) 17 | { 18 | return a.Equals(b); 19 | } 20 | 21 | public static bool operator !=(Card a, Card b) 22 | { 23 | return !a.Equals(b); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /AzureCards/Models/Face.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json; 2 | using Newtonsoft.Json.Converters; 3 | 4 | namespace AzureCards.Models 5 | { 6 | [JsonConverter(typeof(StringEnumConverter))] 7 | public enum Face 8 | { 9 | Ace = 14, 10 | King = 13, 11 | Queen = 12, 12 | Jack = 11, 13 | Ten = 10, 14 | Nine = 9, 15 | Eight = 8, 16 | Seven = 7, 17 | Six = 6, 18 | Five = 5, 19 | Four = 4, 20 | Three = 3, 21 | Two = 2 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /AzureCards/Models/ResponseModels.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace AzureCards.Models 8 | { 9 | public class DealResponseMessage 10 | { 11 | public DealResponseMessage() 12 | { 13 | this.Cards = new List(); 14 | } 15 | 16 | public IEnumerable Cards { get; set; } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /AzureCards/Models/Suit.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json; 2 | using Newtonsoft.Json.Converters; 3 | 4 | namespace AzureCards.Models 5 | { 6 | [JsonConverter(typeof(StringEnumConverter))] 7 | public enum Suit 8 | { 9 | Spades = 4, 10 | Hearts = 3, 11 | Diamonds = 2, 12 | Clubs = 1 13 | } 14 | } -------------------------------------------------------------------------------- /AzureCards/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("AzureCards")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("AzureCards")] 13 | [assembly: AssemblyCopyright("Copyright © 2015")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("b754c5f8-fba9-40f4-b4d0-c7ad7fe26b51")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Revision and Build Numbers 33 | // by using the '*' as shown below: 34 | [assembly: AssemblyVersion("1.0.0.0")] 35 | [assembly: AssemblyFileVersion("1.0.0.0")] 36 | -------------------------------------------------------------------------------- /AzureCards/Scripts/angular-cookies.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | AngularJS v1.3.15 3 | (c) 2010-2014 Google, Inc. http://angularjs.org 4 | License: MIT 5 | */ 6 | (function(p,f,n){'use strict';f.module("ngCookies",["ng"]).factory("$cookies",["$rootScope","$browser",function(e,b){var c={},g={},h,k=!1,l=f.copy,m=f.isUndefined;b.addPollFn(function(){var a=b.cookies();h!=a&&(h=a,l(a,g),l(a,c),k&&e.$apply())})();k=!0;e.$watch(function(){var a,d,e;for(a in g)m(c[a])&&b.cookies(a,n);for(a in c)d=c[a],f.isString(d)||(d=""+d,c[a]=d),d!==g[a]&&(b.cookies(a,d),e=!0);if(e)for(a in d=b.cookies(),c)c[a]!==d[a]&&(m(d[a])?delete c[a]:c[a]=d[a])});return c}]).factory("$cookieStore", 7 | ["$cookies",function(e){return{get:function(b){return(b=e[b])?f.fromJson(b):b},put:function(b,c){e[b]=f.toJson(c)},remove:function(b){delete e[b]}}}])})(window,window.angular); 8 | //# sourceMappingURL=angular-cookies.min.js.map 9 | -------------------------------------------------------------------------------- /AzureCards/Scripts/angular-cookies.min.js.map: -------------------------------------------------------------------------------- 1 | { 2 | "version":3, 3 | "file":"angular-cookies.min.js", 4 | "lineCount":7, 5 | "mappings":"A;;;;;aAKC,SAAQ,CAACA,CAAD,CAASC,CAAT,CAAkBC,CAAlB,CAA6B,CAmBtCD,CAAAE,OAAA,CAAe,WAAf,CAA4B,CAAC,IAAD,CAA5B,CAAAC,QAAA,CA0BW,UA1BX,CA0BuB,CAAC,YAAD,CAAe,UAAf,CAA2B,QAAQ,CAACC,CAAD,CAAaC,CAAb,CAAuB,CAAA,IACvEC,EAAU,EAD6D,CAEvEC,EAAc,EAFyD,CAGvEC,CAHuE,CAIvEC,EAAU,CAAA,CAJ6D,CAKvEC,EAAOV,CAAAU,KALgE,CAMvEC,EAAcX,CAAAW,YAGlBN,EAAAO,UAAA,CAAmB,QAAQ,EAAG,CAC5B,IAAIC,EAAiBR,CAAAC,QAAA,EACjBE,EAAJ,EAA0BK,CAA1B,GACEL,CAGA,CAHqBK,CAGrB,CAFAH,CAAA,CAAKG,CAAL,CAAqBN,CAArB,CAEA,CADAG,CAAA,CAAKG,CAAL,CAAqBP,CAArB,CACA,CAAIG,CAAJ,EAAaL,CAAAU,OAAA,EAJf,CAF4B,CAA9B,CAAA,EAUAL,EAAA,CAAU,CAAA,CAKVL,EAAAW,OAAA,CASAC,QAAa,EAAG,CAAA,IACVC,CADU,CAEVC,CAFU,CAIVC,CAGJ,KAAKF,CAAL,GAAaV,EAAb,CACMI,CAAA,CAAYL,CAAA,CAAQW,CAAR,CAAZ,CAAJ,EACEZ,CAAAC,QAAA,CAAiBW,CAAjB,CAAuBhB,CAAvB,CAKJ,KAAKgB,CAAL,GAAaX,EAAb,CACEY,CAKA,CALQZ,CAAA,CAAQW,CAAR,CAKR,CAJKjB,CAAAoB,SAAA,CAAiBF,CAAjB,CAIL,GAHEA,CACA,CADQ,EACR,CADaA,CACb,CAAAZ,CAAA,CAAQW,CAAR,CAAA,CAAgBC,CAElB,EAAIA,CAAJ,GAAcX,CAAA,CAAYU,CAAZ,CAAd,GACEZ,CAAAC,QAAA,CAAiBW,CAAjB,CAAuBC,CAAvB,CACA,CAAAC,CAAA,CAAU,CAAA,CAFZ,CAOF,IAAIA,CAAJ,CAIE,IAAKF,CAAL,GAFAI,EAEaf,CAFID,CAAAC,QAAA,EAEJA,CAAAA,CAAb,CACMA,CAAA,CAAQW,CAAR,CAAJ,GAAsBI,CAAA,CAAeJ,CAAf,CAAtB,GAEMN,CAAA,CAAYU,CAAA,CAAeJ,CAAf,CAAZ,CAAJ,CACE,OAAOX,CAAA,CAAQW,CAAR,CADT,CAGEX,CAAA,CAAQW,CAAR,CAHF,CAGkBI,CAAA,CAAeJ,CAAf,CALpB,CAhCU,CAThB,CAEA,OAAOX,EA1BoE,CAA1D,CA1BvB,CAAAH,QAAA,CAoIW,cApIX;AAoI2B,CAAC,UAAD,CAAa,QAAQ,CAACmB,CAAD,CAAW,CAErD,MAAO,CAWLC,IAAKA,QAAQ,CAACC,CAAD,CAAM,CAEjB,MAAO,CADHN,CACG,CADKI,CAAA,CAASE,CAAT,CACL,EAAQxB,CAAAyB,SAAA,CAAiBP,CAAjB,CAAR,CAAkCA,CAFxB,CAXd,CA0BLQ,IAAKA,QAAQ,CAACF,CAAD,CAAMN,CAAN,CAAa,CACxBI,CAAA,CAASE,CAAT,CAAA,CAAgBxB,CAAA2B,OAAA,CAAeT,CAAf,CADQ,CA1BrB,CAuCLU,OAAQA,QAAQ,CAACJ,CAAD,CAAM,CACpB,OAAOF,CAAA,CAASE,CAAT,CADa,CAvCjB,CAF8C,CAAhC,CApI3B,CAnBsC,CAArC,CAAD,CAwMGzB,MAxMH,CAwMWA,MAAAC,QAxMX;", 6 | "sources":["angular-cookies.js"], 7 | "names":["window","angular","undefined","module","factory","$rootScope","$browser","cookies","lastCookies","lastBrowserCookies","runEval","copy","isUndefined","addPollFn","currentCookies","$apply","$watch","push","name","value","updated","isString","browserCookies","$cookies","get","key","fromJson","put","toJson","remove"] 8 | } 9 | -------------------------------------------------------------------------------- /AzureCards/Scripts/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 | -------------------------------------------------------------------------------- /AzureCards/Scripts/angular-loader.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | AngularJS v1.3.15 3 | (c) 2010-2014 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.3.15/"+(b?b+"/":"")+c;for(c=1;c").html(a);f.forEach(a.children(), 8 | function(a){a=f.element(a);h?h.after(a):d.prepend(a);h=a;q(a)(b)});c.renderMessages(e,g)})}}}]).directive("ngMessage",["$animate",function(f){return{require:"^ngMessages",transclude:"element",terminal:!0,restrict:"AE",link:function(k,l,b,d,a){for(var c,g,e=l[0],n=e.parentNode,h=0,p=0;h 2 | 3 | 4 | 5 | 6 | 17 | 18 | 29 | 30 | -------------------------------------------------------------------------------- /AzureCards/Web.Release.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 17 | 18 | 19 | 30 | 31 | -------------------------------------------------------------------------------- /AzureCards/Web.config: -------------------------------------------------------------------------------- 1 |  2 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /AzureCards/apiapp.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://json-schema.org/schemas/2014-11-01/apiapp.json#", 3 | "id": "AzureCards", 4 | "namespace": "microsoft.com", 5 | "gateway": "2015-01-14", 6 | "version": "1.0.0", 7 | "title": "AzureCards", 8 | "summary": "", 9 | "author": "", 10 | "endpoints": { 11 | "apiDefinition": "/swagger/docs/v1", 12 | "status": null 13 | } 14 | } -------------------------------------------------------------------------------- /AzureCards/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /AzureCards/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /AzureCards/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /AzureCards/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure-Samples/app-service-api-dotnet-azure-cards/67707989c7d338c1a80b3c07ae26f4eb5ed6b10e/AzureCards/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /AzureCards/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing to Azure samples 2 | 3 | Thank you for your interest in contributing to Azure samples! 4 | 5 | ## Ways to contribute 6 | 7 | You can contribute to [Azure samples](https://azure.microsoft.com/documentation/samples/) in a few different ways: 8 | 9 | - Submit feedback on [this sample page](https://azure.microsoft.com/documentation/samples/app-service-api-dotnet-azure-cards/) whether it was helpful or not. 10 | - Submit issues through [issue tracker](https://github.com/Azure-Samples/app-service-api-dotnet-azure-cards/issues) on GitHub. We are actively monitoring the issues and improving our samples. 11 | - If you wish to make code changes to samples, or contribute something new, please follow the [GitHub Forks / Pull requests model](https://help.github.com/articles/fork-a-repo/): Fork the sample repo, make the change and propose it back by submitting a pull request. -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Microsoft Corporation 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | --- 2 | services: app-service\api 3 | platforms: dotnet 4 | author: bradygaster 5 | --- 6 | 7 | # Azure Cards 8 | Sample card deck API demonstrating API Apps 9 | 10 | This is a simple example of how to build an [API App](http://azure.microsoft.com/en-us/documentation/articles/app-service-api-apps-why-best-platform/ "What are API Apps?") for deployment into the Azure App Service. This example API App uses a Web API back end and a simple HTML/AngularJS client to communicate with the API. 11 | 12 | ## More Information ## 13 | You can learn more about API Apps on the [Azure.com](http://azure.com "The Microsoft Azure Home Page") home page. This Todo List sample is similar to the [Contact List](https://github.com/Azure-Samples/API-Apps-DotNet-ContactList-Sample) API App Sample used throughout some of the articles outlining the process of creating, deploying, consuming, and debugging API Apps. Whereas the Contact List example goes further by providing a separate Web App that serves as a client to the API App back-end, this Todo List sample is self-contained, without a separate client Web App. 14 | 15 | Helpful Links: 16 | - [API App](http://azure.microsoft.com/en-us/documentation/articles/app-service-api-apps-why-best-platform/ "What are API Apps?") 17 | - [Create an API App in Azure App Service](http://azure.microsoft.com/en-us/documentation/articles/app-service-dotnet-create-api-app/) 18 | - [Convert an Existing API to an API App](http://azure.microsoft.com/en-us/documentation/articles/app-service-dotnet-create-api-app-visual-studio/) 19 | - [Remotely Debug an API App](http://azure.microsoft.com/en-us/documentation/articles/app-service-dotnet-remotely-debug-api-app/) 20 | - [Protect an API App](http://azure.microsoft.com/en-us/documentation/articles/app-service-api-dotnet-add-authentication/) 21 | - [Deploy an API App in App Service](http://azure.microsoft.com/en-us/documentation/articles/app-service-dotnet-deploy-api-app/) 22 | -------------------------------------------------------------------------------- /Snippets/01-controller-new-deck.snippet: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 |
5 | demo01-controller-new-deck 6 | demo01-controller-new-deck 7 | 8 | Microsoft Corporation 9 | 10 | Expansion 11 | 12 |
13 | 14 | 15 | New() 24 | { 25 | var deckId = await _deckStorage.New(new Deck()); 26 | return deckId; 27 | }$end$]]> 28 | 29 | 30 |
31 |
-------------------------------------------------------------------------------- /Snippets/02-controller-shuffle-deck.snippet: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 |
5 | demo02-controller-shuffle-deck 6 | demo02-controller-shuffle-deck 7 | 8 | Microsoft Corporation 9 | 10 | Expansion 11 | 12 |
13 | 14 | 15 | Shuffle(string deckId) 19 | { 20 | var deck = await _deckStorage.GetById(deckId); 21 | 22 | if (deck == null) 23 | { 24 | var notFoundResponse = Request.CreateResponse(false); 25 | notFoundResponse.StatusCode = HttpStatusCode.NotFound; 26 | return notFoundResponse; 27 | } 28 | 29 | deck.Shuffle(); 30 | await _deckStorage.Save(deckId, deck); 31 | var foundResponse = Request.CreateResponse(true); 32 | foundResponse.StatusCode = HttpStatusCode.OK; 33 | return foundResponse; 34 | }$end$]]> 35 | 36 | 37 |
38 |
-------------------------------------------------------------------------------- /Snippets/03-controller-deal-deck.snippet: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 |
5 | demo03-controller-deal-deck 6 | demo03-controller-deal-deck 7 | 8 | Microsoft Corporation 9 | 10 | Expansion 11 | 12 |
13 | 14 | 15 | Deal(string deckId, int cardCount) 19 | { 20 | var deck = await _deckStorage.GetById(deckId); 21 | 22 | // if the deck's already been played return a not found 23 | if (deck.RemainingCards.Count == 0) 24 | return new HttpResponseMessage { StatusCode = HttpStatusCode.NotFound }; 25 | 26 | // make sure we don't take more than we have 27 | if (deck.RemainingCards.Count < cardCount) 28 | cardCount = deck.RemainingCards.Count; 29 | 30 | // remove the cards we'll return from the remaining 31 | var deal = deck.RemainingCards.Take(cardCount).ToList(); 32 | deck.RemainingCards.RemoveRange(0, cardCount); 33 | 34 | // update the deck 35 | await _deckStorage.Save(deckId, deck); 36 | 37 | // respond with the content 38 | var response = Request.CreateResponse(new DealResponseMessage 39 | { 40 | Cards = deal 41 | }); 42 | 43 | response.StatusCode = deal.Count() > 0 ? HttpStatusCode.OK : HttpStatusCode.NotFound; 44 | return response; 45 | }]]> 46 | 47 | 48 |
49 |
-------------------------------------------------------------------------------- /Snippets/04-setup-windows-store.snippet: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 |
5 | demo04-setup-windows-app 6 | demo04-setup-windows-app 7 | 8 | Microsoft Corporation 9 | 10 | Expansion 11 | 12 |
13 | 14 | 15 | 28 | 29 | 30 |
31 |
-------------------------------------------------------------------------------- /Snippets/05-authenticate.snippet: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 |
5 | demo05-auth-method 6 | demo05-auth-method 7 | 8 | Microsoft Corporation 9 | 10 | Expansion 11 | 12 |
13 | 14 | 15 | AuthenticateAsync() 16 | { 17 | await _appServiceClient.Logout(); 18 | 19 | while (_appServiceClient.CurrentUser == null) 20 | { 21 | await _appServiceClient.LoginAsync(AUTH_PROVIDER, false); 22 | } 23 | 24 | return _appServiceClient.CurrentUser; 25 | }]]> 26 | 27 | 28 |
29 |
-------------------------------------------------------------------------------- /Snippets/06-refresh-card-display.snippet: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 |
5 | demo06-refresh-card-display 6 | demo06-refresh-card-display 7 | 8 | Microsoft Corporation 9 | 10 | Expansion 11 | 12 |
13 | 14 | 15 | 18 | { 19 | this.ViewModel.Cards.Clear(); 20 | 21 | var response = _azureCards.Deck.Deal(_deckId, 5); 22 | 23 | foreach (var card in response.Cards) 24 | this.ViewModel.Cards.Add(card.CreateViewModel()); 25 | }); 26 | 27 | var startNewDeck = new Action(() => 28 | { 29 | _deckId = _azureCards.Deck.New(); 30 | 31 | for (int i = 0; i < 10; i++) 32 | _azureCards.Deck.Shuffle(_deckId); 33 | 34 | refreshCards(); 35 | }); 36 | 37 | if (string.IsNullOrEmpty(_deckId)) 38 | startNewDeck(); 39 | 40 | try 41 | { 42 | refreshCards(); 43 | } 44 | catch 45 | { 46 | startNewDeck(); 47 | } 48 | }$end$]]> 49 | 50 | 51 |
52 |
-------------------------------------------------------------------------------- /Snippets/07-on-navigated-to.snippet: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 |
5 | demo07-onnavigated-to 6 | demo07-onnavigated-to 7 | 8 | Microsoft Corporation 9 | 10 | Expansion 11 | 12 |
13 | 14 | 15 | 39 | 40 | 41 |
42 |
--------------------------------------------------------------------------------