Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 0 additions & 16 deletions directory.build.props

This file was deleted.

42 changes: 27 additions & 15 deletions src/Directory.build.props
Original file line number Diff line number Diff line change
@@ -1,24 +1,38 @@
<Project>
<PropertyGroup>
<Owners>xanaisbettsx;ghuntley</Owners>
<PackageTags>mvvm;reactiveui;rx;reactive extensions;observable;LINQ;events;frp;xamarin;android;ios;mac;forms;monodroid;monotouch;xamarin.android;xamarin.ios;xamarin.forms;xamarin.mac;xamarin.tvos;wpf;net;netstandard;net461;uwp;tizen</PackageTags>
<PackageReleaseNotes>https://reactiveui.net/blog/</PackageReleaseNotes>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<NoWarn>$(NoWarn);1591;1701;1702;1705;VSX1000</NoWarn>
<Platform>AnyCPU</Platform>
<IsTestProject>$(MSBuildProjectName.Contains('Tests'))</IsTestProject>
<DebugType>embedded</DebugType>
<CodeAnalysisRuleSet>$(MSBuildThisFileDirectory)analyzers.ruleset</CodeAnalysisRuleSet>

<Authors>.NET Foundation and Contributors</Authors>
<Copyright>Copyright (c) .NET Foundation and Contributors</Copyright>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<PackageProjectUrl>https://reactiveui.net</PackageProjectUrl>
<PackageIconUrl>https://github.com/reactiveui/styleguide/blob/master/logo/main.png?raw=true</PackageIconUrl>
<PackageDescription>A MVVM framework that integrates with the Reactive Extensions for .NET to create elegant, testable User Interfaces that run on any mobile or desktop platform. Supports Xamarin.iOS, Xamarin.Android, Xamarin.Mac, Xamarin Forms, Xamarin.TVOS, Tizen, WPF, Windows Forms, Windows Store and Universal Windows Platform (UWP).</PackageDescription>
<Owners>xanaisbettsx;ghuntley</Owners>
<PackageTags>mvvm;reactiveui;rx;reactive extensions;observable;LINQ;events;frp;xamarin;android;ios;mac;forms;monodroid;monotouch;xamarin.android;xamarin.ios;xamarin.forms;xamarin.mac;xamarin.tvos;wpf;net;netstandard;net461;uwp;tizen</PackageTags>
<PackageReleaseNotes>https://github.com/reactiveui/ReactiveUI/releases</PackageReleaseNotes>
<RepositoryUrl>https://github.com/reactiveui/reactiveui</RepositoryUrl>
<RepositoryType>git</RepositoryType>

<!-- disable sourcelink on mono, to workaround https://github.com/dotnet/sourcelink/issues/155 -->
<EnableSourceLink Condition=" '$(OS)' != 'Windows_NT' AND '$(MSBuildRuntimeType)' != 'Core' ">false</EnableSourceLink>
<EnableSourceControlManagerQueries>$(EnableSourceLink)</EnableSourceControlManagerQueries>
<!-- Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element) -->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- Include PDB in the built .nupkg -->
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
<CodeAnalysisRuleSet>$(MSBuildThisFileDirectory)analyzers.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>

<!-- disable sourcelink on mono, to workaround https://github.com/dotnet/sourcelink/issues/155 -->
<EnableSourceLink Condition=" '$(OS)' != 'Windows_NT' AND '$(MSBuildRuntimeType)' != 'Core' ">false</EnableSourceLink>
<EnableSourceControlManagerQueries>$(EnableSourceLink)</EnableSourceControlManagerQueries>
<!-- MonoAndroid doesn't seem to want to allow debugging for maintainers -->
<PropertyGroup Condition=" $(TargetFramework.StartsWith('MonoAndroid')) ">
<DebugType>Full</DebugType>
</PropertyGroup>

<PropertyGroup Condition="$(IsTestProject)">
Expand All @@ -27,22 +41,22 @@
</PropertyGroup>

<ItemGroup Condition="$(IsTestProject)">
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.1.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.1.1" />
<PackageReference Include="xunit" Version="2.4.1" />
<PackageReference Include="xunit.runner.console" Version="2.4.1" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.1" />
<PackageReference Include="Xunit.StaFact" Version="0.3.18" />
<PackageReference Include="Shouldly" Version="3.0.2" />
<PackageReference Include="Shouldly" Version="4.0.0-beta0002" />
<PackageReference Include="Microsoft.Reactive.Testing" Version="4.1.5" />
<PackageReference Include="PublicApiGenerator" Version="8.1.0" />
<PackageReference Include="PublicApiGenerator" Version="9.0.0" />
</ItemGroup>

<ItemGroup Condition="$(IsTestProject)">
<Compile Include="$(MSBuildThisFileDirectory)ApiGeneratorGlobalSuppressions.cs" />
</ItemGroup>

<ItemGroup Condition="'$(IsTestProject)' != 'true' and '$(SourceLinkEnabled)' != 'false'">
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0-beta2-18618-05" PrivateAssets="All" />
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0-beta2-19270-01" PrivateAssets="All" />
</ItemGroup>

<PropertyGroup>
Expand All @@ -54,18 +68,16 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="Nerdbank.GitVersioning" Version="2.3.38" PrivateAssets="all" />
<PackageReference Include="Nerdbank.GitVersioning" Version="2.3.183" PrivateAssets="all" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="stylecop.analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="2.6.3" PrivateAssets="all" />
<PackageReference Include="Roslynator.Analyzers" Version="2.1.0-rc" PrivateAssets="All" />
<PackageReference Condition="'$(OS)' == 'Windows_NT'" Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="2.9.2" PrivateAssets="all" />
<PackageReference Condition="'$(OS)' == 'Windows_NT'" Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="2.9.3" PrivateAssets="all" />
</ItemGroup>
<ItemGroup>
<AdditionalFiles Include="$(MSBuildThisFileDirectory)stylecop.json" Link="stylecop.json" />
</ItemGroup>

<Import Project="..\Directory.build.props" />
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -186,35 +186,19 @@ namespace ReactiveUI
void RegisterScheduler<T>(System.Reactive.Concurrency.IScheduler scheduler, string contract = null);
void SendMessage<T>(T message, string contract = null);
}
public interface INotifyCollectionChanging
{
public event System.Collections.Specialized.NotifyCollectionChangedEventHandler CollectionChanging;
}
public interface INotifyPropertyChanging
{
public event ReactiveUI.PropertyChangingEventHandler PropertyChanging;
}
public class INPCObservableForProperty : ReactiveUI.ICreatesObservableForProperty, Splat.IEnableLogger
{
public INPCObservableForProperty() { }
public int GetAffinityForObject(System.Type type, string propertyName, bool beforeChanged) { }
public System.IObservable<ReactiveUI.IObservedChange<object, object>> GetNotificationForProperty(object sender, System.Linq.Expressions.Expression expression, string propertyName, bool beforeChanged, bool suppressWarnings = False) { }
}
public class Interaction<TInput, TOutput>
public interface INotifyCollectionChanging
{
public Interaction(System.Reactive.Concurrency.IScheduler handlerScheduler = null) { }
protected System.Func<, >[] GetHandlers() { }
public virtual System.IObservable<TOutput> Handle(TInput input) { }
public System.IDisposable RegisterHandler(System.Action<ReactiveUI.InteractionContext<TInput, TOutput>> handler) { }
public System.IDisposable RegisterHandler(System.Func<ReactiveUI.InteractionContext<TInput, TOutput>, System.Threading.Tasks.Task> handler) { }
public System.IDisposable RegisterHandler<TDontCare>(System.Func<ReactiveUI.InteractionContext<TInput, TOutput>, System.IObservable<TDontCare>> handler) { }
public event System.Collections.Specialized.NotifyCollectionChangedEventHandler CollectionChanging;
}
public sealed class InteractionContext<TInput, TOutput>
public interface INotifyPropertyChanging
{
public TInput Input { get; }
public bool IsHandled { get; }
public TOutput GetOutput() { }
public void SetOutput(TOutput output) { }
public event ReactiveUI.PropertyChangingEventHandler PropertyChanging;
}
public interface IObservedChange<out TSender, out TValue>
{
Expand Down Expand Up @@ -248,6 +232,12 @@ namespace ReactiveUI
{
bool ExecuteHook(object source, object target, System.Func<ReactiveUI.IObservedChange<, >[]> getCurrentViewModelProperties, System.Func<ReactiveUI.IObservedChange<, >[]> getCurrentViewProperties, ReactiveUI.BindingDirection direction);
}
public class IROObservableForProperty : ReactiveUI.ICreatesObservableForProperty, Splat.IEnableLogger
{
public IROObservableForProperty() { }
public int GetAffinityForObject(System.Type type, string propertyName, bool beforeChanged = False) { }
public System.IObservable<ReactiveUI.IObservedChange<object, object>> GetNotificationForProperty(object sender, System.Linq.Expressions.Expression expression, string propertyName, bool beforeChanged = False, bool suppressWarnings = False) { }
}
public interface IReactiveBinding<out TView, out TViewModel, out TValue> : System.IDisposable
where out TView : ReactiveUI.IViewFor
where out TViewModel : class
Expand Down Expand Up @@ -289,12 +279,6 @@ namespace ReactiveUI
string PropertyName { get; }
TSender Sender { get; }
}
public class IROObservableForProperty : ReactiveUI.ICreatesObservableForProperty, Splat.IEnableLogger
{
public IROObservableForProperty() { }
public int GetAffinityForObject(System.Type type, string propertyName, bool beforeChanged = False) { }
public System.IObservable<ReactiveUI.IObservedChange<object, object>> GetNotificationForProperty(object sender, System.Linq.Expressions.Expression expression, string propertyName, bool beforeChanged = False, bool suppressWarnings = False) { }
}
public interface IRoutableViewModel : ReactiveUI.INotifyPropertyChanging, ReactiveUI.IReactiveObject, Splat.IEnableLogger, System.ComponentModel.INotifyPropertyChanged
{
ReactiveUI.IScreen HostScreen { get; }
Expand Down Expand Up @@ -343,6 +327,22 @@ namespace ReactiveUI
ReactiveUI.IViewFor ResolveView<T>(T viewModel, string contract = null)
where T : class;
}
public sealed class InteractionContext<TInput, TOutput>
{
public TInput Input { get; }
public bool IsHandled { get; }
public TOutput GetOutput() { }
public void SetOutput(TOutput output) { }
}
public class Interaction<TInput, TOutput>
{
public Interaction(System.Reactive.Concurrency.IScheduler handlerScheduler = null) { }
protected System.Func<, >[] GetHandlers() { }
public virtual System.IObservable<TOutput> Handle(TInput input) { }
public System.IDisposable RegisterHandler(System.Action<ReactiveUI.InteractionContext<TInput, TOutput>> handler) { }
public System.IDisposable RegisterHandler(System.Func<ReactiveUI.InteractionContext<TInput, TOutput>, System.Threading.Tasks.Task> handler) { }
public System.IDisposable RegisterHandler<TDontCare>(System.Func<ReactiveUI.InteractionContext<TInput, TOutput>, System.IObservable<TDontCare>> handler) { }
}
public class MessageBus : ReactiveUI.IMessageBus, Splat.IEnableLogger
{
public MessageBus() { }
Expand Down Expand Up @@ -410,17 +410,17 @@ namespace ReactiveUI
public static System.Collections.Generic.IComparer<T> OrderByDescending<TValue>(System.Func<T, TValue> selector) { }
public static System.Collections.Generic.IComparer<T> OrderByDescending<TValue>(System.Func<T, TValue> selector, System.Collections.Generic.IComparer<TValue> comparer) { }
}
public class PlatformRegistrations
{
public PlatformRegistrations() { }
public void Register(System.Action<System.Func<object>, System.Type> registerFunction) { }
}
public class POCOObservableForProperty : ReactiveUI.ICreatesObservableForProperty, Splat.IEnableLogger
{
public POCOObservableForProperty() { }
public int GetAffinityForObject(System.Type type, string propertyName, bool beforeChanged = False) { }
public System.IObservable<ReactiveUI.IObservedChange<object, object>> GetNotificationForProperty(object sender, System.Linq.Expressions.Expression expression, string propertyName, bool beforeChanged = False, bool suppressWarnings = False) { }
}
public class PlatformRegistrations
{
public PlatformRegistrations() { }
public void Register(System.Action<System.Func<object>, System.Type> registerFunction) { }
}
public class PropertyBinderImplementation : ReactiveUI.IPropertyBinderImplementation, Splat.IEnableLogger
{
public PropertyBinderImplementation() { }
Expand Down Expand Up @@ -486,16 +486,6 @@ namespace ReactiveUI
public static ReactiveUI.ReactiveCommand<TParam, System.Reactive.Unit> CreateFromTask<TParam>(System.Func<TParam, System.Threading.Tasks.Task> execute, System.IObservable<bool> canExecute = null, System.Reactive.Concurrency.IScheduler outputScheduler = null) { }
public static ReactiveUI.ReactiveCommand<TParam, System.Reactive.Unit> CreateFromTask<TParam>(System.Func<TParam, System.Threading.CancellationToken, System.Threading.Tasks.Task> execute, System.IObservable<bool> canExecute = null, System.Reactive.Concurrency.IScheduler outputScheduler = null) { }
}
public class ReactiveCommand<TParam, TResult> : ReactiveUI.ReactiveCommandBase<TParam, TResult>
{
protected internal ReactiveCommand(System.Func<TParam, System.IObservable<TResult>> execute, System.IObservable<bool> canExecute, System.Reactive.Concurrency.IScheduler outputScheduler) { }
public override System.IObservable<bool> CanExecute { get; }
public override System.IObservable<bool> IsExecuting { get; }
public override System.IObservable<System.Exception> ThrownExceptions { get; }
protected override void Dispose(bool disposing) { }
public override System.IObservable<TResult> Execute(TParam parameter = null) { }
public override System.IDisposable Subscribe(System.IObserver<TResult> observer) { }
}
public abstract class ReactiveCommandBase<TParam, TResult> : ReactiveUI.IHandleObservableErrors, ReactiveUI.IReactiveCommand, System.IDisposable, System.IObservable<TResult>, System.Windows.Input.ICommand
{
protected ReactiveCommandBase() { }
Expand All @@ -520,6 +510,16 @@ namespace ReactiveUI
public static System.IDisposable InvokeCommand<T, TResult, TTarget>(this System.IObservable<T> @this, TTarget target, System.Linq.Expressions.Expression<System.Func<TTarget, ReactiveUI.ReactiveCommandBase<T, TResult>>> commandProperty)
where TTarget : class { }
}
public class ReactiveCommand<TParam, TResult> : ReactiveUI.ReactiveCommandBase<TParam, TResult>
{
protected internal ReactiveCommand(System.Func<TParam, System.IObservable<TResult>> execute, System.IObservable<bool> canExecute, System.Reactive.Concurrency.IScheduler outputScheduler) { }
public override System.IObservable<bool> CanExecute { get; }
public override System.IObservable<bool> IsExecuting { get; }
public override System.IObservable<System.Exception> ThrownExceptions { get; }
protected override void Dispose(bool disposing) { }
public override System.IObservable<TResult> Execute(TParam parameter = null) { }
public override System.IDisposable Subscribe(System.IObserver<TResult> observer) { }
}
public class static ReactiveNotifyPropertyChangedMixin
{
public static System.IObservable<ReactiveUI.IObservedChange<TSender, TValue>> ObservableForProperty<TSender, TValue>(this TSender @this, System.Linq.Expressions.Expression<System.Func<TSender, TValue>> property, bool beforeChange = False, bool skipInitial = True) { }
Expand Down Expand Up @@ -908,8 +908,8 @@ namespace ReactiveUI.Legacy
public System.IObservable<T> BeforeItemsAdded { get; }
public System.IObservable<ReactiveUI.Legacy.IMoveInfo<T>> BeforeItemsMoved { get; }
public System.IObservable<T> BeforeItemsRemoved { get; }
public System.IObservable<System.Collections.Specialized.NotifyCollectionChangedEventArgs> Changed { get; }
public bool ChangeTrackingEnabled { get; set; }
public System.IObservable<System.Collections.Specialized.NotifyCollectionChangedEventArgs> Changed { get; }
public System.IObservable<System.Collections.Specialized.NotifyCollectionChangedEventArgs> Changing { get; }
public int Count { get; }
public System.IObservable<int> CountChanged { get; }
Expand Down
Loading