From 41c2012d42d3f2f56d08cc8d5f7cd5e4d1d36799 Mon Sep 17 00:00:00 2001 From: Peli de Halleux Date: Thu, 14 Dec 2017 11:50:24 -0800 Subject: [PATCH] windows app squeleton --- pxtwapp/.gitignore | 295 ++++++++++++++++++ pxtwapp/pxtwapp.sln | 48 +++ .../pxtwapp/images/SmallTile.scale-200.png | Bin 0 -> 3720 bytes .../pxtwapp/images/SplashScreen.scale-200.png | Bin 0 -> 18534 bytes .../images/Square150x150Logo.scale-200.png | Bin 0 -> 6745 bytes ...x44Logo.altform-unplated_targetsize-48.png | Bin 0 -> 1980 bytes .../images/Square44x44Logo.scale-200.png | Bin 0 -> 2677 bytes .../images/Square44x44Logo.targetsize-48.png | Bin 0 -> 1980 bytes .../images/Wide310x150Logo.scale-200.png | Bin 0 -> 7672 bytes pxtwapp/pxtwapp/images/logo.png | Bin 0 -> 11178 bytes .../pxtwapp/images/storelogo.scale-200.png | Bin 0 -> 2922 bytes pxtwapp/pxtwapp/msapp-error.css | 40 +++ pxtwapp/pxtwapp/msapp-error.html | 24 ++ pxtwapp/pxtwapp/msapp-error.js | 47 +++ pxtwapp/pxtwapp/package.appxmanifest | 59 ++++ pxtwapp/pxtwapp/pxtwapp.jsproj | 91 ++++++ 16 files changed, 604 insertions(+) create mode 100644 pxtwapp/.gitignore create mode 100644 pxtwapp/pxtwapp.sln create mode 100644 pxtwapp/pxtwapp/images/SmallTile.scale-200.png create mode 100644 pxtwapp/pxtwapp/images/SplashScreen.scale-200.png create mode 100644 pxtwapp/pxtwapp/images/Square150x150Logo.scale-200.png create mode 100644 pxtwapp/pxtwapp/images/Square44x44Logo.altform-unplated_targetsize-48.png create mode 100644 pxtwapp/pxtwapp/images/Square44x44Logo.scale-200.png create mode 100644 pxtwapp/pxtwapp/images/Square44x44Logo.targetsize-48.png create mode 100644 pxtwapp/pxtwapp/images/Wide310x150Logo.scale-200.png create mode 100644 pxtwapp/pxtwapp/images/logo.png create mode 100644 pxtwapp/pxtwapp/images/storelogo.scale-200.png create mode 100644 pxtwapp/pxtwapp/msapp-error.css create mode 100644 pxtwapp/pxtwapp/msapp-error.html create mode 100644 pxtwapp/pxtwapp/msapp-error.js create mode 100644 pxtwapp/pxtwapp/package.appxmanifest create mode 100644 pxtwapp/pxtwapp/pxtwapp.jsproj diff --git a/pxtwapp/.gitignore b/pxtwapp/.gitignore new file mode 100644 index 00000000..7ade57d0 --- /dev/null +++ b/pxtwapp/.gitignore @@ -0,0 +1,295 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore + +# User-specific files +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ + +# Visual Studio 2015 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUNIT +*.VisualState.xml +TestResult.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ +**/Properties/launchSettings.json + +*_i.c +*_p.c +*_i.h +*.ilk +*.meta +*.obj +*.pch +*.pdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# JustCode is a .NET coding add-in +.JustCode + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# TODO: Comment the next line if you want to checkin your web deploy settings +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# The packages folder can be ignored because of Package Restore +**/packages/* +# except build/, which is used as an MSBuild target. +!**/packages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/packages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Typescript v1 declaration files +typings/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# JetBrains Rider +.idea/ +*.sln.iml + +# CodeRush +.cr/ + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs \ No newline at end of file diff --git a/pxtwapp/pxtwapp.sln b/pxtwapp/pxtwapp.sln new file mode 100644 index 00000000..a4f95a62 --- /dev/null +++ b/pxtwapp/pxtwapp.sln @@ -0,0 +1,48 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26430.15 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{262852C6-CD72-467D-83FE-5EEB1973A190}") = "pxtwapp", "pxtwapp\pxtwapp.jsproj", "{34E8CDE2-3991-414E-BB19-BFF4BD5E031A}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|ARM = Debug|ARM + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|ARM = Release|ARM + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|Any CPU.Deploy.0 = Debug|Any CPU + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|ARM.ActiveCfg = Debug|ARM + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|ARM.Build.0 = Debug|ARM + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|ARM.Deploy.0 = Debug|ARM + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|x64.ActiveCfg = Debug|x64 + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|x64.Build.0 = Debug|x64 + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|x64.Deploy.0 = Debug|x64 + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|x86.ActiveCfg = Debug|x86 + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|x86.Build.0 = Debug|x86 + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Debug|x86.Deploy.0 = Debug|x86 + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|Any CPU.Build.0 = Release|Any CPU + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|Any CPU.Deploy.0 = Release|Any CPU + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|ARM.ActiveCfg = Release|ARM + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|ARM.Build.0 = Release|ARM + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|ARM.Deploy.0 = Release|ARM + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|x64.ActiveCfg = Release|x64 + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|x64.Build.0 = Release|x64 + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|x64.Deploy.0 = Release|x64 + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|x86.ActiveCfg = Release|x86 + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|x86.Build.0 = Release|x86 + {34E8CDE2-3991-414E-BB19-BFF4BD5E031A}.Release|x86.Deploy.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/pxtwapp/pxtwapp/images/SmallTile.scale-200.png b/pxtwapp/pxtwapp/images/SmallTile.scale-200.png new file mode 100644 index 0000000000000000000000000000000000000000..898bd8b232a9c2842ad857037e78ac5f4a4b7f5b GIT binary patch literal 3720 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

_!kKio3=mcYX9AJ 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 d&NJ^=ly!UKkwJ){rbFr`g~rW-@QFAXls6_ z2>^h$yPFF_snD<7tD>yolNv2bQH^qhI|2YHN9zkxP1zrda6`ZWAo&CUq+VkNGNOfu>$}V!28l=m~y}afrR@-`UFJz1V#HJ<3nTar$oaNQo?U0 zW0O*|Ao(S>g?V;`xu?qhYf@EvqUyCtHNm8YXj)D9XAR*eJkhka{$vdig0K5mZJjxh zbh5q)($Ea8t+RYxf97@lDMG!~>xMG~l1*KseSMQfGug70V%64uib6d@?XafN&(az8 zZS6J;rfnz7j>WcTcb)6*KF{H}5J|2L&904PkERxQORHxK*`v7)-a_$eZTF;hc+u!S z^;O=a8t$}+B2j_Ax z^SFKk+>kf@am>ye!^1a)!o)7t9X{`VH~W51|F6B>Y5lwhL8pHUJ)IeBi3vTG9&DWz zZv802?op(DF3K+FChT#XS8<$kNj$9l&V|Ce-ngIr%Tj_~{tPERxZLzGuq7+#6*jv1 zQB2K$;_wB(cH~@R$2zA)-I6h`WPCs}F)}^=RyH*@JMm8XPCP#)dM_5uO2jg$_~VS^ zy?Aqmy*1ajwZPl_@ODckm{yvfB=d{Y^NTamrP+^5v!9mdWJ~WC<#Wq&>C&oHE|;#Z z&db*pR@N63E7OX#ImMcEeQiOpzOcC=`*UkWd4B&}NCGuo0N@({jqvo{{r?8wyQzL$ zxebj3w}86j zjzdG@uA`4xL7)(ev%--^Wp0ne-No^;+r^fr(kuE%eXRN+l2M47DoKk<4MKhjg>^42 z9j2a|C*&ZGJE^J0KKf|({0GO$Mg_m>euUE>- zP$@@Y5pf?*N?g93FL62W5o-!Q)R3SZ%{u3m!ItYdXtW|Yu>s5I5*+5S!ydDvx~5Jn zZ6nkY5@fy4z)X+>0!OA5GzbiAIY_jlnodH7>W8Yx%n*@<4oK%v?}DmU&$)}m_cM%U zp=K|J*7H=g9_+$QVl=QmbCo#51A4}59m4D#YDA?hgqNSbcO(&yn-v{!B)5#4Xxv~X zgS367&uf8Ik7N(n05i3zH*BxPm#jQY`q2ZGG3DH_wCIn&Eh%J*b8Y#-b9k$NF}+WpVeK0o(Ynwc?Z5eGIyA#OPy1A#@`B~F**PM literal 0 HcmV?d00001 diff --git a/pxtwapp/pxtwapp/images/Square44x44Logo.scale-200.png b/pxtwapp/pxtwapp/images/Square44x44Logo.scale-200.png new file mode 100644 index 0000000000000000000000000000000000000000..ea8816b3882a33f4b1a46f1e37dcf1e62363d9c4 GIT binary patch literal 2677 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 YD#rBq+TN~0=l^oR5@BQ3VCt6eFE6UoZvX%Q literal 0 HcmV?d00001 diff --git a/pxtwapp/pxtwapp/images/Square44x44Logo.targetsize-48.png b/pxtwapp/pxtwapp/images/Square44x44Logo.targetsize-48.png new file mode 100644 index 0000000000000000000000000000000000000000..64a270a54556bba19857b6e60a41a2597bb740a4 GIT binary patch literal 1980 zcmd^9`#;kQAOD_kgj_1+an4aWTRA-1GY^$q%56f;Wun|Inv`2LIXO6Tra3)22r-x9 zsW5Gr+stOOjk&bhu$W867)!<6#!-&5{)*>^=ly!UKkwJ){rbFr`g~rW-@QFAXls6_ z2>^h$yPFF_snD<7tD>yolNv2bQH^qhI|2YHN9zkxP1zrda6`ZWAo&CUq+VkNGNOfu>$}V!28l=m~y}afrR@-`UFJz1V#HJ<3nTar$oaNQo?U0 zW0O*|Ao(S>g?V;`xu?qhYf@EvqUyCtHNm8YXj)D9XAR*eJkhka{$vdig0K5mZJjxh zbh5q)($Ea8t+RYxf97@lDMG!~>xMG~l1*KseSMQfGug70V%64uib6d@?XafN&(az8 zZS6J;rfnz7j>WcTcb)6*KF{H}5J|2L&904PkERxQORHxK*`v7)-a_$eZTF;hc+u!S z^;O=a8t$}+B2j_Ax z^SFKk+>kf@am>ye!^1a)!o)7t9X{`VH~W51|F6B>Y5lwhL8pHUJ)IeBi3vTG9&DWz zZv802?op(DF3K+FChT#XS8<$kNj$9l&V|Ce-ngIr%Tj_~{tPERxZLzGuq7+#6*jv1 zQB2K$;_wB(cH~@R$2zA)-I6h`WPCs}F)}^=RyH*@JMm8XPCP#)dM_5uO2jg$_~VS^ zy?Aqmy*1ajwZPl_@ODckm{yvfB=d{Y^NTamrP+^5v!9mdWJ~WC<#Wq&>C&oHE|;#Z z&db*pR@N63E7OX#ImMcEeQiOpzOcC=`*UkWd4B&}NCGuo0N@({jqvo{{r?8wyQzL$ zxebj3w}86j zjzdG@uA`4xL7)(ev%--^Wp0ne-No^;+r^fr(kuE%eXRN+l2M47DoKk<4MKhjg>^42 z9j2a|C*&ZGJE^J0KKf|({0GO$Mg_m>euUE>- zP$@@Y5pf?*N?g93FL62W5o-!Q)R3SZ%{u3m!ItYdXtW|Yu>s5I5*+5S!ydDvx~5Jn zZ6nkY5@fy4z)X+>0!OA5GzbiAIY_jlnodH7>W8Yx%n*@<4oK%v?}DmU&$)}m_cM%U zp=K|J*7H=g9_+$QVl=QmbCo#51A4}59m4D#YDA?hgqNSbcO(&yn-v{!B)5#4Xxv~X zgS367&uf8Ik7N(n05i3zH*BxPm#jQY`q2ZGG3DH_wCIn&Eh%J*b8Y#-b9k$NF}+WpVeK0o(Ynwc?Z5eGIyA#OPy1A#@`B~F**PM literal 0 HcmV?d00001 diff --git a/pxtwapp/pxtwapp/images/Wide310x150Logo.scale-200.png b/pxtwapp/pxtwapp/images/Wide310x150Logo.scale-200.png new file mode 100644 index 0000000000000000000000000000000000000000..380fb999072d96eaff64ae1ac50d4be1b1b1bb88 GIT binary patch literal 7672 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 literal 0 HcmV?d00001 diff --git a/pxtwapp/pxtwapp/images/logo.png b/pxtwapp/pxtwapp/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f0aa99f2f63687b0f4891b4c1aff14cd1286cac4 GIT binary patch literal 11178 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 literal 0 HcmV?d00001 diff --git a/pxtwapp/pxtwapp/images/storelogo.scale-200.png b/pxtwapp/pxtwapp/images/storelogo.scale-200.png new file mode 100644 index 0000000000000000000000000000000000000000..23d0522d5768a664cc2c80eb9d10c0faa8e1ec47 GIT binary patch literal 2922 zcmd^B`9IT-AAeUOip2UP5l@&E3;?Q9_WtL(dpkbmhQL?>K)4bB#KZx>uWcx14ghXL0bt$*0Q7SJ;80** zy^R3?>;kT!?cm!5A&!P9jLT(vJmz07yKCN8ulw5H@H52)Sa=3o``@w01v+{JhdG;j zdf5j1phEr7QJy9dUS@&e&Vdm(?u6Leh7bcnh(6)>Z-vEqq})+@RigZws$4`>c~z?V znyOk{rcqR;R$6(6TB%-6gH%;ROUiYq6}qJr=SnNjQ!Dk#sxFn&pl@ols%y`_t<$cp z*RHESU*Bj{S*_dHtlz@WXD|(zZI{|uhOG9h#ZO=rG}Ed#a9XuROQY4>8dP_f&Qy}mb z2z&+KE>fzONVWQBEdqqtpnhXoPCf~XO}J?HcBPUqsUYd>%^NW>c@ z;q)H5U!-^$CV3b?^fFEHHY55urux8B{VcNmO)`V5p9UiyhdVxvx?T`!`6}GHIMOET zemFJ8t}5OkpXl}?-t!g7x8z|^X)1x5N~p{Xt;&w1-4+3}!65J)YYc%j-($;*)volx{AmyEk^IFKO&uc1K5AH#fJZE4PpTRM7owpgV11 zBI7R$seE3+U{6_Zci~WP=}3S1Xn%cgcT-tJ8|V1MU`fIT|c`(e0$e58G9lrufnKl@=wI5s#pJ~BBrHvNA5CTGW|<|cklwyn*u*FN!o&i1a(^{svxUR`{*y7+!_VQOYx z_-S!^?#tx-!qnWinT2mN^WSF{mu8lhKdmlJ{#g06`eSzO$M#|X&rJOK&tJp?C1D@%1Pf>+oL?YUj)05yBklRY;srx~n-^yj@-_umoSy-su4vnJN zkX+3W<{y<|63Ql&f0ZdmSJKeNdz4YPu!fWd=~gnuFD+#zBrdQ3{N>|mx}<#GAH_eH zIIC=_I`QL4L?oobT(_uM^slQnVXhx$p`W!^37Kr0g^AqN{0U@DskflnO(beYN~j={ zpGm^QYY4tt5~`!WFX{GwEBS_uPq$lKp3@90w0}?5+`T*9@6Au)OW)Z&op}i-YsXPI zo=4ZC)h27WdTWNIK&kq<)ltXzI>No!g0kK{-ordNv75Rz9ND zdotp{<+ZF}&e;}k2!8lhbRkNe+=BI!pV;I`IxRO$Q2jLu6vsA9u~Uee>1*xMdzTvb z_kX5)J$>j!F2_}(Z;IEbIgn;GEMFVJ(;ZMY`;+!_ROv06=2x9aF5hYi;fjw2Fc0p! zniyMir1$MRG^NuW*>b=tpo$K9qZEvI%7mI%O80Djm(@PZ!cd+-6)mf0)RS=geoGZ6 zWwsPBpJx>eyBE%Y_f6$BUYR=gA7@mIc~;{tF6)$ug8#v3RxX6Ymk~JwI-}#Aoku?4 z=xkil5lq6WVto45(rUT0;)Om24;_xvl{6@xeHu$pjLr#@B5RvazFV(MWU20~Ja$?o zP7a}iL=ksp=p8JU6FVgUQ;{ai+V$EAr?74p%w$A#yiwi8Ddu-J&gh6#P(q<9ZBC{# zHwTwKHid_LyE^pJwxP!V!8N7(WzLBT_F)pSAb1hdYT2RZ#0PGD$l^%3e^AhY1c~s9 z;!Sb7+NaNliI40QclC0v9OO{`t+*+V!_NO~m)<#0s4%)KQsi>D^OFWSx>{n9g?kp{ zk-N_sg7gnhF~pNiJ)DjbPFlQzb49^F6UM=1VP~(F9VnLjLtsE9oYP~$xKav-Y*5;L zyJgK((!=F2^6?d!w-ubV=p_}UV)<{limH>M6apWm01`etC+rJBn9mlt9T?r(hyzP`F4C`I_>WeubL~xlQr4@ZN6E%stDB1Xy@-lU7b^ z_H%zXU19`z^MavwV;mFY)Gy}0x6C)~G&qY$O;OnafeAWbq*&I$&{*c_!`2LN=W}m2 zQ4Ecu`Q7Hlkn?V|%NrVU2~EsOc4hAYFWRqDmlTw8bjcjA(J@Z`K&t5v4zx^ii=PDyBK7JDl#O^c2gq_We-qC%R5ds4JeUJeF3AZ*YH*q2U4+oku AU;qFB literal 0 HcmV?d00001 diff --git a/pxtwapp/pxtwapp/msapp-error.css b/pxtwapp/pxtwapp/msapp-error.css new file mode 100644 index 00000000..1d8f00db --- /dev/null +++ b/pxtwapp/pxtwapp/msapp-error.css @@ -0,0 +1,40 @@ +body { + margin: 10px; + background-color: #6633cc; + color: #FFFFFF; + font-family: 'Open Sans', 'Helvetica Neue', Arial, Helvetica, sans-serif; +} + +.paramName { + font-size: 10px; + font-weight: bold; +} + +.paramValue { + font-size: 10px; + padding-left: 10px; +} + +.param { + margin-bottom: 8px; +} + +#retryButton { + box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; + outline: none; + border: none; + vertical-align: baseline; + padding: 0.78571429em 1.5em 0.78571429em; + text-transform: none; + font-weight: bold; + font-style: normal; + text-align: center; + text-decoration: none; + border-radius: 0.28571429rem; + background-color: #ff8b27; + margin: 15px 10px 100px 10px; + width: 80px; + height: 35px; + font-size: 15px; + color: #FFFFFF; +} diff --git a/pxtwapp/pxtwapp/msapp-error.html b/pxtwapp/pxtwapp/msapp-error.html new file mode 100644 index 00000000..33303cf1 --- /dev/null +++ b/pxtwapp/pxtwapp/msapp-error.html @@ -0,0 +1,24 @@ + + + + Oops! + + + + +

Oops! Please connect to the Internet.

+ +
+ URL: + +
+
+ HTTP status: + +
+
+ Failure name: + +
+ + diff --git a/pxtwapp/pxtwapp/msapp-error.js b/pxtwapp/pxtwapp/msapp-error.js new file mode 100644 index 00000000..ef5e2bef --- /dev/null +++ b/pxtwapp/pxtwapp/msapp-error.js @@ -0,0 +1,47 @@ +(function () { + var validParameterNames = ["httpStatus", "failureName", "failureUrl"]; + + function parseQueryParameters() { + var query = location.search.slice(1); + return query.split("&").reduce(function (queryParameters, rawPair) { + var pair = rawPair.split("=").map(decodeURIComponent); + queryParameters[pair[0]] = pair[1]; + return queryParameters; + }, {}); + } + + function initialize() { + var queryParameters = parseQueryParameters(); + var url = queryParameters["failureUrl"]; + var retryButton = document.getElementById("retryButton"); + + if (url) { + retryButton.addEventListener("click", (e) => { + window.location.href = url; + }); + } else { + retryButton.style.display = none; + } + + validParameterNames.forEach(function (parameterName) { + var parameterValue = queryParameters[parameterName]; + + if (parameterValue) { + document.getElementById(parameterName + "Value").textContent = parameterValue; + } else { + document.getElementById(parameterName).remove(); + } + }); + } + + function updateOnlineStatus(e) { + var queryParameters = parseQueryParameters(); + var url = queryParameters["failureUrl"]; + if (url) { + window.location.href = url; + } + } + + window.addEventListener("online", updateOnlineStatus); + document.addEventListener("DOMContentLoaded", initialize); +}()); diff --git a/pxtwapp/pxtwapp/package.appxmanifest b/pxtwapp/pxtwapp/package.appxmanifest new file mode 100644 index 00000000..2978d804 --- /dev/null +++ b/pxtwapp/pxtwapp/package.appxmanifest @@ -0,0 +1,59 @@ + + + + + + Microsoft MakeCode for Calliope Mini + Calliope.cc + images\storelogo.png + + + + + + + + + + + + + + + + + + + + + + + + Microsoft MakeCode binary file + + .hex + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/pxtwapp/pxtwapp/pxtwapp.jsproj b/pxtwapp/pxtwapp/pxtwapp.jsproj new file mode 100644 index 00000000..b43b3d02 --- /dev/null +++ b/pxtwapp/pxtwapp/pxtwapp.jsproj @@ -0,0 +1,91 @@ + + + + + Debug + AnyCPU + + + Debug + ARM + + + Debug + x64 + + + Debug + x86 + + + Release + AnyCPU + + + Release + ARM + true + + + Release + x64 + true + + + Release + x86 + true + + + + 34e8cde2-3991-414e-bb19-bff4bd5e031a + + + + 14.0 + + + + + UAP + 10.0.15063.0 + 10.0.10240.0 + $(VersionNumberMajor).$(VersionNumberMinor) + en-US + pxtwapp_TemporaryKey.pfx + true + Always + x86|x64|arm + BA3D3E800661F789BAE7216F8D6F76608D1C4D62 + + + + Designer + + + + + + + + + + + + + + + + + + \ No newline at end of file