diff --git a/.vscode/tasks.json b/.vscode/tasks.json
index 2bb99f430..d8758caa2 100644
--- a/.vscode/tasks.json
+++ b/.vscode/tasks.json
@@ -1,16 +1,18 @@
{
- "version": "0.1.0",
+ "version": "2.0.0",
"command": "dotnet",
- "isShellCommand": true,
"args": [],
"tasks": [
{
- "taskName": "build",
+ "label": "build",
+ "type": "shell",
+ "command": "dotnet",
"args": [
+ "build",
"${workspaceRoot}/src/GraphQL.Relay.Todo/GraphQL.Relay.Todo.csproj"
],
- "isBuildCommand": true,
- "problemMatcher": "$msCompile"
+ "problemMatcher": "$msCompile",
+ "group": "build"
}
]
}
diff --git a/.vscode/tasks.json.old b/.vscode/tasks.json.old
new file mode 100644
index 000000000..2bb99f430
--- /dev/null
+++ b/.vscode/tasks.json.old
@@ -0,0 +1,16 @@
+{
+ "version": "0.1.0",
+ "command": "dotnet",
+ "isShellCommand": true,
+ "args": [],
+ "tasks": [
+ {
+ "taskName": "build",
+ "args": [
+ "${workspaceRoot}/src/GraphQL.Relay.Todo/GraphQL.Relay.Todo.csproj"
+ ],
+ "isBuildCommand": true,
+ "problemMatcher": "$msCompile"
+ }
+ ]
+}
diff --git a/GraphQL.Relay.sln b/GraphQL.Relay.sln
index 279647d72..2d26867ba 100644
--- a/GraphQL.Relay.sln
+++ b/GraphQL.Relay.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.31205.134
+# Visual Studio Version 17
+VisualStudioVersion = 17.0.31423.177
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GraphQL.Relay", "src\GraphQL.Relay\GraphQL.Relay.csproj", "{46076F16-C4F7-4879-903D-70D75DD8B3EF}"
EndProject
@@ -8,7 +8,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GraphQL.Relay.Test", "src\G
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GraphQL.Relay.StarWars", "src\GraphQL.Relay.StarWars\GraphQL.Relay.StarWars.csproj", "{43F14E11-5D11-427C-B4F7-D68B2339E837}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GraphQL.Relay.Todo", "src\GraphQL.Relay.Todo\GraphQL.Relay.Todo.csproj", "{15AFC7EC-11E6-469F-87DF-D1E396463BE9}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GraphQL.Relay.Todo", "src\GraphQL.Relay.Todo\GraphQL.Relay.Todo.csproj", "{3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".github", ".github", "{2F92B771-95CF-4FC3-AE9A-52E9273349F1}"
EndProject
@@ -71,18 +71,18 @@ Global
{43F14E11-5D11-427C-B4F7-D68B2339E837}.Release|x64.Build.0 = Release|Any CPU
{43F14E11-5D11-427C-B4F7-D68B2339E837}.Release|x86.ActiveCfg = Release|Any CPU
{43F14E11-5D11-427C-B4F7-D68B2339E837}.Release|x86.Build.0 = Release|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Debug|x64.ActiveCfg = Debug|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Debug|x64.Build.0 = Debug|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Debug|x86.ActiveCfg = Debug|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Debug|x86.Build.0 = Debug|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Release|Any CPU.Build.0 = Release|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Release|x64.ActiveCfg = Release|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Release|x64.Build.0 = Release|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Release|x86.ActiveCfg = Release|Any CPU
- {15AFC7EC-11E6-469F-87DF-D1E396463BE9}.Release|x86.Build.0 = Release|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Debug|x64.Build.0 = Debug|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Debug|x86.Build.0 = Debug|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Release|x64.ActiveCfg = Release|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Release|x64.Build.0 = Release|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Release|x86.ActiveCfg = Release|Any CPU
+ {3B6E249F-3C0B-4BDD-B2DA-7ED9B2BDFF15}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/src/GraphQL.Relay.Todo/.babelrc b/src/GraphQL.Relay.Todo/.babelrc
deleted file mode 100644
index d4afc3c21..000000000
--- a/src/GraphQL.Relay.Todo/.babelrc
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "presets": [
- "jason"
- ],
- "plugins": [
- "relay"
- ]
-}
diff --git a/src/GraphQL.Relay.Todo/.gitignore b/src/GraphQL.Relay.Todo/.gitignore
new file mode 100644
index 000000000..8f8b43bb1
--- /dev/null
+++ b/src/GraphQL.Relay.Todo/.gitignore
@@ -0,0 +1,232 @@
+## Ignore Visual Studio temporary files, build results, and
+## files generated by popular Visual Studio add-ons.
+
+# 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/
+build/
+bld/
+bin/
+Bin/
+obj/
+Obj/
+
+# Visual Studio 2015 cache/options directory
+.vs/
+/wwwroot/dist/
+
+# 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
+
+*_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
+
+# 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
+
+# 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
+
+# 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
+
+# Microsoft Azure Build Output
+csx/
+*.build.csdef
+
+# Microsoft Azure Emulator
+ecf/
+rcf/
+
+# Microsoft Azure ApplicationInsights config file
+ApplicationInsights.config
+
+# Windows Store app package directory
+AppPackages/
+BundleArtifacts/
+
+# 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
+*.pfx
+*.publishsettings
+orleans.codegen.cs
+
+/node_modules
+
+# 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
+
+# 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
+
+# Visual Studio 6 build log
+*.plg
+
+# Visual Studio 6 workspace options file
+*.opt
+
+# 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
+
+# FAKE - F# Make
+.fake/
diff --git a/src/GraphQL.Relay.Todo/ClientApp/.env b/src/GraphQL.Relay.Todo/ClientApp/.env
new file mode 100644
index 000000000..6ce384e5c
--- /dev/null
+++ b/src/GraphQL.Relay.Todo/ClientApp/.env
@@ -0,0 +1 @@
+BROWSER=none
diff --git a/src/GraphQL.Relay.Todo/ClientApp/.env.development b/src/GraphQL.Relay.Todo/ClientApp/.env.development
new file mode 100644
index 000000000..2dcec8bed
--- /dev/null
+++ b/src/GraphQL.Relay.Todo/ClientApp/.env.development
@@ -0,0 +1 @@
+PORT=5002
diff --git a/src/GraphQL.Relay.Todo/ClientApp/README.md b/src/GraphQL.Relay.Todo/ClientApp/README.md
new file mode 100644
index 000000000..5a608cbdc
--- /dev/null
+++ b/src/GraphQL.Relay.Todo/ClientApp/README.md
@@ -0,0 +1,2228 @@
+This project was bootstrapped with [Create React App](https://github.com/facebookincubator/create-react-app).
+
+Below you will find some information on how to perform common tasks.
+You can find the most recent version of this guide [here](https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md).
+
+## Table of Contents
+
+- [Updating to New Releases](#updating-to-new-releases)
+- [Sending Feedback](#sending-feedback)
+- [Folder Structure](#folder-structure)
+- [Available Scripts](#available-scripts)
+ - [npm start](#npm-start)
+ - [npm test](#npm-test)
+ - [npm run build](#npm-run-build)
+ - [npm run eject](#npm-run-eject)
+- [Supported Language Features and Polyfills](#supported-language-features-and-polyfills)
+- [Syntax Highlighting in the Editor](#syntax-highlighting-in-the-editor)
+- [Displaying Lint Output in the Editor](#displaying-lint-output-in-the-editor)
+- [Debugging in the Editor](#debugging-in-the-editor)
+- [Formatting Code Automatically](#formatting-code-automatically)
+- [Changing the Page `