├── .editorconfig ├── .gitattributes ├── .gitignore ├── .gitmodules ├── .nuget ├── NuGet.Config ├── NuGet.exe ├── NuGet.targets └── packages.config ├── .travis.yml ├── Directory.Build.props ├── LiveSharp-testonly.sln ├── LiveSharp.Build.sln ├── LiveSharp.Rider.sln ├── LiveSharp.TestWorkbench.sln ├── LiveSharp.sln ├── README.md ├── XamarinFormsTest.sln ├── azure-pipelines.yml ├── deps └── Razor │ ├── Microsoft.AspNetCore.Razor.Language.dll │ ├── Microsoft.AspNetCore.Razor.Language.dll_org │ └── Microsoft.CodeAnalysis.Razor.dll ├── global.json ├── resources ├── icon.psd ├── icon_128.png ├── icon_256.png ├── icon_512.png └── icon_64.png ├── runtests.cmd ├── samples ├── ConsoleSample_FW471 │ ├── ConsoleSample │ │ ├── App.config │ │ ├── ConsoleSample.csproj │ │ ├── Program.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── livesharp.rules │ └── ConsoleSample_FW471.sln └── XFSample │ ├── Untitled-8.txt │ ├── XFSample.sln │ └── XFSample │ ├── XFSample.Android │ ├── Assets │ │ └── AboutAssets.txt │ ├── MainActivity.cs │ ├── Properties │ │ ├── AndroidManifest.xml │ │ └── AssemblyInfo.cs │ ├── Resources │ │ ├── AboutResources.txt │ │ ├── Resource.designer.cs │ │ ├── drawable │ │ │ └── xamarin_logo.png │ │ ├── layout │ │ │ ├── Tabbar.axml │ │ │ └── Toolbar.axml │ │ ├── mipmap-anydpi-v26 │ │ │ ├── icon.xml │ │ │ └── icon_round.xml │ │ ├── mipmap-hdpi │ │ │ ├── Icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-mdpi │ │ │ ├── icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-xhdpi │ │ │ ├── Icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-xxhdpi │ │ │ ├── Icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-xxxhdpi │ │ │ ├── Icon.png │ │ │ └── launcher_foreground.png │ │ └── values │ │ │ ├── colors.xml │ │ │ └── styles.xml │ └── XFSample.Android.csproj │ ├── XFSample.UWP │ ├── App.xaml │ ├── App.xaml.cs │ ├── Assets │ │ ├── LargeTile.scale-100.png │ │ ├── LargeTile.scale-200.png │ │ ├── LargeTile.scale-400.png │ │ ├── SmallTile.scale-100.png │ │ ├── SmallTile.scale-200.png │ │ ├── SmallTile.scale-400.png │ │ ├── SplashScreen.scale-100.png │ │ ├── SplashScreen.scale-200.png │ │ ├── SplashScreen.scale-400.png │ │ ├── Square150x150Logo.scale-100.png │ │ ├── Square150x150Logo.scale-200.png │ │ ├── Square150x150Logo.scale-400.png │ │ ├── Square44x44Logo.altform-unplated_targetsize-16.png │ │ ├── Square44x44Logo.altform-unplated_targetsize-256.png │ │ ├── Square44x44Logo.altform-unplated_targetsize-48.png │ │ ├── Square44x44Logo.scale-100.png │ │ ├── Square44x44Logo.scale-200.png │ │ ├── Square44x44Logo.scale-400.png │ │ ├── Square44x44Logo.targetsize-16.png │ │ ├── Square44x44Logo.targetsize-256.png │ │ ├── Square44x44Logo.targetsize-48.png │ │ ├── StoreLogo.backup.png │ │ ├── StoreLogo.scale-100.png │ │ ├── StoreLogo.scale-200.png │ │ ├── StoreLogo.scale-400.png │ │ ├── Wide310x150Logo.scale-100.png │ │ ├── Wide310x150Logo.scale-200.png │ │ └── Wide310x150Logo.scale-400.png │ ├── MainPage.xaml │ ├── MainPage.xaml.cs │ ├── Package.appxmanifest │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ └── Default.rd.xml │ ├── XFSample.UWP.csproj │ ├── add.png │ └── xamarin_logo.png │ ├── XFSample.iOS │ ├── AppDelegate.cs │ ├── Assets.xcassets │ │ └── AppIcon.appiconset │ │ │ ├── Contents.json │ │ │ ├── Icon1024.png │ │ │ ├── Icon120.png │ │ │ ├── Icon152.png │ │ │ ├── Icon167.png │ │ │ ├── Icon180.png │ │ │ ├── Icon20.png │ │ │ ├── Icon29.png │ │ │ ├── Icon40.png │ │ │ ├── Icon58.png │ │ │ ├── Icon60.png │ │ │ ├── Icon76.png │ │ │ ├── Icon80.png │ │ │ └── Icon87.png │ ├── Entitlements.plist │ ├── Info.plist │ ├── Main.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ ├── Default-568h@2x.png │ │ ├── Default-Portrait.png │ │ ├── Default-Portrait@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── LaunchScreen.storyboard │ │ ├── tab_about.png │ │ ├── tab_about@2x.png │ │ ├── tab_about@3x.png │ │ ├── tab_feed.png │ │ ├── tab_feed@2x.png │ │ ├── tab_feed@3x.png │ │ ├── xamarin_logo.png │ │ ├── xamarin_logo@2x.png │ │ └── xamarin_logo@3x.png │ └── XFSample.iOS.csproj │ └── XFSample │ ├── App.xaml │ ├── App.xaml.cs │ ├── Models │ └── Item.cs │ ├── Services │ ├── IDataStore.cs │ └── MockDataStore.cs │ ├── ViewModels │ ├── AboutViewModel.cs │ ├── BaseViewModel.cs │ ├── ItemDetailViewModel.cs │ └── ItemsViewModel.cs │ ├── Views │ ├── AboutPage.xaml │ ├── AboutPage.xaml.cs │ ├── ItemDetailPage.xaml │ ├── ItemDetailPage.xaml.cs │ ├── ItemsPage.xaml │ ├── ItemsPage.xaml.cs │ ├── MainPage.xaml │ ├── MainPage.xaml.cs │ ├── NewItemPage.xaml │ └── NewItemPage.xaml.cs │ ├── XFSample.csproj │ └── livesharp.rules ├── scripts ├── 2.0.37.version ├── LiveSharp.nuspec ├── build-nuget.cmd ├── build-nugets.ps1 ├── upload-nuget.cmd └── upload-nugets.ps1 ├── src ├── LiveSharp.Build │ ├── BuildLogger.cs │ ├── BuildTaskLogger.cs │ ├── IgnoreFile.cs │ ├── LiveBlazor-local.targets │ ├── LiveBlazor.targets │ ├── LiveSharp-local.targets │ ├── LiveSharp-noruntime.targets │ ├── LiveSharp.Build.csproj │ ├── LiveSharp.targets │ ├── LiveSharpTask.cs │ ├── PlatformCheckTask.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── _config.cs.template │ └── livesharp.blazor.config ├── LiveSharp.CodedUiTest │ ├── App.config │ ├── LiveSharp.CodedUiTest.csproj │ └── Program.cs ├── LiveSharp.Common │ ├── Events │ │ ├── Event.cs │ │ ├── EventBus.cs │ │ ├── EventExtensions.cs │ │ ├── IEventBus.cs │ │ └── WorkspaceEvent.cs │ ├── IDebugger.cs │ ├── IInjectedMethodsService.cs │ ├── ILiveSharpWorkspace.cs │ ├── InjectedMethodInfo.cs │ └── LiveSharp.Common.csproj ├── LiveSharp.ConsoleHost │ ├── LiveSharp.ConsoleHost.csproj │ └── Program.cs ├── LiveSharp.CoreConsoleSample.sln ├── LiveSharp.Dashboard │ ├── App.razor │ ├── BlazorHub.cs │ ├── BlazorHubClient.cs │ ├── DashboardLogger.cs │ ├── LiveSharp.Dashboard.csproj │ ├── LiveSharp.dashboard.cs │ ├── Models │ │ └── DebuggerTreeTypeViewModel.cs │ ├── Pages │ │ ├── DebuggerBox.razor │ │ ├── Error.razor │ │ ├── Index.razor │ │ ├── InspectorBox.razor │ │ ├── LogBox.razor │ │ ├── StatsBox.razor │ │ └── _Host.cshtml │ ├── Program.cs │ ├── ServerHandshake.cs │ ├── Services │ │ └── DebuggingService.cs │ ├── Shared │ │ ├── MainLayout.razor │ │ ├── NavMenu.razor │ │ └── SurveyPrompt.razor │ ├── Startup.cs │ ├── WorkspaceInitializer.cs │ ├── _Imports.razor │ ├── appsettings.Development.json │ ├── appsettings.json │ ├── license.key │ └── wwwroot │ │ ├── css │ │ └── site.css │ │ └── favicon.ico ├── LiveSharp.Interfaces │ ├── ILiveSharpTransport.cs │ ├── ILiveSharpUpdateHandler.cs │ ├── ILogger.cs │ ├── LiveSharp.Interfaces.csproj │ └── interfaces.snk ├── LiveSharp.MakeInternalsVisible │ ├── LiveSharp.MakeInternalsVisible.csproj │ └── Program.cs ├── LiveSharp.ProjectTester │ ├── LiveSharp.ProjectTester.csproj │ └── Program.cs ├── LiveSharp.Rewriters │ ├── AttributeLoader.cs │ ├── BlazorDiReplaceRewriter.cs │ ├── CecilExtensions.cs │ ├── DelegateCacheRewriter.cs │ ├── DevirtualizationRewriter.cs │ ├── IIlRewriter.cs │ ├── IlRewritersProcessor.cs │ ├── InjectRule.cs │ ├── InpcRewriter.cs │ ├── InterceptCallToAnyRewriter.cs │ ├── InterceptCallToRewriter.cs │ ├── LiveSharp.Rewriters.csproj │ ├── LiveSharpStartRewriter.cs │ ├── MainAssemblyRewriter.cs │ ├── RewriteLogger.cs │ ├── RewriterBase.cs │ ├── RuntimeMembers.cs │ ├── RuntimeRewriter.cs │ ├── Serialization │ │ ├── AssemblyDiff.cs │ │ ├── DocumentSerializer.cs │ │ ├── MethodDefinitionSerializer.cs │ │ ├── TypeElement.cs │ │ └── TypeRegistry.cs │ ├── UpdateHookRewriter.cs │ └── WildcardMatch.cs ├── LiveSharp.Rider │ ├── .classpath │ ├── .gitattributes │ ├── .gitignore │ ├── .project │ ├── .settings │ │ └── org.eclipse.buildship.core.prefs │ ├── CHANGELOG.md │ ├── README.md │ ├── build.gradle │ ├── buildPlugin.ps1 │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ ├── out │ │ └── production │ │ │ ├── classes │ │ │ ├── META-INF │ │ │ │ └── livesharp.kotlin_module │ │ │ └── com │ │ │ │ ├── intellij │ │ │ │ └── uiDesigner │ │ │ │ │ └── core │ │ │ │ │ ├── AbstractLayout.class │ │ │ │ │ ├── DimensionInfo.class │ │ │ │ │ ├── GridConstraints.class │ │ │ │ │ ├── GridLayoutManager.class │ │ │ │ │ ├── HorizontalInfo.class │ │ │ │ │ ├── LayoutState.class │ │ │ │ │ ├── Spacer.class │ │ │ │ │ ├── SupportCode$TextWithMnemonic.class │ │ │ │ │ ├── SupportCode.class │ │ │ │ │ ├── Util.class │ │ │ │ │ └── VerticalInfo.class │ │ │ │ ├── jetbrains │ │ │ │ └── rider │ │ │ │ │ └── model │ │ │ │ │ ├── FileEvent$Companion.class │ │ │ │ │ ├── FileEvent$print$1.class │ │ │ │ │ ├── FileEvent.class │ │ │ │ │ ├── LiveSharpModel$Companion.class │ │ │ │ │ ├── LiveSharpModel$print$1.class │ │ │ │ │ ├── LiveSharpModel.class │ │ │ │ │ ├── LiveSharpModel_GeneratedKt$liveSharpModel$1.class │ │ │ │ │ ├── LiveSharpModel_GeneratedKt.class │ │ │ │ │ ├── MyEnum$$special$$inlined$enum$1.class │ │ │ │ │ ├── MyEnum$$special$$inlined$enum$2.class │ │ │ │ │ ├── MyEnum$Companion.class │ │ │ │ │ └── MyEnum.class │ │ │ │ └── livesharp │ │ │ │ ├── ExpirationForm.class │ │ │ │ ├── GsonUtil.class │ │ │ │ ├── LicenseAction$1.class │ │ │ │ ├── LicenseAction.class │ │ │ │ ├── LicenseForm$1.class │ │ │ │ ├── LicenseForm$2.class │ │ │ │ ├── LicenseForm.class │ │ │ │ ├── LiveIcons.class │ │ │ │ ├── MainAction.class │ │ │ │ ├── MainForm.class │ │ │ │ ├── NewsForm.class │ │ │ │ ├── ProjectService.class │ │ │ │ ├── impl │ │ │ │ ├── FileEventsListener$ActionListenerImpl.class │ │ │ │ ├── FileEventsListener.class │ │ │ │ └── ProjectServiceImpl.class │ │ │ │ └── models │ │ │ │ ├── LicenseResponseItem.class │ │ │ │ └── NewsItem.class │ │ │ └── resources │ │ │ ├── META-INF │ │ │ ├── plugin.xml │ │ │ └── pluginIcon.svg │ │ │ └── icons │ │ │ ├── icon.png │ │ │ ├── icon.svg │ │ │ ├── icon_128.png │ │ │ ├── icon_256.png │ │ │ ├── icon_512.png │ │ │ ├── icon_64.png │ │ │ ├── paypal.png │ │ │ └── test.svg │ ├── protocol │ │ ├── .classpath │ │ ├── .project │ │ ├── .settings │ │ │ └── org.eclipse.buildship.core.prefs │ │ ├── build.gradle │ │ ├── out │ │ │ └── production │ │ │ │ └── classes │ │ │ │ ├── META-INF │ │ │ │ └── protocol.kotlin_module │ │ │ │ └── model │ │ │ │ └── rider │ │ │ │ ├── LiveSharpModel$MyEnum$1.class │ │ │ │ ├── LiveSharpModel$fileEvent$1.class │ │ │ │ └── LiveSharpModel.class │ │ └── src │ │ │ └── main │ │ │ └── kotlin │ │ │ └── model │ │ │ └── rider │ │ │ └── LiveSharpModel.kt │ ├── publishPlugin.ps1 │ ├── runVisualStudio.ps1 │ ├── settings.gradle │ ├── settings.ps1 │ ├── src │ │ ├── dotnet │ │ │ ├── Directory.Build.props │ │ │ ├── LiveSharp.ReSharperRider.Tests │ │ │ │ ├── LiveSharp.RiderPlugin.Tests.csproj │ │ │ │ ├── SampleHighlightingTest.cs │ │ │ │ ├── TestEnvironment.cs │ │ │ │ └── test │ │ │ │ │ └── data │ │ │ │ │ ├── CSharp │ │ │ │ │ ├── SampleTest.cs │ │ │ │ │ └── SampleTest.cs.gold │ │ │ │ │ └── nuget.config │ │ │ ├── LiveSharp.ReSharperRider │ │ │ │ ├── ISolutionStateTracker.cs │ │ │ │ ├── LiveSharp.ReSharperPlugin.csproj │ │ │ │ ├── LiveSharp.RiderPlugin.csproj │ │ │ │ ├── Model │ │ │ │ │ └── LiveSharpModel.Generated.cs │ │ │ │ ├── RiderStartup.cs │ │ │ │ ├── Samples │ │ │ │ │ ├── SampleComponent.cs │ │ │ │ │ ├── SampleFix.cs │ │ │ │ │ ├── SampleHighlighting.cs │ │ │ │ │ ├── SampleProblemAnalyzer.cs │ │ │ │ │ ├── SignalEmitter.cs │ │ │ │ │ └── SignalListener.cs │ │ │ │ ├── SettingsModel.cs │ │ │ │ ├── SolutionStateTracker.cs │ │ │ │ └── Worker.cs │ │ │ └── Plugin.props │ │ └── rider │ │ │ └── main │ │ │ ├── com │ │ │ └── livesharp │ │ │ │ ├── ExpirationForm.form │ │ │ │ ├── ExpirationForm.java │ │ │ │ ├── GsonUtil.java │ │ │ │ ├── LicenseAction.java │ │ │ │ ├── LicenseForm.form │ │ │ │ ├── LicenseForm.java │ │ │ │ ├── LiveIcons.java │ │ │ │ ├── MainAction.java │ │ │ │ ├── MainForm.form │ │ │ │ ├── MainForm.java │ │ │ │ ├── NewsForm.form │ │ │ │ ├── NewsForm.java │ │ │ │ ├── ProjectService.java │ │ │ │ ├── impl │ │ │ │ ├── FileEventsListener.kt │ │ │ │ └── ProjectServiceImpl.java │ │ │ │ ├── models │ │ │ │ ├── LicenseResponseItem.java │ │ │ │ └── NewsItem.java │ │ │ │ └── template.html │ │ │ ├── kotlin │ │ │ └── livesharp │ │ │ │ └── model │ │ │ │ └── LiveSharpModel.Generated.kt │ │ │ └── resources │ │ │ ├── META-INF │ │ │ ├── plugin.xml │ │ │ └── pluginIcon.svg │ │ │ └── icons │ │ │ ├── icon.png │ │ │ ├── icon.svg │ │ │ ├── icon_128.png │ │ │ ├── icon_256.png │ │ │ ├── icon_512.png │ │ │ ├── icon_64.png │ │ │ ├── paypal.png │ │ │ └── test.svg │ └── tools │ │ ├── 7za.exe │ │ ├── nuget.exe │ │ └── vswhere.exe ├── LiveSharp.Runtime.NS21 │ ├── Extensions.cs │ ├── IlDynamicMethodCompiler.cs │ ├── LiveSharp.Runtime.NS21.csproj │ └── LiveSharpRuntimeExtNS21.cs ├── LiveSharp.Runtime │ ├── DashboardUpdateHandler.cs │ ├── DelegateSignature.cs │ ├── Handshake │ │ ├── HttpClientHandshake.cs │ │ ├── IHandshakeClient.cs │ │ ├── IsExternalInit.cs │ │ ├── ServerHandshake.cs │ │ ├── ServerInfo.cs │ │ ├── TcpClientHandshake.cs │ │ └── TestHarnessHandshake.cs │ ├── IL │ │ ├── CompilerContext.cs │ │ ├── CompilerHelpers.cs │ │ ├── CompilerRegisterBuilder.cs │ │ ├── DebuggingIlRewriter.cs │ │ ├── DelegateBuilder.cs │ │ ├── Devirtualizer.cs │ │ ├── DocumentMetadata.cs │ │ ├── GenericTypeParameter.cs │ │ ├── IlCompilationException.cs │ │ ├── IlExpression.cs │ │ ├── IlExpressionCompiler.cs │ │ ├── IlExpressionCompilerHandlers.cs │ │ ├── IlInstruction.cs │ │ ├── IlInstructionList.cs │ │ ├── IlParser.cs │ │ ├── IlStack.cs │ │ ├── InstructionContext.cs │ │ ├── LocalMetadata.cs │ │ ├── ParameterMetadata.cs │ │ ├── StackSlotExpression.cs │ │ ├── StackSlotSubstituteVisitor.cs │ │ ├── TryBlockInfo.cs │ │ ├── VirtualMethodInfoBodyDeserializer.cs │ │ └── VirtualMethodInfoDeserializer.cs │ ├── ILiveSharpRuntimeExt.cs │ ├── Infrastructure │ │ ├── EnumerableExtensions.cs │ │ ├── ExpressionExtensions.cs │ │ ├── ImmutableStack.cs │ │ ├── ObjectExtensions.cs │ │ ├── Range.cs │ │ ├── ReflectionExtensions.cs │ │ ├── RuntimeExtensions.cs │ │ └── XElementExtensions.cs │ ├── LiveSharp.Runtime.csproj │ ├── LiveSharpAssemblyContext.cs │ ├── LiveSharpAssemblyContextRegistry.cs │ ├── LiveSharpConfig.cs │ ├── LiveSharpDebugger.cs │ ├── LiveSharpLogger.cs │ ├── LiveSharpRuntime.cs │ ├── LiveSharpRuntimeProxy.cs │ ├── LiveSharpTraceListener.cs │ ├── MethodRefAccess.cs │ ├── RuntimeHelpers.cs │ ├── RuntimeLogger.cs │ ├── UpdatedMethodContext.cs │ ├── Virtual │ │ ├── DelegateFieldInfo.cs │ │ ├── DynamicConstructorInfo.cs │ │ ├── DynamicMember.cs │ │ ├── DynamicTypeProxy.cs │ │ ├── GenericMethodInstance.cs │ │ ├── GenericTypeInstance.cs │ │ ├── GenericTypeResolver.cs │ │ ├── IVirtualInvokable.cs │ │ ├── IVirtualMemberInfo.cs │ │ ├── LiveSharpUpdateSiteBase.cs │ │ ├── MemberAccessor.cs │ │ ├── MemberValueByInstanceMap.cs │ │ ├── VirtualClr.cs │ │ ├── VirtualConstructorInfo.cs │ │ ├── VirtualFieldInfo.cs │ │ ├── VirtualInvoker.cs │ │ ├── VirtualMethodBody.cs │ │ ├── VirtualMethodInfo.cs │ │ ├── VirtualParameterInfo.cs │ │ ├── VirtualPropertyInfo.cs │ │ ├── VirtualType.cs │ │ └── VirtualTypeInfo.cs │ └── runtime.key.snk ├── LiveSharp.Server.Common │ └── LiveSharp.Server.Common.csproj ├── LiveSharp.Server │ ├── App.razor │ ├── Assets │ │ ├── icon_128.ico │ │ └── icon_128.png │ ├── Components │ │ ├── LoggingBox.razor │ │ └── WelcomeBox.razor │ ├── Controllers │ │ └── ConnectController.cs │ ├── Directory.Build.props │ ├── DisposableTcpListener.cs │ ├── FodyWeavers.xml │ ├── FodyWeavers.xsd │ ├── HostServer.cs │ ├── HostStartup.cs │ ├── ILogger.cs │ ├── ImmutableListDictionary.cs │ ├── Infrastructure │ │ └── RSACryptoServiceProviderExtensions.cs │ ├── LiveBlazor.Server.csproj_ │ ├── LiveSharp.Server.csproj │ ├── LiveSharp.dashboard.cs │ ├── LiveSharpSettings.cs │ ├── Pages │ │ ├── LiveBlazor │ │ │ └── Index.razor │ │ ├── LiveSharpServer │ │ │ └── Index.razor │ │ └── _Host.cshtml │ ├── Program.cs │ ├── ServerLogger.cs │ ├── Services │ │ ├── DebugServerAlreadyLoadingException.cs │ │ ├── LoggingService.cs │ │ └── MatchmakingService.cs │ ├── Shared │ │ └── MainLayout.razor │ ├── _Imports.razor │ ├── appsettings.Development.json │ ├── appsettings.json │ ├── localhost.livesharp.net.pfx │ ├── package-lock.json │ ├── package.json │ ├── postcss.config.js │ ├── reload.cmd │ ├── tailwind.config.js │ └── wwwroot │ │ ├── assets │ │ ├── css │ │ │ ├── app.css │ │ │ ├── app.out.css │ │ │ ├── font-awesome │ │ │ │ ├── css │ │ │ │ │ ├── all.css │ │ │ │ │ ├── all.min.css │ │ │ │ │ ├── brands.css │ │ │ │ │ ├── brands.min.css │ │ │ │ │ ├── fontawesome.css │ │ │ │ │ ├── fontawesome.min.css │ │ │ │ │ ├── regular.css │ │ │ │ │ ├── regular.min.css │ │ │ │ │ ├── solid.css │ │ │ │ │ ├── solid.min.css │ │ │ │ │ ├── svg-with-js.css │ │ │ │ │ ├── svg-with-js.min.css │ │ │ │ │ ├── v4-shims.css │ │ │ │ │ └── v4-shims.min.css │ │ │ │ └── webfonts │ │ │ │ │ ├── fa-brands-400.eot │ │ │ │ │ ├── fa-brands-400.svg │ │ │ │ │ ├── fa-brands-400.ttf │ │ │ │ │ ├── fa-brands-400.woff │ │ │ │ │ ├── fa-brands-400.woff2 │ │ │ │ │ ├── fa-regular-400.eot │ │ │ │ │ ├── fa-regular-400.svg │ │ │ │ │ ├── fa-regular-400.ttf │ │ │ │ │ ├── fa-regular-400.woff │ │ │ │ │ ├── fa-regular-400.woff2 │ │ │ │ │ ├── fa-solid-900.eot │ │ │ │ │ ├── fa-solid-900.svg │ │ │ │ │ ├── fa-solid-900.ttf │ │ │ │ │ ├── fa-solid-900.woff │ │ │ │ │ └── fa-solid-900.woff2 │ │ │ └── vue-autosuggest.css │ │ ├── favicon.ico │ │ ├── img │ │ │ ├── icons.svg │ │ │ └── splashscreen.png │ │ ├── js │ │ │ ├── ex-links.js │ │ │ ├── font-awesome.js │ │ │ ├── screen-server.js │ │ │ └── vue.js │ │ └── lib │ │ │ ├── bootstrap │ │ │ ├── LICENSE │ │ │ └── dist │ │ │ │ ├── css │ │ │ │ ├── bootstrap-grid.css │ │ │ │ ├── bootstrap-grid.css.map │ │ │ │ ├── bootstrap-grid.min.css │ │ │ │ ├── bootstrap-grid.min.css.map │ │ │ │ ├── bootstrap-reboot.css │ │ │ │ ├── bootstrap-reboot.css.map │ │ │ │ ├── bootstrap-reboot.min.css │ │ │ │ ├── bootstrap-reboot.min.css.map │ │ │ │ ├── bootstrap.css │ │ │ │ ├── bootstrap.css.map │ │ │ │ ├── bootstrap.min.css │ │ │ │ └── bootstrap.min.css.map │ │ │ │ └── js │ │ │ │ ├── bootstrap.bundle.js │ │ │ │ ├── bootstrap.bundle.js.map │ │ │ │ ├── bootstrap.bundle.min.js │ │ │ │ ├── bootstrap.bundle.min.js.map │ │ │ │ ├── bootstrap.js │ │ │ │ ├── bootstrap.js.map │ │ │ │ ├── bootstrap.min.js │ │ │ │ └── bootstrap.min.js.map │ │ │ ├── jquery-validation-unobtrusive │ │ │ ├── LICENSE.txt │ │ │ ├── jquery.validate.unobtrusive.js │ │ │ └── jquery.validate.unobtrusive.min.js │ │ │ ├── jquery-validation │ │ │ ├── LICENSE.md │ │ │ └── dist │ │ │ │ ├── additional-methods.js │ │ │ │ ├── additional-methods.min.js │ │ │ │ ├── jquery.validate.js │ │ │ │ └── jquery.validate.min.js │ │ │ └── jquery │ │ │ ├── LICENSE.txt │ │ │ └── dist │ │ │ ├── jquery.js │ │ │ ├── jquery.min.js │ │ │ └── jquery.min.map │ │ ├── components │ │ ├── app │ │ │ └── app-screen.js │ │ ├── help │ │ │ └── help-screen.js │ │ ├── imports.js │ │ ├── inspector │ │ │ ├── inspector-methods-tab.js │ │ │ ├── inspector-screen.js │ │ │ └── inspector-vms-tab.js │ │ ├── license │ │ │ └── license-screen.js │ │ ├── log-container.js │ │ ├── log │ │ │ └── log-screen.js │ │ ├── menu-item.js │ │ ├── news │ │ │ └── news-screen.js │ │ └── status │ │ │ └── status-screen.js │ │ └── css │ │ ├── app.min.css │ │ ├── app.tw.css │ │ ├── bootstrap │ │ ├── bootstrap.min.css │ │ └── bootstrap.min.css.map │ │ ├── open-iconic │ │ ├── FONT-LICENSE │ │ ├── ICON-LICENSE │ │ ├── README.md │ │ └── font │ │ │ ├── css │ │ │ └── open-iconic-bootstrap.min.css │ │ │ └── fonts │ │ │ ├── open-iconic.eot │ │ │ ├── open-iconic.otf │ │ │ ├── open-iconic.svg │ │ │ ├── open-iconic.ttf │ │ │ └── open-iconic.woff │ │ └── site.css ├── LiveSharp.ServerClient │ ├── BroadcastGroups.cs │ ├── Checksum.cs │ ├── CircularBuffer.cs │ ├── ContentTypes.cs │ ├── LiveSharp.ServerClient.csproj │ ├── Message.cs │ ├── MessageParser.cs │ ├── MessageType.cs │ ├── MultipartMessage.cs │ ├── ParserBase.cs │ ├── ServerClient.cs │ ├── SocketTransport.cs │ └── key.snk ├── LiveSharp.ServerTask │ ├── LiveSharp.ServerTask.csproj │ ├── LiveSharp.ServerTask.targets │ ├── LiveSharpServerTask.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ └── packages.config ├── LiveSharp.Shared │ ├── Api │ │ ├── ProjectInfo.cs │ │ ├── ServerAddress.cs │ │ └── XmlMessage.cs │ ├── DebugEventParser.cs │ ├── Debugging │ │ ├── AssignDebugEvent.cs │ │ ├── DebugEvent.cs │ │ ├── ReturnDebugEvent.cs │ │ └── StartDebugEvent.cs │ ├── ILogger.cs │ ├── Infrastructure │ │ └── TypeExtensions.cs │ ├── LiveSharp.Shared.csproj │ ├── Network │ │ ├── BroadcastGroups.cs │ │ ├── Checksum.cs │ │ ├── CircularBuffer.cs │ │ ├── Client.cs │ │ ├── ContentTypes.cs │ │ ├── GroupList.cs │ │ ├── ILiveSharpTransport.cs │ │ ├── INetworkClient.cs │ │ ├── LiveHost.cs │ │ ├── LiveServer.cs │ │ ├── Message.cs │ │ ├── MessageParser.cs │ │ ├── MessageType.cs │ │ ├── MultipartMessage.cs │ │ ├── ParserBase.cs │ │ ├── ServerClient.cs │ │ └── SocketTransport.cs │ └── Parsing │ │ ├── ArrayParser.cs │ │ ├── BoolParser.cs │ │ ├── ByteArrayParser.cs │ │ ├── ByteParser.cs │ │ ├── CompositeParser.cs │ │ ├── Deserialize.cs │ │ ├── EmptyParser.cs │ │ ├── IntParser.cs │ │ ├── LongParser.cs │ │ ├── MultipleElementParser.cs │ │ ├── ObjectParser.cs │ │ ├── ParserContainer.cs │ │ ├── RawParser.cs │ │ ├── Serialize.cs │ │ ├── StreamingParser.cs │ │ ├── StringParser.cs │ │ └── ToStringFormatParser.cs ├── LiveSharp.SolutionWorkbench │ ├── App.config │ ├── LiveSharp.SolutionWorkbench.csproj │ ├── Program.cs │ └── Properties │ │ └── AssemblyInfo.cs ├── LiveSharp.Support.Blazor │ ├── BlazorAssemblyUpdateHandler.cs │ ├── BlazorInspector.cs │ ├── BlazorServiceProvider.cs │ ├── BlazorUpdateHandler.cs │ ├── BlazorUpdateHelpers.cs │ ├── Infrastructure │ │ └── ReflectionExtensions.cs │ ├── Interceptors.cs │ ├── LiveSharp.Support.Blazor.csproj │ ├── WeakReferenceList.cs │ └── support.blazor.snk ├── LiveSharp.Support.BlazorWASM │ ├── BlazorTransport.cs │ └── LiveSharp.Support.BlazorWASM.csproj ├── LiveSharp.Support.TestHarness │ ├── LiveSharp.Support.TestHarness.csproj │ ├── LoggerWrapper.cs │ ├── TestHarnessTransport.cs │ └── TestHarnessUpdateHandler.cs ├── LiveSharp.Support.Uno │ ├── Infrastructure │ │ ├── ReflectionExtensions.cs │ │ └── TypeExtensions.cs │ ├── LiveSharp.Support.Uno.csproj │ ├── UnoUpdateHandler.cs │ └── WeakReferenceList.cs ├── LiveSharp.Support.UnoWasm │ ├── LiveSharp.Support.UnoWasm.csproj │ └── UnoWasmTransport.cs ├── LiveSharp.Support.XamarinForms │ ├── Infrastructure │ │ ├── ActionDisposable.cs │ │ └── ReflectionExtensions.cs │ ├── Inspector │ │ ├── InstanceInspector.cs │ │ ├── MethodInspector.cs │ │ ├── PropertyInspector.cs │ │ └── XamarinFormsInspector.cs │ ├── InstanceInfo.cs │ ├── LiveSharp.Support.XamarinForms.csproj │ ├── Updating │ │ ├── ElementInitializer.cs │ │ └── TreeTraversal.cs │ ├── XamarinFormsViewHandler.cs │ └── XamarinFormsViewModelHandler.cs ├── LiveSharp.Workbench │ ├── LiveSharp.Workbench.csproj │ ├── LiveSharp.dashboard.cs │ └── Program.cs ├── LiveSharp.Workspace │ ├── App.config │ ├── CSharp │ │ ├── AssemblyContainer.cs │ │ ├── AssemblyRewriter.cs │ │ ├── AssemblyUpdateProcessor.cs │ │ ├── CecilEqualityExtensions.cs │ │ ├── CompositeRazorProjectFileSystem.cs │ │ ├── DefaultRazorProjectItem.cs │ │ ├── InMemoryResolver.cs │ │ ├── IncompatibleTypeExtractor.cs │ │ ├── LiveSharpAdditionalText.cs │ │ ├── LiveSharpHandler.cs │ │ ├── NotFoundProjectItem.cs │ │ ├── RazorBuildEngine.cs │ │ ├── RazorHandler.cs │ │ ├── SerializationResult.cs │ │ ├── SourceItem.cs │ │ ├── VirtualRazorProjectFileSystem.cs │ │ └── VirtualRazorProjectItem.cs │ ├── Data │ │ ├── MemberInitializers.cs │ │ ├── MethodListEventArgs.cs │ │ └── ProjectType.cs │ ├── Debugging │ │ └── DebugEventProcessor.cs │ ├── Infrastructure │ │ ├── CecilExtensions.cs │ │ ├── FSUtils.cs │ │ ├── JobQueue.cs │ │ ├── RoslynExtensions.cs │ │ ├── Utils.cs │ │ ├── WorkspaceLoader.cs │ │ └── XElementExtensions.cs │ ├── LiveSharp.Workspace.csproj │ ├── LiveSharpFileWatcher.cs │ ├── LiveSharpWorkspace.cs │ ├── LiveXAML │ │ ├── InitialPropertiesContainer.cs │ │ ├── LiveXamlHandler.cs │ │ └── MalformedXamlException.cs │ ├── Program.cs │ └── livesharp.config ├── LiveSharp │ ├── App │ │ └── LiveSharp.cs │ ├── ILiveSharpConfig.cs │ ├── ILiveSharpDashboard.cs │ ├── ILiveSharpInspector.cs │ ├── ILiveSharpLoadContext.cs │ ├── ILiveSharpLogger.cs │ ├── ILiveSharpRuntime.cs │ ├── ILiveSharpUpdateHandler.cs │ ├── IUpdatedMethod.cs │ ├── IUpdatedResource.cs │ ├── LiveSharp.csproj │ ├── LiveSharpAssemblyUpdate.cs │ ├── LiveSharpExcludeAttribute.cs │ ├── LiveSharpIncludeProjectAttribute.cs │ ├── LiveSharpInjectAttribute.cs │ ├── LiveSharpRewrite.cs │ ├── LiveSharpServerIpAttribute.cs │ ├── LiveSharpStartAttribute.cs │ └── runtime.key.snk ├── Sources │ ├── Checksum.cs │ ├── DebugLogger.cs │ ├── ETDeserializer.cs │ ├── KnownTypes.cs │ ├── MessageParser_old.cs │ ├── NumericTypes.cs │ ├── ParserBase.cs │ └── VsUtils.cs └── Workbench │ ├── Workbench.Library │ ├── LibraryType.cs │ └── Workbench.Library.csproj │ ├── Workbench.sln │ └── Workbench │ ├── Workbench.CoreConsole │ ├── Program.cs │ ├── Workbench.CoreConsole.csproj │ ├── livesharp.config │ └── run.cmd │ ├── Workbench.XamarinForms.Android │ ├── Assets │ │ └── AboutAssets.txt │ ├── MainActivity.cs │ ├── Properties │ │ ├── AndroidManifest.xml │ │ └── AssemblyInfo.cs │ ├── Resources │ │ ├── AboutResources.txt │ │ ├── Resource.designer.cs │ │ ├── layout │ │ │ ├── Tabbar.axml │ │ │ └── Toolbar.axml │ │ ├── mipmap-anydpi-v26 │ │ │ ├── icon.xml │ │ │ └── icon_round.xml │ │ ├── mipmap-hdpi │ │ │ ├── Icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-mdpi │ │ │ ├── icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-xhdpi │ │ │ ├── Icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-xxhdpi │ │ │ ├── Icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-xxxhdpi │ │ │ ├── Icon.png │ │ │ └── launcher_foreground.png │ │ └── values │ │ │ ├── colors.xml │ │ │ └── styles.xml │ └── Workbench.XamarinForms.Android.csproj │ └── Workbench.XamarinForms │ ├── App.xaml │ ├── App.xaml.cs │ ├── MainPage.cs │ ├── Workbench.XamarinForms.csproj │ └── livesharp.rules └── test ├── AspCoreWorkbench ├── AspCoreWorkbench.csproj ├── Controllers │ └── WeatherForecastController.cs ├── LiveSharp.dashboard.cs ├── Program.cs ├── Startup.cs ├── WeatherForecast.cs ├── appsettings.Development.json └── appsettings.json ├── BlazorComponents ├── BlazorComponents.csproj ├── Component1.razor ├── ExampleJsInterop.cs ├── LiveSharp.dashboard.cs ├── _Imports.razor └── wwwroot │ ├── background.png │ ├── exampleJsInterop.js │ └── styles.css ├── BlazorWasmWorkbench ├── App.razor ├── BlazorWasmWorkbench.csproj ├── LiveSharp.dashboard.cs ├── Pages │ ├── Counter.razor │ ├── FetchData.razor │ ├── Index.razor │ ├── Index.razor.css │ ├── Index.razor.scss │ └── test.scss ├── Program.cs ├── Shared │ ├── MainLayout.razor │ ├── NavMenu.razor │ └── SurveyPrompt.razor ├── _Imports.razor ├── livesharphandler.scss.cmd └── wwwroot │ ├── css │ ├── app.css │ ├── bootstrap │ │ ├── bootstrap.min.css │ │ └── bootstrap.min.css.map │ └── open-iconic │ │ ├── FONT-LICENSE │ │ ├── ICON-LICENSE │ │ ├── README.md │ │ └── font │ │ ├── css │ │ └── open-iconic-bootstrap.min.css │ │ └── fonts │ │ ├── open-iconic.eot │ │ ├── open-iconic.otf │ │ ├── open-iconic.svg │ │ ├── open-iconic.ttf │ │ └── open-iconic.woff │ ├── favicon.ico │ ├── index.html │ ├── sample-data │ └── weather.json │ └── test.scss ├── BlazorWorkbench ├── .livesharpignore ├── App.razor ├── BlazorWorkbench.csproj ├── Data │ ├── GenericType.cs │ ├── WeatherForecast.cs │ └── WeatherForecastService.cs ├── LiveSharp.dashboard.cs ├── LiveSharpAssemblyLoadContext.cs ├── Pages │ ├── Company.cs │ ├── Counter.razor │ ├── CustomerGridView.cs │ ├── Error.razor │ ├── FetchData.razor │ ├── Index.razor │ ├── TestPage.Stuff.cs │ ├── TestPage.razor │ └── _Host.cshtml ├── Program.cs ├── Shared │ ├── MainLayout.razor │ ├── NavMenu.razor │ └── SurveyPrompt.razor ├── Startup.cs ├── _Imports.razor ├── appsettings.Development.json ├── appsettings.json ├── livesharphandler.json.cmd └── wwwroot │ ├── css │ ├── bootstrap │ │ ├── bootstrap.min.css │ │ └── bootstrap.min.css.map │ ├── open-iconic │ │ ├── FONT-LICENSE │ │ ├── ICON-LICENSE │ │ ├── README.md │ │ └── font │ │ │ ├── css │ │ │ └── open-iconic-bootstrap.min.css │ │ │ └── fonts │ │ │ ├── open-iconic.eot │ │ │ ├── open-iconic.otf │ │ │ ├── open-iconic.svg │ │ │ ├── open-iconic.ttf │ │ │ └── open-iconic.woff │ └── site.css │ └── favicon.ico ├── LiveBlazor.Tests ├── LiveBlazor.Tests.csproj └── UnitTest1.cs ├── LiveBlazorWorkbench ├── App.razor ├── Data │ ├── WeatherForecast.cs │ └── WeatherForecastService.cs ├── LiveBlazorWorkbench.csproj ├── LiveSharp.dashboard.cs ├── Pages │ ├── Counter.razor │ ├── Error.cshtml │ ├── Error.cshtml.cs │ ├── FetchData.razor │ ├── Index.razor │ └── _Host.cshtml ├── Program.cs ├── Shared │ ├── MainLayout.razor │ ├── MainLayout.razor.css │ ├── NavMenu.razor │ ├── NavMenu.razor.css │ └── SurveyPrompt.razor ├── Startup.cs ├── _Imports.razor ├── appsettings.Development.json ├── appsettings.json └── wwwroot │ ├── css │ ├── bootstrap │ │ ├── bootstrap.min.css │ │ └── bootstrap.min.css.map │ ├── open-iconic │ │ ├── FONT-LICENSE │ │ ├── ICON-LICENSE │ │ ├── README.md │ │ └── font │ │ │ ├── css │ │ │ └── open-iconic-bootstrap.min.css │ │ │ └── fonts │ │ │ ├── open-iconic.eot │ │ │ ├── open-iconic.otf │ │ │ ├── open-iconic.svg │ │ │ ├── open-iconic.ttf │ │ │ └── open-iconic.woff │ └── site.css │ └── favicon.ico ├── LiveSharp.BlazorTest.App ├── App.razor ├── Data │ ├── WeatherForecast.cs │ ├── WeatherForecast.cs.original │ ├── WeatherForecast.cs.update │ └── WeatherForecastService.cs ├── LiveSharp.BlazorTest.App.csproj ├── LiveSharp.dashboard.cs ├── Pages │ ├── Counter.razor │ ├── Error.cshtml │ ├── Error.cshtml.cs │ ├── FetchData.razor │ ├── Index.razor │ ├── Index.razor.original │ ├── Index.razor.update │ └── _Host.cshtml ├── Program.cs ├── Shared │ ├── MainLayout.razor │ ├── MainLayout.razor.css │ ├── NavMenu.razor │ ├── NavMenu.razor.css │ └── SurveyPrompt.razor ├── Startup.cs ├── _Imports.razor ├── appsettings.Development.json ├── appsettings.json └── wwwroot │ ├── css │ ├── bootstrap │ │ ├── bootstrap.min.css │ │ └── bootstrap.min.css.map │ ├── open-iconic │ │ ├── FONT-LICENSE │ │ ├── ICON-LICENSE │ │ ├── README.md │ │ └── font │ │ │ ├── css │ │ │ └── open-iconic-bootstrap.min.css │ │ │ └── fonts │ │ │ ├── open-iconic.eot │ │ │ ├── open-iconic.otf │ │ │ ├── open-iconic.svg │ │ │ ├── open-iconic.ttf │ │ │ └── open-iconic.woff │ └── site.css │ └── favicon.ico ├── LiveSharp.BlazorTest ├── LiveSharp.BlazorTest.csproj ├── ServerProcess.cs ├── SetUp.cs ├── Tests.cs └── TestsBase.cs ├── LiveSharp.RuntimeTests ├── Helpers │ └── GenericMethods.cs ├── Infrastructure │ └── ReflectionExtensions.cs ├── Library.cs ├── LiveSharp.RuntimeTests.csproj ├── LiveSharp.dashboard.cs ├── Log.cs ├── MethodDeclarationInfo.cs ├── MyControl.cs ├── MyControlViewModel.cs ├── NumericTypes.cs ├── Sequences │ ├── BubblesGame │ │ ├── MainPage.xaml.cs │ │ ├── MainPage.xaml.cs.1 │ │ ├── MainPage.xaml.cs.10 │ │ ├── MainPage.xaml.cs.11 │ │ ├── MainPage.xaml.cs.12 │ │ ├── MainPage.xaml.cs.13 │ │ ├── MainPage.xaml.cs.14 │ │ ├── MainPage.xaml.cs.15 │ │ ├── MainPage.xaml.cs.16 │ │ ├── MainPage.xaml.cs.17 │ │ ├── MainPage.xaml.cs.18 │ │ ├── MainPage.xaml.cs.19 │ │ ├── MainPage.xaml.cs.2 │ │ ├── MainPage.xaml.cs.20 │ │ ├── MainPage.xaml.cs.21 │ │ ├── MainPage.xaml.cs.22 │ │ ├── MainPage.xaml.cs.23 │ │ ├── MainPage.xaml.cs.24 │ │ ├── MainPage.xaml.cs.25 │ │ ├── MainPage.xaml.cs.26 │ │ ├── MainPage.xaml.cs.27 │ │ ├── MainPage.xaml.cs.28 │ │ ├── MainPage.xaml.cs.29 │ │ ├── MainPage.xaml.cs.3 │ │ ├── MainPage.xaml.cs.30 │ │ ├── MainPage.xaml.cs.31 │ │ ├── MainPage.xaml.cs.32 │ │ ├── MainPage.xaml.cs.33 │ │ ├── MainPage.xaml.cs.34 │ │ ├── MainPage.xaml.cs.35 │ │ ├── MainPage.xaml.cs.36 │ │ ├── MainPage.xaml.cs.37 │ │ ├── MainPage.xaml.cs.38 │ │ ├── MainPage.xaml.cs.39 │ │ ├── MainPage.xaml.cs.4 │ │ ├── MainPage.xaml.cs.40 │ │ ├── MainPage.xaml.cs.41 │ │ ├── MainPage.xaml.cs.42 │ │ ├── MainPage.xaml.cs.43 │ │ ├── MainPage.xaml.cs.44 │ │ ├── MainPage.xaml.cs.45 │ │ ├── MainPage.xaml.cs.46 │ │ ├── MainPage.xaml.cs.47 │ │ ├── MainPage.xaml.cs.48 │ │ ├── MainPage.xaml.cs.49 │ │ ├── MainPage.xaml.cs.5 │ │ ├── MainPage.xaml.cs.50 │ │ ├── MainPage.xaml.cs.51 │ │ ├── MainPage.xaml.cs.52 │ │ ├── MainPage.xaml.cs.53 │ │ ├── MainPage.xaml.cs.54 │ │ ├── MainPage.xaml.cs.55 │ │ ├── MainPage.xaml.cs.56 │ │ ├── MainPage.xaml.cs.57 │ │ ├── MainPage.xaml.cs.58 │ │ ├── MainPage.xaml.cs.59 │ │ ├── MainPage.xaml.cs.6 │ │ ├── MainPage.xaml.cs.60 │ │ ├── MainPage.xaml.cs.61 │ │ ├── MainPage.xaml.cs.62 │ │ ├── MainPage.xaml.cs.7 │ │ ├── MainPage.xaml.cs.8 │ │ └── MainPage.xaml.cs.9 │ ├── ChangeReturnValue │ │ ├── ChangeReturnValue.cs │ │ └── ChangeReturnValue.cs.1 │ ├── DynamicIndex │ │ ├── DynamicIndex.cs │ │ └── DynamicIndex.cs.1 │ └── IRunnableSequence.cs ├── TestLogger.cs ├── TestRunner.MockDeserializer.cs ├── TestRunner.MockDeviceInfo.cs ├── TestRunner.MockPlatformServices.cs ├── TestRunner.MockResourcesProvider.cs ├── TestRunner.MockTicker.cs ├── TestRunner.cs ├── Tests │ ├── ArrayTests.cs │ ├── AsyncTests.cs │ ├── BasicTests.cs │ ├── ConditionalAccessTests.cs │ ├── ConstructorTests.cs │ ├── CtorUpdateTests.cs │ ├── CtorUpdateTests.cs.update │ ├── DebuggerTests.cs │ ├── DelegateTests.cs │ ├── DoTests.cs │ ├── DynamicTests.cs │ ├── EventsTests.cs │ ├── ExceptionHandlingTests.cs │ ├── ExpressionParameterTests.cs │ ├── ForTests.cs │ ├── ForeachTests.cs │ ├── GenericsTests.cs │ ├── GenericsTests.cs.update │ ├── InheritanceTests.cs │ ├── LambdaTests.cs │ ├── LockTests.cs │ ├── MethodTests.cs │ ├── NewMembers.cs │ ├── NewMembers.cs.update │ ├── NullableTests.cs │ ├── OperatorTests.cs │ ├── PatternMatchingTests.cs │ ├── PropertyTests.cs │ ├── ReturnTests.cs │ ├── StringTests.cs │ ├── StructTests.cs │ ├── SwitchTests.cs │ ├── TestsBase.cs │ ├── TupleTests.cs │ ├── TypeResolutionTests.cs │ ├── UsingTests.cs │ └── WhileTests.cs └── XamarinFormsMarkupExtensions.cs ├── LiveSharp.SequenceRecorder ├── LiveSharp.SequenceRecorder.csproj └── Program.cs ├── LiveSharp.ServerTest ├── LiveSharp.ServerTest.csproj ├── Program.cs └── ServerProcess.cs ├── LiveSharp.UnitTests ├── LiveSharp.UnitTests.csproj └── StreamingParsersTests.cs ├── LiveSharp.WorkspaceTester ├── LiveSharp.WorkspaceTester.csproj ├── Program.cs └── TestLogger.cs ├── XamarinFormsTest ├── XamarinFormsTest.Android │ ├── Assets │ │ └── AboutAssets.txt │ ├── MainActivity.cs │ ├── Properties │ │ ├── AndroidManifest.xml │ │ └── AssemblyInfo.cs │ ├── Resources │ │ ├── AboutResources.txt │ │ ├── Resource.designer.cs │ │ ├── drawable │ │ │ └── xamarin_logo.png │ │ ├── layout │ │ │ ├── Tabbar.axml │ │ │ └── Toolbar.axml │ │ ├── mipmap-anydpi-v26 │ │ │ ├── icon.xml │ │ │ └── icon_round.xml │ │ ├── mipmap-hdpi │ │ │ ├── icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-mdpi │ │ │ ├── icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-xhdpi │ │ │ ├── icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-xxhdpi │ │ │ ├── icon.png │ │ │ └── launcher_foreground.png │ │ ├── mipmap-xxxhdpi │ │ │ ├── icon.png │ │ │ └── launcher_foreground.png │ │ └── values │ │ │ ├── colors.xml │ │ │ └── styles.xml │ └── XamarinFormsTest.Android.csproj └── XamarinFormsTest │ ├── App.xaml │ ├── App.xaml.cs │ ├── AssemblyInfo.cs │ ├── FodyWeavers.xml │ ├── FodyWeavers.xsd │ ├── LiveSharp.dashboard.cs │ ├── LiveSharpCustomUpdateHandler.cs │ ├── Models │ ├── HomeMenuItem.cs │ └── Item.cs │ ├── Services │ ├── IDataStore.cs │ └── MockDataStore.cs │ ├── ViewModels │ ├── AboutViewModel.cs │ ├── BaseViewModel.cs │ ├── ItemDetailViewModel.cs │ └── ItemsViewModel.cs │ ├── Views │ ├── AboutPage.xaml │ ├── AboutPage.xaml.cs │ ├── ItemDetailPage.xaml │ ├── ItemDetailPage.xaml.cs │ ├── ItemsPage.xaml │ ├── ItemsPage.xaml.cs │ ├── MainPage.xaml │ ├── MainPage.xaml.cs │ ├── MenuPage.xaml │ ├── MenuPage.xaml.cs │ ├── NewItemPage.xaml │ └── NewItemPage.xaml.cs │ └── XamarinFormsTest.csproj └── XamarinWorkbench ├── XamarinWorkbench.Android ├── Assets │ └── AboutAssets.txt ├── MainActivity.cs ├── Properties │ ├── AndroidManifest.xml │ └── AssemblyInfo.cs ├── Resources │ ├── AboutResources.txt │ ├── Resource.designer.cs │ ├── layout │ │ ├── Tabbar.axml │ │ └── Toolbar.axml │ └── values │ │ ├── colors.xml │ │ └── styles.xml └── XamarinWorkbench.Android.csproj └── XamarinWorkbench ├── Annotations.cs ├── App.xaml ├── App.xaml.cs ├── FodyWeavers.xml ├── FodyWeavers.xsd ├── LiveSharp.dashboard.cs ├── MainPage.xaml ├── MainPage.xaml.cs ├── Model.cs └── XamarinWorkbench.csproj /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "deps/XamarinLive"] 2 | path = deps/XamarinLive 3 | url = https://github.com/ionoy/XamarinLive.git 4 | branch = without-registration 5 | [submodule "deps/LiveSharp"] 6 | path = deps/LiveSharp 7 | url = https://github.com/OYIon/LiveSharp.git 8 | -------------------------------------------------------------------------------- /.nuget/NuGet.Config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.nuget/NuGet.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/.nuget/NuGet.exe -------------------------------------------------------------------------------- /.nuget/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: csharp 2 | mono: none 3 | os: windows 4 | dotnet: 2.1.502 5 | cache: 6 | directories: 7 | - node_modules 8 | - app/node_modules 9 | - $HOME/.cache/electron 10 | - $HOME/.cache/electron-builder 11 | - $HOME/.npm/_prebuilds 12 | env: 13 | global: 14 | - ELECTRON_CACHE=$HOME/.cache/electron 15 | - ELECTRON_BUILDER_CACHE=$HOME/.cache/electron-builder 16 | before_script: 17 | - chmod +x ./buildServerApp.sh 18 | - export PATH="$PATH:/home/travis/.dotnet/tools" 19 | - npm install electron-packager --global 20 | script: 21 | - ./buildServerApp.sh -------------------------------------------------------------------------------- /Directory.Build.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 1.6.2.0 4 | 5 | -------------------------------------------------------------------------------- /deps/Razor/Microsoft.AspNetCore.Razor.Language.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/deps/Razor/Microsoft.AspNetCore.Razor.Language.dll -------------------------------------------------------------------------------- /deps/Razor/Microsoft.AspNetCore.Razor.Language.dll_org: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/deps/Razor/Microsoft.AspNetCore.Razor.Language.dll_org -------------------------------------------------------------------------------- /deps/Razor/Microsoft.CodeAnalysis.Razor.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/deps/Razor/Microsoft.CodeAnalysis.Razor.dll -------------------------------------------------------------------------------- /global.json: -------------------------------------------------------------------------------- 1 | { 2 | "sdk": { 3 | "version": "6.0.202" 4 | } 5 | } -------------------------------------------------------------------------------- /resources/icon.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/resources/icon.psd -------------------------------------------------------------------------------- /resources/icon_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/resources/icon_128.png -------------------------------------------------------------------------------- /resources/icon_256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/resources/icon_256.png -------------------------------------------------------------------------------- /resources/icon_512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/resources/icon_512.png -------------------------------------------------------------------------------- /resources/icon_64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/resources/icon_64.png -------------------------------------------------------------------------------- /runtests.cmd: -------------------------------------------------------------------------------- 1 | dotnet build LiveSharp-testonly.sln --no-incremental 2 | pushd src\LiveSharp.CodedUITest\bin\Debug\netcoreapp3.1 3 | dotnet LiveSharp.CodedUiTest.dll 4 | popd -------------------------------------------------------------------------------- /samples/ConsoleSample_FW471/ConsoleSample/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /samples/ConsoleSample_FW471/ConsoleSample/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading; 6 | using System.Threading.Tasks; 7 | 8 | namespace ConsoleSample 9 | { 10 | class Program 11 | { 12 | static void Main(string[] args) 13 | { 14 | while (true) 15 | { 16 | Method(); 17 | Thread.Sleep(1000); 18 | } 19 | } 20 | 21 | static void Method() 22 | { 23 | Console.WriteLine("Hello, Misha!"); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /samples/ConsoleSample_FW471/ConsoleSample/livesharp.rules: -------------------------------------------------------------------------------- 1 | * -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Properties/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/drawable/xamarin_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.Android/Resources/drawable/xamarin_logo.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/layout/Tabbar.axml: -------------------------------------------------------------------------------- 1 | 2 | 12 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/layout/Toolbar.axml: -------------------------------------------------------------------------------- 1 | 9 | 10 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-anydpi-v26/icon.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-anydpi-v26/icon_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-hdpi/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-hdpi/Icon.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-hdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-hdpi/launcher_foreground.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-mdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-mdpi/icon.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-mdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-mdpi/launcher_foreground.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xhdpi/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xhdpi/Icon.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xxhdpi/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xxhdpi/Icon.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xxhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xxhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xxxhdpi/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xxxhdpi/Icon.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xxxhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.Android/Resources/mipmap-xxxhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.Android/Resources/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFFFFF 4 | #3F51B5 5 | #303F9F 6 | #FF4081 7 | 8 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/App.xaml: -------------------------------------------------------------------------------- 1 |  7 | 8 | 9 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/LargeTile.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/LargeTile.scale-100.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/LargeTile.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/LargeTile.scale-200.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/LargeTile.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/LargeTile.scale-400.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/SmallTile.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/SmallTile.scale-100.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/SmallTile.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/SmallTile.scale-200.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/SmallTile.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/SmallTile.scale-400.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/SplashScreen.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/SplashScreen.scale-100.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/SplashScreen.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/SplashScreen.scale-400.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square150x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square150x150Logo.scale-100.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square150x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square150x150Logo.scale-400.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.altform-unplated_targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.altform-unplated_targetsize-16.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.altform-unplated_targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.altform-unplated_targetsize-256.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.altform-unplated_targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.altform-unplated_targetsize-48.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.scale-100.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.scale-400.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.targetsize-16.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.targetsize-256.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Square44x44Logo.targetsize-48.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/StoreLogo.backup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/StoreLogo.backup.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/StoreLogo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/StoreLogo.scale-100.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/StoreLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/StoreLogo.scale-200.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/StoreLogo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/StoreLogo.scale-400.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Wide310x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Wide310x150Logo.scale-100.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/Assets/Wide310x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/Assets/Wide310x150Logo.scale-400.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/add.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.UWP/xamarin_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.UWP/xamarin_logo.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon1024.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon120.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon152.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon167.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon167.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon180.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon20.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon29.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon40.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon58.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon58.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon60.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon76.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon80.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon87.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Assets.xcassets/AppIcon.appiconset/Icon87.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Entitlements.plist: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Main.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | 5 | using Foundation; 6 | using UIKit; 7 | 8 | namespace XamarinFormsSample.iOS 9 | { 10 | public class Application 11 | { 12 | // This is the main entry point of the application. 13 | static void Main(string[] args) 14 | { 15 | // if you want to use a different Application Delegate class from "AppDelegate" 16 | // you can specify it here. 17 | UIApplication.Main(args, null, "AppDelegate"); 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/Default-568h@2x.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/Default-Portrait.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/Default-Portrait.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/Default-Portrait@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/Default-Portrait@2x.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/Default.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/Default@2x.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/tab_about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/tab_about.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/tab_about@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/tab_about@2x.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/tab_about@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/tab_about@3x.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/tab_feed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/tab_feed.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/tab_feed@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/tab_feed@2x.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/tab_feed@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/tab_feed@3x.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/xamarin_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/xamarin_logo.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/xamarin_logo@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/xamarin_logo@2x.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample.iOS/Resources/xamarin_logo@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/samples/XFSample/XFSample/XFSample.iOS/Resources/xamarin_logo@3x.png -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample/Models/Item.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace XamarinFormsSample.Models 4 | { 5 | public class Item 6 | { 7 | public string Id { get; set; } 8 | public string Text { get; set; } 9 | public string Description { get; set; } 10 | } 11 | } -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample/Services/IDataStore.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Threading.Tasks; 4 | 5 | namespace XamarinFormsSample.Services 6 | { 7 | public interface IDataStore 8 | { 9 | Task AddItemAsync(T item); 10 | Task UpdateItemAsync(T item); 11 | Task DeleteItemAsync(string id); 12 | Task GetItemAsync(string id); 13 | Task> GetItemsAsync(bool forceRefresh = false); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample/ViewModels/AboutViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Windows.Input; 3 | 4 | using Xamarin.Forms; 5 | 6 | namespace XamarinFormsSample.ViewModels 7 | { 8 | public class AboutViewModel : BaseViewModel 9 | { 10 | public AboutViewModel() 11 | { 12 | Title = "About"; 13 | 14 | OpenWebCommand = new Command(() => Device.OpenUri(new Uri("https://xamarin.com/platform"))); 15 | } 16 | 17 | public ICommand OpenWebCommand { get; } 18 | } 19 | } -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample/ViewModels/ItemDetailViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | using XamarinFormsSample.Models; 4 | 5 | namespace XamarinFormsSample.ViewModels 6 | { 7 | public class ItemDetailViewModel : BaseViewModel 8 | { 9 | public Item Item { get; set; } 10 | public ItemDetailViewModel(Item item = null) 11 | { 12 | Title = item?.Text; 13 | Item = item; 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample/Views/AboutPage.xaml: -------------------------------------------------------------------------------- 1 |  2 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample/Views/ItemDetailPage.xaml: -------------------------------------------------------------------------------- 1 |  2 | 6 | 7 | 12 | -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample/Views/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | using Xamarin.Forms; 4 | using Xamarin.Forms.Xaml; 5 | 6 | namespace XamarinFormsSample.Views 7 | { 8 | [XamlCompilation(XamlCompilationOptions.Compile)] 9 | public partial class MainPage : TabbedPage 10 | { 11 | public MainPage () 12 | { 13 | InitializeComponent (); 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /samples/XFSample/XFSample/XFSample/livesharp.rules: -------------------------------------------------------------------------------- 1 | * -------------------------------------------------------------------------------- /scripts/2.0.37.version: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/scripts/2.0.37.version -------------------------------------------------------------------------------- /scripts/build-nuget.cmd: -------------------------------------------------------------------------------- 1 | powershell.exe -ExecutionPolicy Bypass -File "build-nugets.ps1" -------------------------------------------------------------------------------- /scripts/upload-nuget.cmd: -------------------------------------------------------------------------------- 1 | powershell.exe -ExecutionPolicy Bypass -File "upload-nugets.ps1" -------------------------------------------------------------------------------- /scripts/upload-nugets.ps1: -------------------------------------------------------------------------------- 1 | #Set-Location "build" 2 | 3 | Write-Output "Setting API key" 4 | 5 | $apiKey = Read-Host -Prompt "Please enter API key" 6 | 7 | &"..\.nuget\nuget.exe" setApiKey $apiKey -source https://www.nuget.org/api/v2/package 8 | 9 | Get-ChildItem '*.nupkg' -Recurse | ForEach-Object { 10 | Write-Output "Uploading $_" 11 | &"..\.nuget\nuget.exe" push $_ -Source https://www.nuget.org/api/v2/package 12 | } -------------------------------------------------------------------------------- /src/LiveSharp.Build/livesharp.blazor.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | * 6 | 7 | LiveSharp.Support.Blazor.BlazorUpdateHandler 8 | 9 | 10 | Build 11 | 12 | -------------------------------------------------------------------------------- /src/LiveSharp.CodedUiTest/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/LiveSharp.CodedUiTest/LiveSharp.CodedUiTest.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Exe 5 | net5.0 6 | true 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/LiveSharp.CodedUiTest/Program.cs: -------------------------------------------------------------------------------- 1 | using System.Linq; 2 | using LiveSharp.RuntimeTests; 3 | 4 | namespace LiveSharp.RuntimeTestsRunner 5 | { 6 | class Program 7 | { 8 | static void Main(string[] args) 9 | { 10 | TestRunner.Run(); 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /src/LiveSharp.Common/Events/Event.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.Common.Events 2 | { 3 | public abstract class Event 4 | {} 5 | } 6 | -------------------------------------------------------------------------------- /src/LiveSharp.Common/Events/EventBus.cs: -------------------------------------------------------------------------------- 1 | using LiveSharp.Common.Events; 2 | using System; 3 | using System.Reactive.Linq; 4 | using System.Reactive.Subjects; 5 | 6 | namespace LiveSharp.Common.Events 7 | { 8 | public class EventBus : IEventBus 9 | { 10 | public IObservable Events => _replaySubject.AsObservable(); 11 | 12 | private ReplaySubject _replaySubject = new ReplaySubject(); 13 | 14 | public void PublishEvent(Event evt) 15 | { 16 | _replaySubject.OnNext(evt); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/LiveSharp.Common/Events/IEventBus.cs: -------------------------------------------------------------------------------- 1 | using LiveSharp.Common.Events; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Threading.Tasks; 6 | 7 | namespace LiveSharp.Common.Events 8 | { 9 | public interface IEventBus 10 | { 11 | IObservable Events { get; } 12 | void PublishEvent(Event evt); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/LiveSharp.Common/Events/WorkspaceEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | 5 | namespace LiveSharp.Common.Events 6 | { 7 | public class WorkspaceEvent : Event 8 | { 9 | public string Description { get; set; } 10 | public WorkspaceEvent() 11 | { 12 | Description = ""; 13 | } 14 | 15 | public WorkspaceEvent(string description) 16 | { 17 | Description = description; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/LiveSharp.Common/IDebugger.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Threading.Tasks; 4 | 5 | namespace LiveSharp.Common 6 | { 7 | public interface IDebugger 8 | { 9 | Task StartDebuggingMethod(InjectedMethodInfo methodInfo); 10 | Task StopDebuggingMethod(InjectedMethodInfo methodInfo); 11 | } 12 | } -------------------------------------------------------------------------------- /src/LiveSharp.Common/IInjectedMethodsService.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Threading.Tasks; 3 | 4 | namespace LiveSharp.Common 5 | { 6 | public interface IInjectedMethodsService 7 | { 8 | bool FindMethodByIdentifier(string methodIdentifier, out InjectedMethodInfo result); 9 | Task> Search(string term); 10 | bool GetMethod(int methodId, out InjectedMethodInfo result); 11 | IReadOnlyList GetMethods(); 12 | } 13 | } -------------------------------------------------------------------------------- /src/LiveSharp.Common/ILiveSharpWorkspace.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Text; 3 | using System.Threading.Tasks; 4 | 5 | namespace LiveSharp.Common 6 | { 7 | public interface ILiveSharpWorkspace : IDisposable 8 | { 9 | IInjectedMethodsService InjectedMethodsService { get; } 10 | IDebugger Debugger { get; } 11 | Task LoadSolution(string nugetPath, string solutionPath, string projectDir, string projectName, bool needWatcherSubscribe = true); 12 | } 13 | } -------------------------------------------------------------------------------- /src/LiveSharp.Common/LiveSharp.Common.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | netstandard2.0 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/LiveSharp.ConsoleHost/LiveSharp.ConsoleHost.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 9 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/LiveSharp.Dashboard/App.razor: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 |

Sorry, there's nothing at this address.

8 |
9 |
10 |
-------------------------------------------------------------------------------- /src/LiveSharp.Dashboard/BlazorHub.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using LiveSharp.ServerClient; 3 | using LiveSharp.Shared.Network; 4 | using Microsoft.AspNetCore.SignalR; 5 | 6 | namespace LiveSharp.Dashboard 7 | { 8 | public class BlazorHub : Hub 9 | { 10 | // Single static Parser for all Hub instances 11 | public static MessageParser Parser = new(null); 12 | 13 | public BlazorHub() 14 | { 15 | } 16 | 17 | public void ServerMessage(byte[] buffer) 18 | { 19 | Parser.Feed(buffer, buffer.Length); 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /src/LiveSharp.Dashboard/Shared/MainLayout.razor: -------------------------------------------------------------------------------- 1 | @using LiveSharp.ServerClient 2 | @inherits LayoutComponentBase 3 | 4 | @*
*@ 5 | @* LiveSharp Server *@ 6 | @*
*@ 7 | 8 |
9 | @Body 10 |
11 | @code { 12 | 13 | } -------------------------------------------------------------------------------- /src/LiveSharp.Dashboard/Shared/SurveyPrompt.razor: -------------------------------------------------------------------------------- 1 |  11 | 12 | @code { 13 | // Demonstrates how a parent component can supply parameters 14 | [Parameter] 15 | public string Title { get; set; } 16 | 17 | } -------------------------------------------------------------------------------- /src/LiveSharp.Dashboard/_Imports.razor: -------------------------------------------------------------------------------- 1 | @using System.Net.Http 2 | @using Microsoft.AspNetCore.Authorization 3 | @using Microsoft.AspNetCore.Components.Authorization 4 | @using Microsoft.AspNetCore.Components.Forms 5 | @using Microsoft.AspNetCore.Components.Routing 6 | @using Microsoft.AspNetCore.Components.Web 7 | @using Microsoft.JSInterop 8 | @using LiveSharp.Dashboard 9 | @using LiveSharp.Dashboard.Shared -------------------------------------------------------------------------------- /src/LiveSharp.Dashboard/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "DetailedErrors": true, 3 | "Logging": { 4 | "LogLevel": { 5 | "Default": "Information", 6 | "Microsoft": "Warning", 7 | "Microsoft.Hosting.Lifetime": "Information" 8 | } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/LiveSharp.Dashboard/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Information", 5 | "Microsoft": "Warning", 6 | "Microsoft.Hosting.Lifetime": "Information" 7 | } 8 | }, 9 | "AllowedHosts": "*" 10 | } 11 | -------------------------------------------------------------------------------- /src/LiveSharp.Dashboard/license.key: -------------------------------------------------------------------------------- 1 | MjAyNjAzMDR0ZXN0LWVudgpnNnVVU0dOOGtGVHBrWTdZNUJQZzBuM2FWK3RpZ1Bzb2hzTkpYbTQ1SmJPR1VmbFVlNDRxVklsOUZWQTJqMGd6azlrUGtVRVMxWnRHUjBTbngzRmkrVGZ3Vm1DTkpUQ3YwUVlLcm1RT3FvMm5RZ05LSit6c2s5c3YxdmdFWjAzY21vcy95RmMwc0RMcHNqd3JiSnRBMTZ5dXl3azA2ZXRRTGVxUEpXSnhkaDQ9 -------------------------------------------------------------------------------- /src/LiveSharp.Dashboard/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Dashboard/wwwroot/favicon.ico -------------------------------------------------------------------------------- /src/LiveSharp.Interfaces/ILiveSharpTransport.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Threading.Tasks; 3 | 4 | namespace LiveSharp.Interfaces 5 | { 6 | public interface ILiveSharpTransport 7 | { 8 | object ConnectionObject { get; } 9 | 10 | Task Connect(string host, int port, Action onTransportException, ILogger logger); 11 | void Send(byte[] buffer, Action onComplete); 12 | void StartReceiving(Action onBufferReceived); 13 | void CloseConnection(); 14 | } 15 | } -------------------------------------------------------------------------------- /src/LiveSharp.Interfaces/ILiveSharpUpdateHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp 4 | { 5 | public interface ILiveSharpUpdateHandler : IDisposable 6 | { 7 | void Attach(ILiveSharpRuntime runtime); 8 | } 9 | } -------------------------------------------------------------------------------- /src/LiveSharp.Interfaces/ILogger.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | namespace LiveSharp 3 | { 4 | public interface ILogger 5 | { 6 | bool IsDebugLoggingEnabled { get; set; } 7 | 8 | void LogError(string errorMessage); 9 | void LogError(string errorMessage, Exception e); 10 | void LogMessage(string message); 11 | void LogWarning(string warning); 12 | void LogDebug(string debugInfo); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/LiveSharp.Interfaces/interfaces.snk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Interfaces/interfaces.snk -------------------------------------------------------------------------------- /src/LiveSharp.MakeInternalsVisible/LiveSharp.MakeInternalsVisible.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | net5.0 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/LiveSharp.ProjectTester/LiveSharp.ProjectTester.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Exe 5 | netcoreapp2.2 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/LiveSharp.Rewriters/IIlRewriter.cs: -------------------------------------------------------------------------------- 1 | using Mono.Cecil; 2 | using Mono.Cecil.Cil; 3 | 4 | namespace LiveSharp.Rewriters 5 | { 6 | internal interface IIlRewriter 7 | { 8 | MethodReference InterceptorMethod { get; set; } 9 | 10 | bool Matches(Instruction instruction); 11 | Instruction Rewrite(MethodDefinition parentMethod, Instruction instruction, ILProcessor ilProcessor); 12 | } 13 | } -------------------------------------------------------------------------------- /src/LiveSharp.Rewriters/RewriterBase.cs: -------------------------------------------------------------------------------- 1 | using Mono.Cecil; 2 | using Mono.Cecil.Rocks; 3 | 4 | namespace LiveSharp.Rewriters 5 | { 6 | public abstract class RewriterBase 7 | { 8 | public abstract void ProcessSupportModule(ModuleDefinition module); 9 | 10 | public void ProcessMainModule(ModuleDefinition module) 11 | { 12 | var allTypes = module.GetAllTypes(); 13 | foreach (var type in allTypes) 14 | ProcessMainModuleType(type); 15 | } 16 | 17 | public abstract void ProcessMainModuleType(TypeDefinition type); 18 | 19 | public abstract void Rewrite(); 20 | } 21 | } -------------------------------------------------------------------------------- /src/LiveSharp.Rider/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/.gitattributes: -------------------------------------------------------------------------------- 1 | # Set the default behavior, in case people don't have core.autocrlf set. 2 | * text=auto 3 | 4 | # Preserve line endings in gradle scripts 5 | gradlew* -text diff 6 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/.gitignore: -------------------------------------------------------------------------------- 1 | # Build artifacts 2 | [Bb]in/ 3 | [Oo]bj/ 4 | build 5 | output 6 | .gradle 7 | .tmp 8 | 9 | # User-specific files 10 | *.suo 11 | *.user 12 | *.sln.docstates 13 | *.cache 14 | 15 | # IDEs 16 | .idea 17 | .vs 18 | _ReSharper* 19 | _dotTrace* -------------------------------------------------------------------------------- /src/LiveSharp.Rider/.settings/org.eclipse.buildship.core.prefs: -------------------------------------------------------------------------------- 1 | connection.project.dir= 2 | eclipse.preferences.version=1 3 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | All notable changes to this project will be documented in this file. 3 | 4 | The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) 5 | and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). 6 | 7 | ## 2019.1 8 | - Initial version -------------------------------------------------------------------------------- /src/LiveSharp.Rider/buildPlugin.ps1: -------------------------------------------------------------------------------- 1 | Set-StrictMode -Version Latest 2 | $ErrorActionPreference = "Stop" 3 | 4 | . ".\settings.ps1" 5 | 6 | Invoke-Exe $MSBuildPath "/t:Restore;Rebuild" "$SolutionPath" "/v:minimal" -------------------------------------------------------------------------------- /src/LiveSharp.Rider/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /src/LiveSharp.Rider/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://cache-redirector.jetbrains.com/services.gradle.org/distributions/gradle-4.9-all.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/META-INF/livesharp.kotlin_module: -------------------------------------------------------------------------------- 1 |  2 | 7 3 | com.jetbrains.rider.modelLiveSharpModel_GeneratedKt -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/AbstractLayout.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/AbstractLayout.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/DimensionInfo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/DimensionInfo.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/GridConstraints.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/GridConstraints.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/GridLayoutManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/GridLayoutManager.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/HorizontalInfo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/HorizontalInfo.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/LayoutState.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/LayoutState.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/Spacer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/Spacer.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/SupportCode$TextWithMnemonic.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/SupportCode$TextWithMnemonic.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/SupportCode.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/SupportCode.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/Util.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/Util.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/VerticalInfo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/intellij/uiDesigner/core/VerticalInfo.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/FileEvent$Companion.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/FileEvent$Companion.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/FileEvent$print$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/FileEvent$print$1.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/FileEvent.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/FileEvent.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/LiveSharpModel$Companion.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/LiveSharpModel$Companion.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/LiveSharpModel$print$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/LiveSharpModel$print$1.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/LiveSharpModel.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/LiveSharpModel.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/LiveSharpModel_GeneratedKt$liveSharpModel$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/LiveSharpModel_GeneratedKt$liveSharpModel$1.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/LiveSharpModel_GeneratedKt.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/LiveSharpModel_GeneratedKt.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/MyEnum$$special$$inlined$enum$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/MyEnum$$special$$inlined$enum$1.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/MyEnum$$special$$inlined$enum$2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/MyEnum$$special$$inlined$enum$2.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/MyEnum$Companion.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/MyEnum$Companion.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/MyEnum.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/jetbrains/rider/model/MyEnum.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/ExpirationForm.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/ExpirationForm.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/GsonUtil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/GsonUtil.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/LicenseAction$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/LicenseAction$1.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/LicenseAction.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/LicenseAction.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/LicenseForm$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/LicenseForm$1.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/LicenseForm$2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/LicenseForm$2.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/LicenseForm.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/LicenseForm.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/LiveIcons.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/LiveIcons.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/MainAction.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/MainAction.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/MainForm.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/MainForm.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/NewsForm.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/NewsForm.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/ProjectService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/ProjectService.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/impl/FileEventsListener$ActionListenerImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/impl/FileEventsListener$ActionListenerImpl.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/impl/FileEventsListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/impl/FileEventsListener.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/impl/ProjectServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/impl/ProjectServiceImpl.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/models/LicenseResponseItem.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/models/LicenseResponseItem.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/classes/com/livesharp/models/NewsItem.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/classes/com/livesharp/models/NewsItem.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/resources/icons/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/resources/icons/icon.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/resources/icons/icon_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/resources/icons/icon_128.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/resources/icons/icon_256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/resources/icons/icon_256.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/resources/icons/icon_512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/resources/icons/icon_512.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/resources/icons/icon_64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/resources/icons/icon_64.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/resources/icons/paypal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/out/production/resources/icons/paypal.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/out/production/resources/icons/test.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/protocol/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/protocol/.settings/org.eclipse.buildship.core.prefs: -------------------------------------------------------------------------------- 1 | connection.project.dir=.. 2 | eclipse.preferences.version=1 3 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/protocol/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java' 3 | id 'org.jetbrains.kotlin.jvm' 4 | } 5 | 6 | dependencies { 7 | compile "org.jetbrains.kotlin:kotlin-stdlib" 8 | compile name: "rd-gen" 9 | compile name: "rider-model" 10 | } 11 | 12 | repositories { 13 | mavenCentral() 14 | flatDir { 15 | dirs rdLibDirectory.absolutePath 16 | } 17 | } -------------------------------------------------------------------------------- /src/LiveSharp.Rider/protocol/out/production/classes/META-INF/protocol.kotlin_module: -------------------------------------------------------------------------------- 1 |  -------------------------------------------------------------------------------- /src/LiveSharp.Rider/protocol/out/production/classes/model/rider/LiveSharpModel$MyEnum$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/protocol/out/production/classes/model/rider/LiveSharpModel$MyEnum$1.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/protocol/out/production/classes/model/rider/LiveSharpModel$fileEvent$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/protocol/out/production/classes/model/rider/LiveSharpModel$fileEvent$1.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/protocol/out/production/classes/model/rider/LiveSharpModel.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/protocol/out/production/classes/model/rider/LiveSharpModel.class -------------------------------------------------------------------------------- /src/LiveSharp.Rider/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'livesharp' 2 | 3 | include ':protocol' -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/dotnet/LiveSharp.ReSharperRider.Tests/TestEnvironment.cs: -------------------------------------------------------------------------------- 1 | using JetBrains.Application.BuildScript.Application.Zones; 2 | using JetBrains.ReSharper.TestFramework; 3 | using JetBrains.TestFramework; 4 | using JetBrains.TestFramework.Application.Zones; 5 | using NUnit.Framework; 6 | 7 | //[assembly: RequiresSTA] 8 | 9 | namespace LiveSharp.ReSharperRider.Tests 10 | { 11 | [ZoneDefinition] 12 | public interface ILiveSharpTestZone : ITestsEnvZone, IRequire 13 | { 14 | } 15 | 16 | [SetUpFixture] 17 | public class TestEnvironment : ExtensionTestEnvironmentAssembly 18 | { 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/dotnet/LiveSharp.ReSharperRider.Tests/test/data/CSharp/SampleTest.cs: -------------------------------------------------------------------------------- 1 | public class SampleTest 2 | { 3 | public void Method() 4 | { 5 | var variableWithCamelCase = true; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/dotnet/LiveSharp.ReSharperRider.Tests/test/data/CSharp/SampleTest.cs.gold: -------------------------------------------------------------------------------- 1 | public class |SampleTest|(0) 2 | { 3 | public void |Method|(1)() 4 | { 5 | var |variableWithCamelCase|(2) = true; 6 | } 7 | } 8 | 9 | --------------------------------------------------------- 10 | (0): ReSharper Warning: (T) 'Sample highlighting message' (E) 'Sample highlighting error tooltip for 'SampleTest'' 11 | (1): ReSharper Warning: (T) 'Sample highlighting message' (E) 'Sample highlighting error tooltip for 'Method'' 12 | (2): ReSharper Warning: (T) 'Sample highlighting message' (E) 'Sample highlighting error tooltip for 'variableWithCamelCase'' 13 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/dotnet/LiveSharp.ReSharperRider/ISolutionStateTracker.cs: -------------------------------------------------------------------------------- 1 | using JetBrains.Annotations; 2 | using JetBrains.DataFlow; 3 | using JetBrains.ProjectModel; 4 | 5 | namespace LiveSharp.ReSharperRider 6 | { 7 | public interface ISolutionStateTracker 8 | { 9 | [CanBeNull] 10 | ISolution Solution { get; } 11 | ISignal AfterSolutionOpened { get; } 12 | ISignal BeforeSolutionClosed { get; } 13 | } 14 | } -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/dotnet/LiveSharp.ReSharperRider/Samples/SignalEmitter.cs: -------------------------------------------------------------------------------- 1 | using JetBrains.DataFlow; 2 | using JetBrains.Lifetimes; 3 | 4 | namespace LiveSharp.RiderInterop 5 | { 6 | public class SignalEmitter 7 | { 8 | public ISignal SomethingHappened; 9 | 10 | public SignalEmitter(Lifetime lifetime) 11 | { 12 | SomethingHappened = new Signal(lifetime, "SignalEmitter.SomethingHappened"); 13 | } 14 | 15 | public void MakeItHappen(string arg) 16 | { 17 | SomethingHappened.Fire(arg); 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/dotnet/LiveSharp.ReSharperRider/Samples/SignalListener.cs: -------------------------------------------------------------------------------- 1 | using JetBrains.DataFlow; 2 | using JetBrains.Lifetimes; 3 | using JetBrains.Util; 4 | 5 | namespace LiveSharp.RiderInterop 6 | { 7 | public class SignalListener 8 | { 9 | public SignalListener(Lifetime lifetime, SignalEmitter signalEmitter) 10 | { 11 | signalEmitter.SomethingHappened.Advise(lifetime, 12 | arg => MessageBox.ShowInfo($"{arg}")); 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/dotnet/LiveSharp.ReSharperRider/SettingsModel.cs: -------------------------------------------------------------------------------- 1 | using JetBrains.ProjectModel; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace LiveSharp.ReSharperRider 9 | { 10 | [SolutionComponent] 11 | public class SettingsModel 12 | { 13 | public bool DoNotShowAtStartup { get; set; } 14 | public bool DebugAlways { get; set; } 15 | 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/dotnet/LiveSharp.ReSharperRider/Worker.cs: -------------------------------------------------------------------------------- 1 | using JetBrains.Application.Threading; 2 | using JetBrains.DataFlow; 3 | using JetBrains.Lifetimes; 4 | 5 | namespace LiveSharp.ReSharperRider 6 | { 7 | public class Worker 8 | { 9 | public IProperty Result; 10 | 11 | public Worker(Lifetime lifetime, IThreading threading, IShellLocks shellLocks) 12 | { 13 | //delay message test 14 | 15 | 16 | 17 | } 18 | 19 | 20 | } 21 | } -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/dotnet/Plugin.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 2019.1.0 4 | 5 | LiveSharp for Rider 6 | 7 | 8 | LiveSharp 9 | Copyright $([System.DateTime]::Now.Year) Maintainers of LiveSharp 10 | resharper plugin 11 | 12 | http://www.livexaml.com 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/com/livesharp/LiveIcons.java: -------------------------------------------------------------------------------- 1 | package com.livesharp; 2 | 3 | import com.intellij.openapi.util.IconLoader; 4 | import javax.swing.*; 5 | 6 | public class LiveIcons { 7 | 8 | Icon ICON_DEFAULT = IconLoader.getIcon("/icons/logo.png"); 9 | Icon ICON_TEST = IconLoader.getIcon("/icons/test.svg"); 10 | 11 | 12 | 13 | } 14 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/com/livesharp/MainAction.java: -------------------------------------------------------------------------------- 1 | package com.livesharp; 2 | 3 | import com.intellij.icons.AllIcons; 4 | import com.intellij.openapi.actionSystem.AnAction; 5 | import com.intellij.openapi.actionSystem.AnActionEvent; 6 | import com.intellij.openapi.actionSystem.PlatformDataKeys; 7 | import com.intellij.openapi.ui.DialogWrapper; 8 | import org.jetbrains.annotations.Nullable; 9 | 10 | public class MainAction { 11 | 12 | 13 | } 14 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/com/livesharp/ProjectService.java: -------------------------------------------------------------------------------- 1 | package com.livesharp; 2 | 3 | import com.intellij.openapi.components.ServiceManager; 4 | import com.intellij.openapi.project.Project; 5 | import org.jetbrains.annotations.NotNull; 6 | 7 | 8 | public interface ProjectService { 9 | 10 | 11 | 12 | static ProjectService getInstance(@NotNull Project project) { 13 | 14 | //project.getProjectFile() 15 | 16 | // when it's no longer needed, call 'connection.disconnect()' 17 | 18 | return ServiceManager.getService(project, ProjectService.class); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/com/livesharp/impl/ProjectServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.livesharp.impl; 2 | 3 | import com.livesharp.ProjectService; 4 | import com.intellij.openapi.project.Project; 5 | 6 | public class ProjectServiceImpl implements ProjectService { 7 | public ProjectServiceImpl(Project project) { 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/com/livesharp/models/LicenseResponseItem.java: -------------------------------------------------------------------------------- 1 | package com.livesharp.models; 2 | 3 | import java.util.Date; 4 | 5 | public class LicenseResponseItem { 6 | 7 | public String AccessKey; 8 | public String LicenseKey; 9 | 10 | public String License; 11 | public String Signature; 12 | 13 | public Date ValidUntil; 14 | public Boolean IsValid; 15 | public Boolean IsMalformed; 16 | 17 | //public Boolean IsTrial -> ValidUntil != null && ValidUntil < new Date(System.currentTimeMillis().plusYears(1); 18 | public Boolean IsEmptyLicense; 19 | 20 | 21 | } 22 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/com/livesharp/models/NewsItem.java: -------------------------------------------------------------------------------- 1 | package com.livesharp.models; 2 | 3 | 4 | import java.util.Date; 5 | 6 | public class NewsItem { 7 | public Date dateTime; 8 | public String title; 9 | public String content; 10 | 11 | NewsItem() { 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/com/livesharp/template.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/resources/icons/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/src/rider/main/resources/icons/icon.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/resources/icons/icon_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/src/rider/main/resources/icons/icon_128.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/resources/icons/icon_256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/src/rider/main/resources/icons/icon_256.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/resources/icons/icon_512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/src/rider/main/resources/icons/icon_512.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/resources/icons/icon_64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/src/rider/main/resources/icons/icon_64.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/resources/icons/paypal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/src/rider/main/resources/icons/paypal.png -------------------------------------------------------------------------------- /src/LiveSharp.Rider/src/rider/main/resources/icons/test.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /src/LiveSharp.Rider/tools/7za.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/tools/7za.exe -------------------------------------------------------------------------------- /src/LiveSharp.Rider/tools/nuget.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/tools/nuget.exe -------------------------------------------------------------------------------- /src/LiveSharp.Rider/tools/vswhere.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Rider/tools/vswhere.exe -------------------------------------------------------------------------------- /src/LiveSharp.Runtime.NS21/Extensions.cs: -------------------------------------------------------------------------------- 1 | using LiveSharp.Runtime.Virtual; 2 | using System; 3 | 4 | namespace LiveSharp.Runtime.NS21 5 | { 6 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime.NS21/LiveSharp.Runtime.NS21.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.1 5 | 9 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/DelegateSignature.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.Runtime 4 | { 5 | public struct DelegateSignature 6 | { 7 | public Type ReturnType; 8 | public Type[] ParameterTypes; 9 | } 10 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Handshake/IHandshakeClient.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Net.Http; 3 | using System.Threading.Tasks; 4 | 5 | namespace LiveSharp.Runtime.Handshake 6 | { 7 | public interface IHandshakeClient : IDisposable 8 | { 9 | Task PostAsync(string host, int port, string url, FormUrlEncodedContent formUrlEncodedContent, ILogger logger); 10 | } 11 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Handshake/IsExternalInit.cs: -------------------------------------------------------------------------------- 1 |  -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Handshake/ServerInfo.cs: -------------------------------------------------------------------------------- 1 | using LiveSharp.Runtime.Api; 2 | 3 | namespace LiveSharp.Runtime.Handshake 4 | { 5 | public abstract record ServerInfo 6 | { 7 | public record Found(ServerAddress ServerAddress) : ServerInfo; 8 | public record Missing(string error = "") : ServerInfo; 9 | } 10 | } 11 | 12 | namespace System.Runtime.CompilerServices 13 | { 14 | internal static class IsExternalInit {} 15 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/IL/LocalMetadata.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.Runtime.IL 4 | { 5 | public class LocalMetadata 6 | { 7 | public string LocalName { get; } 8 | public Type LocalType { 9 | get; 10 | set; 11 | } 12 | 13 | public LocalMetadata(string localName, Type localType) 14 | { 15 | LocalName = localName; 16 | LocalType = localType; 17 | } 18 | 19 | public override string ToString() 20 | { 21 | return $"{LocalName} ({LocalType})"; 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/IL/ParameterMetadata.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.Runtime.IL 4 | { 5 | public class ParameterMetadata 6 | { 7 | public string ParameterName { get; } 8 | public Type ParameterType { get; } 9 | 10 | public ParameterMetadata(string parameterName, Type parameterType) 11 | { 12 | ParameterName = parameterName; 13 | ParameterType = parameterType; 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/ILiveSharpRuntimeExt.cs: -------------------------------------------------------------------------------- 1 | using LiveSharp.Runtime.IL; 2 | using LiveSharp.Runtime.Virtual; 3 | using System; 4 | 5 | namespace LiveSharp.Runtime 6 | { 7 | public interface ILiveSharpRuntimeExt 8 | { 9 | bool IsDynamicMethodSupported(); 10 | Delegate GetDelegate(DelegateBuilder delegateBuilder, VirtualMethodBody methodBody, IlInstructionList instructions, Type delegateType, ILogger logger, out object compiler); 11 | } 12 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Infrastructure/ExpressionExtensions.cs: -------------------------------------------------------------------------------- 1 | using System.Linq.Expressions; 2 | 3 | namespace LiveSharp.Runtime.Infrastructure 4 | { 5 | public static class ExpressionExtensions 6 | { 7 | 8 | } 9 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Infrastructure/RuntimeExtensions.cs: -------------------------------------------------------------------------------- 1 | using LiveSharp.Runtime.IL; 2 | using System; 3 | 4 | namespace LiveSharp.Runtime.Infrastructure 5 | { 6 | public static class RuntimeExtensions 7 | { 8 | public static Type ResolveVirtualType(this Type type) 9 | { 10 | return CompilerHelpers.ResolveVirtualType(type); 11 | } 12 | 13 | public static Type ResolveGenericTypeParameter(this Type type) 14 | { 15 | if (type is GenericTypeParameter gtp) 16 | return typeof(object); 17 | return type; 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Infrastructure/XElementExtensions.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Xml.Linq; 3 | 4 | namespace LiveSharp.Runtime.Infrastructure 5 | { 6 | public static class XElementExtensions 7 | { 8 | public static string AttributeValueOrThrow(this XElement instance, string attributeName) 9 | { 10 | return instance.Attribute(attributeName)?.Value ?? throw new Exception($"No attribute named {attributeName} on: {instance}"); 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/LiveSharpConfig.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace LiveSharp.Runtime 4 | { 5 | public class LiveSharpConfig : ILiveSharpConfig 6 | { 7 | private readonly Dictionary _settings = new Dictionary(); 8 | 9 | public bool TryGetValue(string key, out string value) 10 | { 11 | return _settings.TryGetValue(key, out value); 12 | } 13 | 14 | public void SetValue(string key, string value) 15 | { 16 | _settings[key] = value; 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/MethodRefAccess.cs: -------------------------------------------------------------------------------- 1 | using System.Linq.Expressions; 2 | using System.Reflection; 3 | 4 | namespace LiveSharp.Runtime 5 | { 6 | class MethodRefAccess 7 | { 8 | public Expression Target { get; set; } 9 | public MethodInfo Method { get; set; } 10 | 11 | public MethodRefAccess(Expression target, MethodInfo method) 12 | { 13 | Target = target; 14 | Method = method; 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Virtual/DynamicConstructorInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.Runtime 4 | { 5 | class DynamicConstructorInfo : DynamicMember 6 | { 7 | public Type[] ParameterTypes { get; set; } 8 | } 9 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Virtual/DynamicMember.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.Runtime 4 | { 5 | class DynamicMember 6 | { 7 | public Type ContainingType { get; set; } 8 | public string MemberName { get; set; } 9 | } 10 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Virtual/IVirtualInvokable.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using LiveSharp.Runtime.IL; 3 | 4 | namespace LiveSharp.Runtime 5 | { 6 | public interface IVirtualInvokable 7 | { 8 | Type DeclaringType { get; } 9 | string Name { get; } 10 | Type[] GetParameterTypes(); 11 | 12 | DelegateBuilder DelegateBuilder { get; } 13 | } 14 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Virtual/IVirtualMemberInfo.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.Runtime 2 | { 3 | public interface IVirtualMemberInfo 4 | { 5 | string Name { get; } 6 | } 7 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Virtual/LiveSharpUpdateSiteBase.cs: -------------------------------------------------------------------------------- 1 | using System.Runtime.CompilerServices; 2 | 3 | namespace LiveSharp.Runtime.Virtual 4 | { 5 | public abstract class LiveSharpUpdateSiteBase 6 | { 7 | public static readonly ConditionalWeakTable ExtensionInstances = new ConditionalWeakTable(); 8 | 9 | public static object GetExtensionInstance(object instance) 10 | { 11 | return ExtensionInstances.GetOrCreateValue(instance); 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Virtual/MemberAccessor.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.Runtime 2 | { 3 | public struct VirtualMemberAccessor 4 | { 5 | public T this[object instance, VirtualFieldInfo info] { 6 | get { 7 | return (T)info[instance]; 8 | } 9 | set { 10 | info[instance] = value; 11 | } 12 | } 13 | 14 | public T this[object instance, VirtualPropertyInfo info] { 15 | get { 16 | return (T)info[instance]; 17 | } 18 | set { 19 | info[instance] = value; 20 | } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/Virtual/VirtualParameterInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Reflection; 3 | using System.Runtime.CompilerServices; 4 | 5 | namespace LiveSharp.Runtime 6 | { 7 | class VirtualParameterInfo : ParameterInfo 8 | { 9 | private Type _parameterType; 10 | private string _name; 11 | 12 | public VirtualParameterInfo(Type parameterType, string name) 13 | { 14 | _parameterType = parameterType; 15 | _name = name; 16 | } 17 | 18 | public override Type ParameterType => _parameterType; 19 | public override string Name => _name; 20 | } 21 | } -------------------------------------------------------------------------------- /src/LiveSharp.Runtime/runtime.key.snk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Runtime/runtime.key.snk -------------------------------------------------------------------------------- /src/LiveSharp.Server.Common/LiveSharp.Server.Common.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | 8 6 | LiveSharp.Server 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/LiveSharp.Server/App.razor: -------------------------------------------------------------------------------- 1 | @using LiveSharp.Server.Shared 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |

Sorry, there's nothing at this address.

10 |
11 |
12 |
-------------------------------------------------------------------------------- /src/LiveSharp.Server/Assets/icon_128.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/Assets/icon_128.ico -------------------------------------------------------------------------------- /src/LiveSharp.Server/Assets/icon_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/Assets/icon_128.png -------------------------------------------------------------------------------- /src/LiveSharp.Server/Directory.Build.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 2.1.3 4 | $(Version) 5 | $(Version) 6 | 7 | 8 | $(Version) 9 | 10 | -------------------------------------------------------------------------------- /src/LiveSharp.Server/FodyWeavers.xml: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /src/LiveSharp.Server/ILogger.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | -------------------------------------------------------------------------------- /src/LiveSharp.Server/Services/DebugServerAlreadyLoadingException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.Server.Services 4 | { 5 | class DebugServerAlreadyLoadingException : Exception 6 | { 7 | 8 | } 9 | } -------------------------------------------------------------------------------- /src/LiveSharp.Server/Shared/MainLayout.razor: -------------------------------------------------------------------------------- 1 | @inherits LayoutComponentBase 2 | 3 | @Body 4 | 5 | @code { 6 | 7 | } -------------------------------------------------------------------------------- /src/LiveSharp.Server/_Imports.razor: -------------------------------------------------------------------------------- 1 | @using System.Net.Http 2 | @using Microsoft.AspNetCore.Authorization 3 | @using Microsoft.AspNetCore.Components.Authorization 4 | @using Microsoft.AspNetCore.Components.Forms 5 | @using Microsoft.AspNetCore.Components.Routing 6 | @using Microsoft.AspNetCore.Components.Web 7 | @using Microsoft.JSInterop 8 | @using LiveSharp.Server 9 | @using LiveSharp.Server.Shared 10 | @using LiveSharp.Server.Components 11 | @using LiveSharp.Server.Services -------------------------------------------------------------------------------- /src/LiveSharp.Server/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Trace", 5 | "System": "Debug", 6 | "Microsoft": "None" 7 | } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /src/LiveSharp.Server/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Trace", 5 | "System": "Debug", 6 | "Microsoft": "None" 7 | } 8 | }, 9 | "LiveSharpSettings": { 10 | "LicenseKey": "", 11 | "SubscriptionEmail": "", 12 | "Password": "" 13 | }, 14 | "AllowedHosts": "*" 15 | } 16 | -------------------------------------------------------------------------------- /src/LiveSharp.Server/localhost.livesharp.net.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/localhost.livesharp.net.pfx -------------------------------------------------------------------------------- /src/LiveSharp.Server/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "livesharp.server", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "buildcss": "postcss wwwroot/css/app.tw.css -o wwwroot/css/app.min.css" 8 | }, 9 | "author": "", 10 | "license": "ISC", 11 | "dependencies": { 12 | "autoprefixer": "^10.2.5", 13 | "postcss": "^8.2.8", 14 | "postcss-cli": "^8.3.1", 15 | "tailwindcss": "^2.0.3" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/LiveSharp.Server/postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | } 6 | } -------------------------------------------------------------------------------- /src/LiveSharp.Server/reload.cmd: -------------------------------------------------------------------------------- 1 | call npx tailwind build wwwroot\assets\css\app.css -o wwwroot\assets\css\app.out.css 2 | xcopy /s wwwroot obj\Host\bin\wwwroot /Y -------------------------------------------------------------------------------- /src/LiveSharp.Server/tailwind.config.js: -------------------------------------------------------------------------------- 1 | const colors = require('tailwindcss/colors'); 2 | module.exports = { 3 | purge: { }, 4 | darkMode: false, // or 'media' or 'class' 5 | theme: { 6 | extend: { 7 | }, 8 | }, 9 | variants: { 10 | extend: {}, 11 | }, 12 | plugins: [ 13 | ], 14 | } 15 | -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-brands-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-brands-400.eot -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-brands-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-brands-400.ttf -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-brands-400.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-brands-400.woff -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-brands-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-brands-400.woff2 -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-regular-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-regular-400.eot -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-regular-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-regular-400.ttf -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-regular-400.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-regular-400.woff -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-regular-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-regular-400.woff2 -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-solid-900.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-solid-900.eot -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-solid-900.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-solid-900.ttf -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-solid-900.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-solid-900.woff -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-solid-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/css/font-awesome/webfonts/fa-solid-900.woff2 -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/favicon.ico -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/img/splashscreen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/assets/img/splashscreen.png -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/assets/js/ex-links.js: -------------------------------------------------------------------------------- 1 | (function () { 2 | const shell = require('electron').shell; 3 | const links = document.querySelectorAll('a[href]'); 4 | 5 | Array.prototype.forEach.call(links, function (link) { 6 | const url = link.getAttribute('href'); 7 | if (url.indexOf('http') === 0) { 8 | link.addEventListener('click', function (e) { 9 | e.preventDefault(); 10 | shell.openExternal(url); 11 | }); 12 | }; 13 | }); 14 | }); 15 | -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/components/imports.js: -------------------------------------------------------------------------------- 1 | const { app, ipcRenderer, remote, clipboard } = require("electron"); 2 | const { machineId, machineIdSync } = require("node-machine-id"); 3 | const { VueAutosuggest } = require("vue-autosuggest"); -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/components/inspector/inspector-vms-tab.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/components/inspector/inspector-vms-tab.js -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/css/app.tw.css: -------------------------------------------------------------------------------- 1 | @tailwind base; 2 | @tailwind components; 3 | @tailwind utilities; 4 | 5 | .wpb_row h2 { 6 | @apply mt-4 mb-2 text-lg text-gray-300; 7 | } 8 | 9 | .wpb_row a { 10 | @apply underline; 11 | } 12 | 13 | .wpb_row ul { 14 | @apply list-disc; 15 | } 16 | 17 | .wpb_row .vc_column-inner { 18 | @apply ml-4; 19 | } 20 | 21 | .wpb_row h2 { 22 | @apply -ml-4; 23 | } -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/css/open-iconic/font/fonts/open-iconic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/css/open-iconic/font/fonts/open-iconic.eot -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/css/open-iconic/font/fonts/open-iconic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/css/open-iconic/font/fonts/open-iconic.otf -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/css/open-iconic/font/fonts/open-iconic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Server/wwwroot/css/open-iconic/font/fonts/open-iconic.woff -------------------------------------------------------------------------------- /src/LiveSharp.Server/wwwroot/css/site.css: -------------------------------------------------------------------------------- 1 | :root { 2 | --bg-color: #2a2a2a; 3 | --surface-color: #393939; 4 | --primary-color: #ff6768; 5 | --secondary-color: #59c764; 6 | --third-color: #7391d9; 7 | --text-on-backgroud: #b1b1b1; 8 | --text-on-surface: #e1e1e1; 9 | --text-on-primary: #222222; 10 | --text-on-secondary: #333333; 11 | } 12 | 13 | html, body { 14 | color: var(--text-on-surface); 15 | font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; 16 | } 17 | 18 | body { 19 | background-color: var(--bg-color); 20 | } 21 | 22 | a { 23 | text-decoration: underline; 24 | 25 | } -------------------------------------------------------------------------------- /src/LiveSharp.ServerClient/BroadcastGroups.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.ServerClient 2 | { 3 | public class BroadcastGroups 4 | { 5 | public static int LiveSharp = 1; 6 | public static int LiveXaml = 4; 7 | public static int General = 5; 8 | public static int Inspector = 6; 9 | public static int Dashboard = 7; 10 | public static int Heartbeat = 255; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/LiveSharp.ServerClient/Checksum.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace LiveSharp.ServerClient 4 | { 5 | public static class Checksum 6 | { 7 | public static ushort Fletcher16(IReadOnlyList data) 8 | { 9 | ushort sum1 = 0; 10 | ushort sum2 = 0; 11 | 12 | for (var index = 0; index < data.Count; ++index) { 13 | sum1 = (ushort)((sum1 + data[index]) % 255); 14 | sum2 = (ushort)((sum2 + sum1) % 255); 15 | } 16 | 17 | return (ushort)((sum2 << 8) | sum1); 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /src/LiveSharp.ServerClient/MessageType.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.ServerClient 2 | { 3 | public enum MessageType : byte 4 | { 5 | JoinGroup = 1, 6 | Broadcast 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /src/LiveSharp.ServerClient/key.snk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.ServerClient/key.snk -------------------------------------------------------------------------------- /src/LiveSharp.ServerTask/LiveSharp.ServerTask.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /src/LiveSharp.ServerTask/LiveSharpServerTask.cs: -------------------------------------------------------------------------------- 1 | using System.Diagnostics; 2 | using Microsoft.Build.Framework; 3 | 4 | namespace LiveSharp.ServerTask 5 | { 6 | public class LiveSharpServerTask : ITask 7 | { 8 | public IBuildEngine BuildEngine { get; set; } 9 | public ITaskHost HostObject { get; set; } 10 | 11 | public bool Execute() 12 | { 13 | var runningServers = Process.GetProcessesByName("WebApplication.exe"); 14 | 15 | Process.Start(@"WebApplication.exe"); 16 | return true; 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/LiveSharp.ServerTask/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /src/LiveSharp.Shared/Api/ServerAddress.cs: -------------------------------------------------------------------------------- 1 | #if LIVESHARP_RUNTIME 2 | namespace LiveSharp.Runtime.Api 3 | #else 4 | namespace LiveSharp.Shared.Api 5 | #endif 6 | { 7 | public class ServerAddress : XmlMessage 8 | { 9 | public string Url { get; set; } 10 | public int TcpPort { get; set; } 11 | 12 | public override string ToString() 13 | { 14 | return $"Web host: {Url} Tcp port: {TcpPort}"; 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /src/LiveSharp.Shared/Debugging/DebugEvent.cs: -------------------------------------------------------------------------------- 1 | using LiveSharp.Shared.Infrastructure; 2 | using System; 3 | using System.Collections; 4 | using System.Linq; 5 | using System.Net; 6 | using System.Threading.Tasks; 7 | 8 | #if LIVESHARP_RUNTIME 9 | namespace LiveSharp.Runtime.Debugging 10 | #else 11 | namespace LiveSharp.Shared.Debugging 12 | #endif 13 | { 14 | public abstract class DebugEvent 15 | { 16 | public int InvocationId { get; set; } 17 | public long Timestamp { get; set; } 18 | 19 | protected DebugEvent() 20 | { 21 | Timestamp = DateTime.Now.ToBinary(); 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /src/LiveSharp.Shared/Debugging/ReturnDebugEvent.cs: -------------------------------------------------------------------------------- 1 |  2 | #if LIVESHARP_RUNTIME 3 | namespace LiveSharp.Runtime.Debugging 4 | #else 5 | namespace LiveSharp.Shared.Debugging 6 | #endif 7 | { 8 | public class ReturnDebugEvent : DebugEvent 9 | { 10 | public ReturnDebugEvent(int invocationId, object value) 11 | { 12 | InvocationId = invocationId; 13 | ReturnValue = value; 14 | } 15 | 16 | public ReturnDebugEvent() 17 | { } 18 | 19 | public object ReturnValue { get; set; } 20 | } 21 | } -------------------------------------------------------------------------------- /src/LiveSharp.Shared/ILogger.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | #if LIVESHARP_RUNTIME 4 | namespace LiveSharp.Runtime 5 | #else 6 | namespace LiveSharp 7 | #endif 8 | { 9 | public interface ILogger 10 | { 11 | bool IsDebugLoggingEnabled { get; set; } 12 | 13 | void LogError(string errorMessage); 14 | void LogError(string errorMessage, Exception e); 15 | void LogMessage(string message); 16 | void LogWarning(string warning); 17 | void LogDebug(string debugInfo); 18 | } 19 | } 20 | 21 | // Don't remove 22 | namespace LiveSharp.Runtime 23 | { 24 | 25 | } -------------------------------------------------------------------------------- /src/LiveSharp.Shared/LiveSharp.Shared.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net5.0 5 | 9 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/LiveSharp.Shared/Network/BroadcastGroups.cs: -------------------------------------------------------------------------------- 1 | #if LIVESHARP_RUNTIME 2 | namespace LiveSharp.Runtime.Network 3 | #else 4 | namespace LiveSharp.Shared.Network 5 | #endif 6 | { 7 | public class BroadcastGroups 8 | { 9 | public static int LiveSharp = 1; 10 | public static int LiveXaml = 4; 11 | public static int General = 5; 12 | public static int Inspector = 6; 13 | public static int Dashboard = 7; 14 | public static int LiveBlazor = 8; 15 | public static int Heartbeat = 255; 16 | } 17 | } -------------------------------------------------------------------------------- /src/LiveSharp.Shared/Network/Checksum.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | // ReSharper disable once CheckNamespace 4 | namespace LiveSharp.ServerClient 5 | { 6 | public static class Checksum 7 | { 8 | public static ushort Fletcher16(IReadOnlyList data) 9 | { 10 | ushort sum1 = 0; 11 | ushort sum2 = 0; 12 | 13 | for (var index = 0; index < data.Count; ++index) { 14 | sum1 = (ushort)((sum1 + data[index]) % 255); 15 | sum2 = (ushort)((sum2 + sum1) % 255); 16 | } 17 | 18 | return (ushort)((sum2 << 8) | sum1); 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /src/LiveSharp.Shared/Network/INetworkClient.cs: -------------------------------------------------------------------------------- 1 | #if LIVESHARP_RUNTIME 2 | namespace LiveSharp.Runtime.Network 3 | #else 4 | namespace LiveSharp.Shared.Network 5 | #endif 6 | { 7 | public interface INetworkClient 8 | { 9 | void Send(byte[] buffer); 10 | bool IsConnected { get; } 11 | } 12 | } -------------------------------------------------------------------------------- /src/LiveSharp.Shared/Network/MessageType.cs: -------------------------------------------------------------------------------- 1 | #if LIVESHARP_RUNTIME 2 | namespace LiveSharp.Runtime.Network 3 | #else 4 | namespace LiveSharp.Shared.Network 5 | #endif 6 | { 7 | public enum MessageType : byte 8 | { 9 | JoinGroup = 1, 10 | Broadcast 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/LiveSharp.SolutionWorkbench/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /src/LiveSharp.SolutionWorkbench/Program.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 LiveSharp.SolutionWorkbench 8 | { 9 | class Program 10 | { 11 | static void Main(string[] args) 12 | { 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/LiveSharp.Support.Blazor/BlazorServiceProvider.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.ComponentModel; 3 | 4 | namespace LiveSharp.Support.Blazor 5 | { 6 | public static class BlazorServiceProvider 7 | { 8 | public static IServiceProvider ServiceProvider { get; set; } 9 | public static object GetService(Type serviceType) 10 | { 11 | return ServiceProvider?.GetService(serviceType); 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /src/LiveSharp.Support.Blazor/support.blazor.snk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp.Support.Blazor/support.blazor.snk -------------------------------------------------------------------------------- /src/LiveSharp.Support.TestHarness/LiveSharp.Support.TestHarness.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net5.0 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/LiveSharp.Support.Uno/LiveSharp.Support.Uno.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/LiveSharp.Support.XamarinForms/Infrastructure/ActionDisposable.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.Support.XamarinForms 4 | { 5 | class ActionDisposable : IDisposable 6 | { 7 | private readonly Action _action; 8 | 9 | public ActionDisposable(Action action) 10 | { 11 | _action = action ?? throw new ArgumentNullException(nameof(action)); 12 | } 13 | 14 | public void Dispose() 15 | { 16 | _action?.Invoke(); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/LiveSharp.Support.XamarinForms/Inspector/MethodInspector.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.Support.XamarinForms 2 | { 3 | public class MethodInspector 4 | { 5 | 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /src/LiveSharp.Support.XamarinForms/InstanceInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp 4 | { 5 | class InstanceInfo 6 | { 7 | public int InstanceId { get; } 8 | public object[] ConstructorArguments { get; } 9 | public string CtorMethodIdentifier { get; } 10 | 11 | public InstanceInfo(int instanceId, object[] constructorArguments, string ctorMethodIdentifier) 12 | { 13 | InstanceId = instanceId; 14 | ConstructorArguments = constructorArguments; 15 | CtorMethodIdentifier = ctorMethodIdentifier; 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /src/LiveSharp.Workbench/LiveSharp.Workbench.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | net5.0 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/LiveSharp.Workbench/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Reflection; 3 | using System.Runtime.Loader; 4 | 5 | namespace LiveSharp.Workbench 6 | { 7 | class Program 8 | { 9 | static void Main(string[] args) 10 | { 11 | var agent = new Agent { Id = 1 }; 12 | Console.WriteLine("Hello World!"); 13 | } 14 | } 15 | 16 | public record Agent 17 | { 18 | public int Id { get; init; } 19 | } 20 | } -------------------------------------------------------------------------------- /src/LiveSharp.Workspace/CSharp/InMemoryResolver.cs: -------------------------------------------------------------------------------- 1 | using Mono.Cecil; 2 | 3 | namespace LiveSharp.CSharp 4 | { 5 | class InMemoryResolver : DefaultAssemblyResolver 6 | { 7 | public override AssemblyDefinition Resolve(AssemblyNameReference name, ReaderParameters parameters) 8 | { 9 | parameters.InMemory = true; 10 | return base.Resolve(name, parameters); 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /src/LiveSharp.Workspace/Data/MemberInitializers.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | using System.Xml.Linq; 4 | 5 | namespace LiveSharp.Ide.Data 6 | { 7 | public class MemberInitializers : Dictionary 8 | { 9 | public string Serialize() 10 | { 11 | var members = this.Select(kvp => new XElement("Member", new XAttribute("Name", kvp.Key), kvp.Value)); 12 | 13 | return new XElement("Root", members).ToString(SaveOptions.DisableFormatting); 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /src/LiveSharp.Workspace/Data/MethodListEventArgs.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.Ide.Data 4 | { 5 | public class MethodListEventArgs : EventArgs 6 | { 7 | public string[] MethodList { get; set; } = new string[0]; 8 | } 9 | } -------------------------------------------------------------------------------- /src/LiveSharp.Workspace/Data/ProjectType.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.Ide.Data 2 | { 3 | public enum ProjectType 4 | { 5 | Unknown, 6 | XamarinForms 7 | } 8 | } -------------------------------------------------------------------------------- /src/LiveSharp.Workspace/Infrastructure/XElementExtensions.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Xml.Linq; 3 | 4 | namespace LiveSharp.Infrastructure 5 | { 6 | public static class XElementExtensions 7 | { 8 | public static string AttributeValueOrThrow(this XElement instance, string attributeName) 9 | { 10 | return instance.Attribute(attributeName)?.Value ?? throw new Exception($"No attribute named {attributeName} on: {instance}"); 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /src/LiveSharp.Workspace/livesharp.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | * 6 | 7 | LiveSharp.XamarinFormsViewHandler,LiveSharp.XamarinFormsViewModelsHandler 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /src/LiveSharp/App/LiveSharp.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.App 2 | { 3 | public static class LiveSharp 4 | { 5 | public static void Debug() {} 6 | } 7 | } -------------------------------------------------------------------------------- /src/LiveSharp/ILiveSharpConfig.cs: -------------------------------------------------------------------------------- 1 | using System.Xml; 2 | 3 | namespace LiveSharp 4 | { 5 | public interface ILiveSharpConfig 6 | { 7 | bool TryGetValue(string key, out string value); 8 | void SetValue(string key, string value); 9 | } 10 | } -------------------------------------------------------------------------------- /src/LiveSharp/ILiveSharpDashboard.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp 2 | { 3 | public interface ILiveSharpDashboard 4 | { 5 | void Configure(ILiveSharpRuntime app); 6 | void Run(ILiveSharpRuntime app); 7 | } 8 | } -------------------------------------------------------------------------------- /src/LiveSharp/ILiveSharpInspector.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp 2 | { 3 | public interface ILiveSharpInspector 4 | { 5 | void Render(); 6 | } 7 | } -------------------------------------------------------------------------------- /src/LiveSharp/ILiveSharpLoadContext.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Reflection; 3 | 4 | namespace LiveSharp 5 | { 6 | public interface ILiveSharpLoadContext 7 | { 8 | Assembly MainAssembly { get; } 9 | List ReferenceAssemblies { get; } 10 | } 11 | } -------------------------------------------------------------------------------- /src/LiveSharp/ILiveSharpLogger.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp 4 | { 5 | public interface ILiveSharpLogger 6 | { 7 | bool IsDebugLoggingEnabled { get; set; } 8 | 9 | void LogError(string errorMessage); 10 | void LogError(string errorMessage, Exception e); 11 | void LogMessage(string message); 12 | void LogWarning(string warning); 13 | void LogDebug(string debugInfo); 14 | } 15 | } -------------------------------------------------------------------------------- /src/LiveSharp/ILiveSharpUpdateHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp 4 | { 5 | public interface ILiveSharpUpdateHandler : IDisposable 6 | { 7 | void Attach(ILiveSharpRuntime runtime); 8 | } 9 | } -------------------------------------------------------------------------------- /src/LiveSharp/IUpdatedMethod.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | namespace LiveSharp 5 | { 6 | public interface IUpdatedMethod 7 | { 8 | string MethodIdentifier { get; } 9 | object MethodMetadata { get; } 10 | Type DeclaringType { get; } 11 | object Invoke(object instance, params object[] arguments); 12 | } 13 | } -------------------------------------------------------------------------------- /src/LiveSharp/IUpdatedResource.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp 2 | { 3 | public interface IUpdatedResource 4 | { 5 | string Path { get; } 6 | string Content { get; } 7 | } 8 | } -------------------------------------------------------------------------------- /src/LiveSharp/LiveSharpAssemblyUpdate.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp 4 | { 5 | [Serializable] 6 | public class LiveSharpAssemblyUpdate 7 | { 8 | public string Name { get; set; } 9 | public byte[] AssemblyBuffer { get; set; } 10 | public byte[] SymbolsBuffer { get; set; } 11 | 12 | public LiveSharpAssemblyUpdate() 13 | { } 14 | 15 | public LiveSharpAssemblyUpdate(string name, byte[] assemblyBuffer, byte[] symbolsBuffer) 16 | { 17 | Name = name; 18 | AssemblyBuffer = assemblyBuffer; 19 | SymbolsBuffer = symbolsBuffer; 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /src/LiveSharp/LiveSharpExcludeAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp 4 | { 5 | [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)] 6 | public class LiveSharpExcludeAttribute : Attribute 7 | { 8 | public LiveSharpExcludeAttribute(string pattern) 9 | { 10 | 11 | } 12 | 13 | public LiveSharpExcludeAttribute(Type type, string methodName = null, params Type[] parameterTypes) 14 | { 15 | 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /src/LiveSharp/LiveSharpIncludeProjectAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp 4 | { 5 | [AttributeUsage(AttributeTargets.Assembly)] 6 | public class LiveSharpSkipStartAttribute : Attribute 7 | { 8 | public LiveSharpSkipStartAttribute() {} 9 | } 10 | } -------------------------------------------------------------------------------- /src/LiveSharp/LiveSharpInjectAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using LiveSharp; 4 | 5 | namespace LiveSharp 6 | { 7 | [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)] 8 | public class LiveSharpInjectAttribute : Attribute 9 | { 10 | public LiveSharpInjectAttribute(string pattern) 11 | { 12 | 13 | } 14 | 15 | public LiveSharpInjectAttribute(Type type, string methodName = null, params Type[] parameterTypes) 16 | { 17 | 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /src/LiveSharp/LiveSharpServerIpAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp 4 | { 5 | [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)] 6 | public class LiveSharpServerIpAttribute : Attribute 7 | { 8 | public LiveSharpServerIpAttribute(string ipAddress) 9 | { 10 | 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /src/LiveSharp/LiveSharpStartAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp 4 | { 5 | [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)] 6 | public class LiveSharpStartAttribute : Attribute 7 | { 8 | public LiveSharpStartAttribute(Type type, string methodName, params Type[] parameterTypes) 9 | { 10 | 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /src/LiveSharp/runtime.key.snk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/LiveSharp/runtime.key.snk -------------------------------------------------------------------------------- /src/Sources/Checksum.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace LiveSharp.ServerClient 4 | { 5 | public static class Checksum 6 | { 7 | public static ushort Fletcher16(IReadOnlyList data) 8 | { 9 | ushort sum1 = 0; 10 | ushort sum2 = 0; 11 | 12 | for (var index = 0; index < data.Count; ++index) { 13 | sum1 = (ushort)((sum1 + data[index]) % 255); 14 | sum2 = (ushort)((sum2 + sum1) % 255); 15 | } 16 | 17 | return (ushort)((sum2 << 8) | sum1); 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /src/Workbench/Workbench.Library/LibraryType.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Workbench.Library 4 | { 5 | public class LibraryType 6 | { 7 | public void LibraryMethod(int a, int b, int c) 8 | { 9 | 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /src/Workbench/Workbench.Library/Workbench.Library.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.CoreConsole/Workbench.CoreConsole.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Exe 5 | netcoreapp2.0 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.CoreConsole/livesharp.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | * 6 | 7 | LiveSharp.XamarinFormsViewHandler,LiveSharp.XamarinFormsViewModelHandler 8 | 9 | 10 | Build 11 | 12 | -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.CoreConsole/run.cmd: -------------------------------------------------------------------------------- 1 | dotnet run -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Properties/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/layout/Tabbar.axml: -------------------------------------------------------------------------------- 1 | 2 | 12 | -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/layout/Toolbar.axml: -------------------------------------------------------------------------------- 1 | 9 | 10 | -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-anydpi-v26/icon.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-anydpi-v26/icon_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-hdpi/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-hdpi/Icon.png -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-hdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-hdpi/launcher_foreground.png -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-mdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-mdpi/icon.png -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-mdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-mdpi/launcher_foreground.png -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xhdpi/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xhdpi/Icon.png -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xxhdpi/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xxhdpi/Icon.png -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xxhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xxhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xxxhdpi/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xxxhdpi/Icon.png -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xxxhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/mipmap-xxxhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms.Android/Resources/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFFFFF 4 | #3F51B5 5 | #303F9F 6 | #FF4081 7 | 8 | -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms/App.xaml: -------------------------------------------------------------------------------- 1 |  2 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms/Workbench.XamarinForms.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | ..\..\..\..\build\LiveSharp.dll 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/Workbench/Workbench/Workbench.XamarinForms/livesharp.rules: -------------------------------------------------------------------------------- 1 | * -------------------------------------------------------------------------------- /test/AspCoreWorkbench/AspCoreWorkbench.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netcoreapp3.1 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /test/AspCoreWorkbench/WeatherForecast.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace AspCoreWorkbench 4 | { 5 | public class WeatherForecast 6 | { 7 | public DateTime Date { get; set; } 8 | 9 | public int TemperatureC { get; set; } 10 | 11 | public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); 12 | 13 | public string Summary { get; set; } 14 | } 15 | } -------------------------------------------------------------------------------- /test/AspCoreWorkbench/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Information", 5 | "Microsoft": "Warning", 6 | "Microsoft.Hosting.Lifetime": "Information" 7 | } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /test/AspCoreWorkbench/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Information", 5 | "Microsoft": "Warning", 6 | "Microsoft.Hosting.Lifetime": "Information" 7 | } 8 | }, 9 | "AllowedHosts": "*" 10 | } 11 | -------------------------------------------------------------------------------- /test/BlazorComponents/Component1.razor: -------------------------------------------------------------------------------- 1 | 
2 | This Blazor component is in the BlazorComponents package. 3 |
4 | @Parameter 5 | 6 | @code { 7 | [Parameter] public string Parameter { get; set; } 8 | 9 | 10 | } 11 | -------------------------------------------------------------------------------- /test/BlazorComponents/ExampleJsInterop.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.JSInterop; 2 | using System.Threading.Tasks; 3 | 4 | namespace BlazorComponents 5 | { 6 | public class ExampleJsInterop 7 | { 8 | public static ValueTask Prompt(IJSRuntime jsRuntime, string message) 9 | { 10 | // Implemented in exampleJsInterop.js 11 | return jsRuntime.InvokeAsync( 12 | "exampleJsFunctions.showPrompt", 13 | message); 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /test/BlazorComponents/_Imports.razor: -------------------------------------------------------------------------------- 1 | @using Microsoft.AspNetCore.Components.Web -------------------------------------------------------------------------------- /test/BlazorComponents/wwwroot/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorComponents/wwwroot/background.png -------------------------------------------------------------------------------- /test/BlazorComponents/wwwroot/exampleJsInterop.js: -------------------------------------------------------------------------------- 1 | // This file is to show how a library package may provide JavaScript interop features 2 | // wrapped in a .NET API 3 | 4 | window.exampleJsFunctions = { 5 | showPrompt: function (message) { 6 | return prompt(message, 'Type anything here'); 7 | } 8 | }; 9 | -------------------------------------------------------------------------------- /test/BlazorComponents/wwwroot/styles.css: -------------------------------------------------------------------------------- 1 | /* 2 | This file is to show how CSS and other static resources (such as images) can be 3 | used from a library project/package. 4 | */ 5 | 6 | .my-component { 7 | border: 2px dashed red; 8 | padding: 1em; 9 | margin: 1em 0; 10 | background-image: url('background.png'); 11 | } 12 | -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/App.razor: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 |

Sorry, there's nothing at this address.

8 |
9 |
10 |
-------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/Pages/Counter.razor: -------------------------------------------------------------------------------- 1 | @page "/counter/{text}/{name}" 2 | @using System.Diagnostics 3 | 4 |

Counter

5 | 6 | @Text 7 | @Name 8 | 9 |

Current count: @currentCount

10 | 11 | 12 | 13 | @code { 14 | 15 | [Parameter] 16 | public string Text { get; set; } 17 | [Parameter] 18 | public string Name { get; set; } 19 | 20 | 21 | public int B { get; set; } 22 | private int currentCount = 0; 23 | 24 | private void IncrementCount() 25 | { 26 | Debug.WriteLine("Ahoy"); 27 | currentCount += 3; 28 | } 29 | 30 | } -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/Pages/Index.razor: -------------------------------------------------------------------------------- 1 | @page "/" 2 | @inject NavigationManager Navigation 3 | 4 |

Hello, world!

5 | 6 | Welcome to your new app. 7 | 8 | 9 | 10 | 11 | @code { 12 | 13 | private void Navigate() 14 | { 15 | Navigation.NavigateTo("/counter/a/b"); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/Pages/Index.razor.css: -------------------------------------------------------------------------------- 1 | sadasd -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/Pages/Index.razor.scss: -------------------------------------------------------------------------------- 1 | sdfsdfdfgfdgdfdfdsddsfdsfdsfasdasdasddsfsdf -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/Pages/test.scss: -------------------------------------------------------------------------------- 1 | dsf -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/Shared/MainLayout.razor: -------------------------------------------------------------------------------- 1 | @inherits LayoutComponentBase 2 | 3 | 6 | 7 |
8 |
9 | About 10 |
11 | 12 |
13 | @Body 14 |
15 |
-------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/Shared/SurveyPrompt.razor: -------------------------------------------------------------------------------- 1 |  11 | 12 | @code { 13 | // Demonstrates how a parent component can supply parameters 14 | [Parameter] 15 | public string Title { get; set; } 16 | 17 | } -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/_Imports.razor: -------------------------------------------------------------------------------- 1 | @using System.Net.Http 2 | @using System.Net.Http.Json 3 | @using Microsoft.AspNetCore.Components.Forms 4 | @using Microsoft.AspNetCore.Components.Routing 5 | @using Microsoft.AspNetCore.Components.Web 6 | @using Microsoft.JSInterop 7 | @using BlazorWasmWorkbench 8 | @using BlazorWasmWorkbench.Shared -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/livesharphandler.scss.cmd: -------------------------------------------------------------------------------- 1 | start http://www.google.com -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorWasmWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.eot -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorWasmWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.otf -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorWasmWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorWasmWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.woff -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorWasmWorkbench/wwwroot/favicon.ico -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/wwwroot/sample-data/weather.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "date": "2018-05-06", 4 | "temperatureC": 1, 5 | "summary": "Freezing" 6 | }, 7 | { 8 | "date": "2018-05-07", 9 | "temperatureC": 14, 10 | "summary": "Bracing" 11 | }, 12 | { 13 | "date": "2018-05-08", 14 | "temperatureC": -13, 15 | "summary": "Freezing" 16 | }, 17 | { 18 | "date": "2018-05-09", 19 | "temperatureC": -16, 20 | "summary": "Balmy" 21 | }, 22 | { 23 | "date": "2018-05-10", 24 | "temperatureC": -2, 25 | "summary": "Chilly" 26 | } 27 | ] 28 | -------------------------------------------------------------------------------- /test/BlazorWasmWorkbench/wwwroot/test.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorWasmWorkbench/wwwroot/test.scss -------------------------------------------------------------------------------- /test/BlazorWorkbench/.livesharpignore: -------------------------------------------------------------------------------- 1 | _Imports.razor -------------------------------------------------------------------------------- /test/BlazorWorkbench/App.razor: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 |

Sorry, there's nothing at this address.

8 |
9 |
10 |
11 | 12 | @code { 13 | private Router _router; 14 | } -------------------------------------------------------------------------------- /test/BlazorWorkbench/Data/GenericType.cs: -------------------------------------------------------------------------------- 1 | namespace BlazorWorkbench.Data 2 | { 3 | public class GenericType 4 | { 5 | public static string GenericMethod(T value) 6 | { 7 | return value?.ToString(); 8 | } 9 | } 10 | 11 | public class GenericType2 12 | { 13 | public static string GenericMethod(T val1, T2 val2) 14 | { 15 | return val1?.ToString() + " " + val2?.ToString(); 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /test/BlazorWorkbench/Data/WeatherForecast.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace BlazorWorkbench.Data 4 | { 5 | public class WeatherForecast 6 | { 7 | public DateTime Date { get; set; } 8 | 9 | public int TemperatureC { get; set; } 10 | 11 | public int TemperatureF => 320 + (int)(TemperatureC / 0.5556); 12 | 13 | public string Summary { get; set; } 14 | } 15 | } -------------------------------------------------------------------------------- /test/BlazorWorkbench/Pages/Company.cs: -------------------------------------------------------------------------------- 1 | namespace Models.Medew 2 | { 3 | public class Company 4 | { 5 | public int CompanyID { get; set; } 6 | public string Name { get; set; } 7 | 8 | } 9 | 10 | static class Extensions 11 | { 12 | public static string Modify(this string val) 13 | { 14 | return val; 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /test/BlazorWorkbench/Pages/TestPage.Stuff.cs: -------------------------------------------------------------------------------- 1 | namespace Models.Account 2 | { 3 | 4 | } -------------------------------------------------------------------------------- /test/BlazorWorkbench/Shared/MainLayout.razor: -------------------------------------------------------------------------------- 1 | @inherits LayoutComponentBase 2 | 3 | 6 | 7 |
8 |
9 | About 10 |
11 | 12 |
13 | @Body 14 |
15 |
-------------------------------------------------------------------------------- /test/BlazorWorkbench/Shared/SurveyPrompt.razor: -------------------------------------------------------------------------------- 1 |  11 | 12 | @code { 13 | // Demonstrates how a parent component can supply parameters 14 | [Parameter] 15 | public string Title { get; set; } 16 | 17 | } -------------------------------------------------------------------------------- /test/BlazorWorkbench/_Imports.razor: -------------------------------------------------------------------------------- 1 | @using System.Net.Http 2 | @using Microsoft.AspNetCore.Authorization 3 | @using Microsoft.AspNetCore.Components.Authorization 4 | @using Microsoft.AspNetCore.Components.Forms 5 | @using Microsoft.AspNetCore.Components.Routing 6 | @using Microsoft.AspNetCore.Components.Web 7 | @using Microsoft.JSInterop 8 | @using BlazorWorkbench 9 | @using BlazorWorkbench.Shared -------------------------------------------------------------------------------- /test/BlazorWorkbench/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "DetailedErrors": true, 3 | "Logging": { 4 | "LogLevel": { 5 | "Default": "Information", 6 | "Microsoft": "Warning", 7 | "Microsoft.Hosting.Lifetime": "Information" 8 | } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /test/BlazorWorkbench/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Information", 5 | "Microsoft": "Warning", 6 | "Microsoft.Hosting.Lifetime": "Information" 7 | } 8 | }, 9 | "AllowedHosts": "*" 10 | } 11 | -------------------------------------------------------------------------------- /test/BlazorWorkbench/livesharphandler.json.cmd: -------------------------------------------------------------------------------- 1 | start chrome https://www.google.com/ -------------------------------------------------------------------------------- /test/BlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.eot -------------------------------------------------------------------------------- /test/BlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.otf -------------------------------------------------------------------------------- /test/BlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf -------------------------------------------------------------------------------- /test/BlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.woff -------------------------------------------------------------------------------- /test/BlazorWorkbench/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/BlazorWorkbench/wwwroot/favicon.ico -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/App.razor: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 |

Sorry, there's nothing at this address.

8 |
9 |
10 |
-------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/Data/WeatherForecast.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveBlazorWorkbench.Data 4 | { 5 | public class WeatherForecast 6 | { 7 | public DateTime Date { get; set; } 8 | 9 | public int TemperatureC { get; set; } 10 | 11 | public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); 12 | 13 | public string Summary { get; set; } 14 | } 15 | } -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/LiveBlazorWorkbench.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net5.0 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/Pages/Counter.razor: -------------------------------------------------------------------------------- 1 | @page "/counter" 2 | 3 |

Counter

4 | 5 |

Current count: @currentCount

6 | 7 | 8 | 9 | @code { 10 | private int currentCount = 0; 11 | 12 | private void IncrementCount() 13 | { 14 | currentCount++; 15 | } 16 | } -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/Pages/Index.razor: -------------------------------------------------------------------------------- 1 | @page "/" 2 | 3 |

Hello!

4 | 5 | Welcome to your new app.11 6 | 7 | -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/Shared/MainLayout.razor: -------------------------------------------------------------------------------- 1 | @inherits LayoutComponentBase 2 | 3 |
4 | 7 | 8 |
9 |
10 | About 11 |
12 | 13 |
14 | @Body 15 |
16 |
17 |
-------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/Shared/SurveyPrompt.razor: -------------------------------------------------------------------------------- 1 |  11 | 12 | @code { 13 | // Demonstrates how a parent component can supply parameters 14 | [Parameter] 15 | public string Title { 16 | get; 17 | set; 18 | } 19 | 20 | } -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/_Imports.razor: -------------------------------------------------------------------------------- 1 | @using System.Net.Http 2 | @using Microsoft.AspNetCore.Authorization 3 | @using Microsoft.AspNetCore.Components.Authorization 4 | @using Microsoft.AspNetCore.Components.Forms 5 | @using Microsoft.AspNetCore.Components.Routing 6 | @using Microsoft.AspNetCore.Components.Web 7 | @using Microsoft.AspNetCore.Components.Web.Virtualization 8 | @using Microsoft.JSInterop 9 | @using LiveBlazorWorkbench 10 | @using LiveBlazorWorkbench.Shared -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "DetailedErrors": true, 3 | "Logging": { 4 | "LogLevel": { 5 | "Default": "Information", 6 | "Microsoft": "Warning", 7 | "Microsoft.Hosting.Lifetime": "Information" 8 | } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Information", 5 | "Microsoft": "Warning", 6 | "Microsoft.Hosting.Lifetime": "Information" 7 | } 8 | }, 9 | "AllowedHosts": "*" 10 | } 11 | -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/LiveBlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.eot -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/LiveBlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.otf -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/LiveBlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/LiveBlazorWorkbench/wwwroot/css/open-iconic/font/fonts/open-iconic.woff -------------------------------------------------------------------------------- /test/LiveBlazorWorkbench/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/LiveBlazorWorkbench/wwwroot/favicon.ico -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/App.razor: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 |

Sorry, there's nothing at this address.

8 |
9 |
10 |
-------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/Data/WeatherForecast.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.BlazorTest.App.Data 4 | { 5 | public class WeatherForecast 6 | { 7 | public DateTime Date { get; set; } 8 | 9 | public int TemperatureC { get; set; } 10 | 11 | public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); 12 | 13 | public string Summary { get; set; } 14 | } 15 | } -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/Data/WeatherForecast.cs.original: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.BlazorTest.App.Data 4 | { 5 | public class WeatherForecast 6 | { 7 | public DateTime Date { get; set; } 8 | 9 | public int TemperatureC { get; set; } 10 | 11 | public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); 12 | 13 | public string Summary { get; set; } 14 | } 15 | } -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/Data/WeatherForecast.cs.update: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.BlazorTest.App.Data 4 | { 5 | public class WeatherForecast 6 | { 7 | public DateTime Date { get; set; } 8 | 9 | public int TemperatureC { get; set; } 10 | 11 | public int TemperatureF => 320 + (int)(TemperatureC / 0.5556); 12 | 13 | public string Summary { get; set; } 14 | } 15 | } -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/LiveSharp.BlazorTest.App.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net5.0 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/Pages/Counter.razor: -------------------------------------------------------------------------------- 1 | @page "/counter" 2 | 3 |

Counter

4 | 5 |

Current count: @currentCount

6 | 7 | 8 | 9 | @code { 10 | private int currentCount = 0; 11 | 12 | private void IncrementCount() 13 | { 14 | currentCount++; 15 | } 16 | 17 | } -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/Pages/Index.razor: -------------------------------------------------------------------------------- 1 | @page "/" 2 | 3 |

Hello, world!

-------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/Pages/Index.razor.original: -------------------------------------------------------------------------------- 1 | @page "/" 2 | 3 |

Hello, world!

-------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/Pages/Index.razor.update: -------------------------------------------------------------------------------- 1 | @page "/" 2 | 3 |

Hello, world from LiveSharp!

-------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/Shared/MainLayout.razor: -------------------------------------------------------------------------------- 1 | @inherits LayoutComponentBase 2 | 3 |
4 | 7 | 8 |
9 |
10 | About 11 |
12 | 13 |
14 | @Body 15 |
16 |
17 |
-------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/Shared/SurveyPrompt.razor: -------------------------------------------------------------------------------- 1 |  11 | 12 | @code { 13 | // Demonstrates how a parent component can supply parameters 14 | [Parameter] 15 | public string Title { get; set; } 16 | 17 | } -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/_Imports.razor: -------------------------------------------------------------------------------- 1 | @using System.Net.Http 2 | @using Microsoft.AspNetCore.Authorization 3 | @using Microsoft.AspNetCore.Components.Authorization 4 | @using Microsoft.AspNetCore.Components.Forms 5 | @using Microsoft.AspNetCore.Components.Routing 6 | @using Microsoft.AspNetCore.Components.Web 7 | @using Microsoft.AspNetCore.Components.Web.Virtualization 8 | @using Microsoft.JSInterop 9 | @using LiveSharp.BlazorTest.App 10 | @using LiveSharp.BlazorTest.App.Shared -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "DetailedErrors": true, 3 | "Logging": { 4 | "LogLevel": { 5 | "Default": "Information", 6 | "Microsoft": "Warning", 7 | "Microsoft.Hosting.Lifetime": "Information" 8 | } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Information", 5 | "Microsoft": "Warning", 6 | "Microsoft.Hosting.Lifetime": "Information" 7 | } 8 | }, 9 | "AllowedHosts": "*" 10 | } 11 | -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/wwwroot/css/open-iconic/font/fonts/open-iconic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/LiveSharp.BlazorTest.App/wwwroot/css/open-iconic/font/fonts/open-iconic.eot -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/wwwroot/css/open-iconic/font/fonts/open-iconic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/LiveSharp.BlazorTest.App/wwwroot/css/open-iconic/font/fonts/open-iconic.otf -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/LiveSharp.BlazorTest.App/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/wwwroot/css/open-iconic/font/fonts/open-iconic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/LiveSharp.BlazorTest.App/wwwroot/css/open-iconic/font/fonts/open-iconic.woff -------------------------------------------------------------------------------- /test/LiveSharp.BlazorTest.App/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/LiveSharp.BlazorTest.App/wwwroot/favicon.ico -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Infrastructure/ReflectionExtensions.cs: -------------------------------------------------------------------------------- 1 | using System.Linq; 2 | using System.Reflection; 3 | 4 | namespace LiveSharp.RuntimeTests.Infrastructure 5 | { 6 | public static class ReflectionExtensions 7 | { 8 | public static string GetMethodIdentifier(this MethodInfo methodInfo) 9 | { 10 | var parameters = methodInfo.GetParameters(); 11 | var parameterString = string.Join(" ", parameters.Select(p => p.ParameterType.FullName)); 12 | return 13 | $"{methodInfo.DeclaringType.FullName} {methodInfo.Name} {parameterString}"; 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Log.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Diagnostics; 3 | 4 | namespace LiveSharp.RuntimeTests 5 | { 6 | public class Log 7 | { 8 | public static void WriteLine(string line) 9 | { 10 | Console.WriteLine(line); 11 | Debug.WriteLine(line); 12 | } 13 | public static void WriteLine(object line) 14 | { 15 | Console.WriteLine(line); 16 | Debug.WriteLine(line); 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/MyControlViewModel.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.RuntimeTests 2 | { 3 | internal class MyControlViewModel 4 | { 5 | public MyControlViewModel(int a, string b) 6 | { 7 | } 8 | 9 | public MyControlViewModel(int a) 10 | { 11 | } 12 | 13 | 14 | public object RegistrationPrompt { get; internal set; } 15 | public object RegistrationCodeValidationMessage { get; internal set; } 16 | public object RegistrationCode { get; internal set; } 17 | } 18 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Sequences/BubblesGame/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Xamarin.Forms; 7 | 8 | namespace XamarinWorkbench 9 | { 10 | public partial class MainPage : ContentPage 11 | { 12 | public MainPage() 13 | { 14 | Build(); 15 | } 16 | 17 | public void Build() 18 | { 19 | Content = new Label { 20 | Text = "Hello, World!" 21 | }; 22 | } 23 | 24 | } 25 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Sequences/ChangeReturnValue/ChangeReturnValue.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.RuntimeTests.Sequences.ChangeReturnValue 4 | { 5 | public class ChangeReturnValue : IRunnableSequence 6 | { 7 | public void Run() 8 | { 9 | Console.WriteLine(ReturnValue()); 10 | } 11 | private int ReturnValue() => 5; 12 | } 13 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Sequences/ChangeReturnValue/ChangeReturnValue.cs.1: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | namespace LiveSharp.RuntimeTests.Sequences.ChangeReturnValue 5 | { 6 | public class ChangeReturnValue : IRunnableSequence 7 | { 8 | public void Run() 9 | { 10 | Console.WriteLine(ReturnValue()); 11 | } 12 | private Dictionary ReturnValue() => new Dictionary(); 13 | } 14 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Sequences/DynamicIndex/DynamicIndex.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.RuntimeTests.Sequences.DynamicIndex 2 | { 3 | public class DynamicIndex : TestsBase, IRunnableSequence 4 | { 5 | public void Run() 6 | { 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Sequences/DynamicIndex/DynamicIndex.cs.1: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.RuntimeTests.Sequences.DynamicIndex 2 | { 3 | public class DynamicIndex : TestsBase, IRunnableSequence 4 | { 5 | public void Run() 6 | { 7 | var a = ThisBreaksLiveSharp(); 8 | 9 | AssertEqual(a, 1); 10 | } 11 | 12 | private static int ThisBreaksLiveSharp() { 13 | var a = new []{1, 2}; 14 | dynamic d = a; 15 | return d[0]; 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Sequences/IRunnableSequence.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.RuntimeTests.Sequences 2 | { 3 | public interface IRunnableSequence 4 | { 5 | void Run(); 6 | } 7 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/TestRunner.MockDeviceInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Xamarin.Forms; 3 | using Xamarin.Forms.Internals; 4 | 5 | namespace LiveSharp.RuntimeTests 6 | { 7 | public partial class TestRunner 8 | { 9 | internal class MockDeviceInfo : DeviceInfo 10 | { 11 | public override Size PixelScreenSize => throw new NotImplementedException(); 12 | 13 | public override Size ScaledScreenSize => throw new NotImplementedException(); 14 | 15 | public override double ScalingFactor => throw new NotImplementedException(); 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Tests/DelegateTests.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LiveSharp.RuntimeTests 4 | { 5 | public class DelegateTests : TestsBase 6 | { 7 | delegate double FuncDouble (); 8 | 9 | public void Test0() 10 | { 11 | var func = new Func(() => 1.0); 12 | } 13 | 14 | public void Test1() 15 | { 16 | var func = new FuncDouble(() => 1.0); 17 | } 18 | 19 | public void Test2() 20 | { 21 | var func = new EventHandler((sender, args) => { }); 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Tests/DynamicTests.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.RuntimeTests.Tests 2 | { 3 | public class DynamicTests : TestsBase 4 | { 5 | public void Test0() 6 | { 7 | var a = new []{1, 2}; 8 | dynamic d = a; 9 | int b = d[0]; 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Tests/InheritanceTests.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.RuntimeTests.Tests 2 | { 3 | public class InheritanceTests : TestsBase 4 | { 5 | public override bool TestOverride() 6 | { 7 | Assert(base.TestOverride()); 8 | return true; 9 | } 10 | } 11 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Tests/LockTests.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.RuntimeTests 2 | { 3 | public class LockTests : TestsBase 4 | { 5 | public void Test0() 6 | { 7 | var b = false; 8 | 9 | lock (_lockObject) 10 | b = true; 11 | 12 | AssertEqual(b, true); 13 | } 14 | 15 | #region Helpers 16 | 17 | readonly object _lockObject = new object(); 18 | 19 | #endregion 20 | } 21 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Tests/PropertyTests.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | 5 | namespace LiveSharp.RuntimeTests.Tests 6 | { 7 | class PropertyTests : TestsBase 8 | { 9 | public List List => new List(); 10 | public List List2 { get { return new List(); } } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Tests/ReturnTests.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 LiveSharp.RuntimeTests 8 | { 9 | public class ReturnTests : TestsBase 10 | { 11 | public void Test0() 12 | { 13 | Assert(true); 14 | 15 | if (true) 16 | return; 17 | 18 | Assert(false); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Tests/StringTests.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using LiveSharp.Ide.Infrastructure; 3 | 4 | namespace LiveSharp.RuntimeTests.Tests 5 | { 6 | public class StringTests : TestsBase 7 | { 8 | public void Test10 () 9 | { 10 | var s = $"abc{1}"; 11 | AssertEqual(s, "abc1"); 12 | } 13 | 14 | public void Test20 () 15 | { 16 | var s = $@"abc{1}"; 17 | AssertEqual(s, "abc1"); 18 | } 19 | 20 | public void Test30 () 21 | { 22 | var s = new string(" "); 23 | AssertEqual(s.Length, 1); 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /test/LiveSharp.RuntimeTests/Tests/StructTests.cs: -------------------------------------------------------------------------------- 1 | namespace LiveSharp.RuntimeTests.Tests 2 | { 3 | public class StructTests : TestsBase 4 | { 5 | public void Test0() 6 | { 7 | var arrayTest = new[] {new MyTest()}; 8 | arrayTest[0].a = 3; 9 | 10 | AssertEqual(arrayTest[0].a, 3); 11 | } 12 | 13 | struct MyTest { 14 | public int a; 15 | }; 16 | } 17 | } -------------------------------------------------------------------------------- /test/LiveSharp.SequenceRecorder/LiveSharp.SequenceRecorder.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /test/LiveSharp.ServerTest/LiveSharp.ServerTest.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net5.0 5 | Exe 6 | 7 | false 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /test/LiveSharp.UnitTests/LiveSharp.UnitTests.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net5.0 5 | 6 | false 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /test/LiveSharp.WorkspaceTester/LiveSharp.WorkspaceTester.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Exe 5 | netcoreapp2.2 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Properties/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/drawable/xamarin_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/XamarinFormsTest/XamarinFormsTest.Android/Resources/drawable/xamarin_logo.png -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/layout/Tabbar.axml: -------------------------------------------------------------------------------- 1 | 2 | 12 | -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/layout/Toolbar.axml: -------------------------------------------------------------------------------- 1 | 9 | 10 | -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-anydpi-v26/icon.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-anydpi-v26/icon_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-hdpi/icon.png -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-hdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-hdpi/launcher_foreground.png -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-mdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-mdpi/icon.png -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-mdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-mdpi/launcher_foreground.png -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xhdpi/icon.png -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xxhdpi/icon.png -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xxhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xxhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xxxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xxxhdpi/icon.png -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xxxhdpi/launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ionoy/LiveSharp/754823359f8af8bbee98d5a349b7068e79c84102/test/XamarinFormsTest/XamarinFormsTest.Android/Resources/mipmap-xxxhdpi/launcher_foreground.png -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest.Android/Resources/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFFFFF 4 | #3F51B5 5 | #303F9F 6 | #FF4081 7 | 8 | -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using Xamarin.Forms.Xaml; 2 | 3 | [assembly: XamlCompilation(XamlCompilationOptions.Compile)] -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest/FodyWeavers.xml: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest/Models/HomeMenuItem.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | 5 | namespace XamarinFormsTest.Models 6 | { 7 | public enum MenuItemType 8 | { 9 | Browse, 10 | About 11 | } 12 | public class HomeMenuItem 13 | { 14 | public MenuItemType Id { get; set; } 15 | 16 | public string Title { get; set; } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest/Models/Item.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace XamarinFormsTest.Models 4 | { 5 | public class Item 6 | { 7 | public string Id { get; set; } 8 | public string Text { get; set; } 9 | public string Description { get; set; } 10 | 11 | public override string ToString() 12 | { 13 | return Text + "\n" + Description; 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /test/XamarinFormsTest/XamarinFormsTest/Services/IDataStore.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Threading.Tasks; 4 | 5 | namespace XamarinFormsTest.Services 6 | { 7 | public interface IDataStore 8 | { 9 | Task AddItemAsync(T item); 10 | Task UpdateItemAsync(T item); 11 | Task DeleteItemAsync(string id); 12 | Task GetItemAsync(string id); 13 | Task> GetItemsAsync(bool forceRefresh = false); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /test/XamarinWorkbench/XamarinWorkbench.Android/Properties/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /test/XamarinWorkbench/XamarinWorkbench.Android/Resources/layout/Tabbar.axml: -------------------------------------------------------------------------------- 1 | 2 | 12 | -------------------------------------------------------------------------------- /test/XamarinWorkbench/XamarinWorkbench.Android/Resources/layout/Toolbar.axml: -------------------------------------------------------------------------------- 1 | 9 | 10 | -------------------------------------------------------------------------------- /test/XamarinWorkbench/XamarinWorkbench.Android/Resources/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFFFFF 4 | #3F51B5 5 | #303F9F 6 | #FF4081 7 | 8 | -------------------------------------------------------------------------------- /test/XamarinWorkbench/XamarinWorkbench/App.xaml: -------------------------------------------------------------------------------- 1 |  2 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /test/XamarinWorkbench/XamarinWorkbench/FodyWeavers.xml: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /test/XamarinWorkbench/XamarinWorkbench/MainPage.xaml: -------------------------------------------------------------------------------- 1 |  2 | 6 | 7 | 8 | 9 | 13 | 14 | -------------------------------------------------------------------------------- /test/XamarinWorkbench/XamarinWorkbench/Model.cs: -------------------------------------------------------------------------------- 1 | namespace XamarinWorkbench 2 | { 3 | public class Model 4 | { 5 | private readonly string _name; 6 | public string Name => ", " + _name; 7 | 8 | public Model(string name) 9 | { 10 | _name = name; 11 | } 12 | } 13 | } --------------------------------------------------------------------------------