Compare commits

...

8 Commits

Author SHA1 Message Date
Matija Koželj
a63bd4e5ed Remove local repositories from nuget.config 2023-02-13 15:20:34 +01:00
151f64cef3 Merge pull request 'features/rewrite/cleanup' (#6) from features/rewrite/cleanup into features/rewrite/main
Reviewed-on: #6
2023-02-13 14:18:50 +00:00
Matija Koželj
96d65df75c Add project dependency from submodule
Clean extra components in runner project
2023-02-13 15:13:30 +01:00
Matija Koželj
d6f63ab76a Update Connected submodule 2023-02-13 15:10:14 +01:00
Matija Koželj
3804dfbc35 Add submodule reference to Connected 2023-02-13 15:08:39 +01:00
Matija Koželj
4f36e41d73 Remove botched SimpleSelect 2023-02-13 15:03:18 +01:00
ed15c8f24d Merge pull request 'Cleanup, progress' (#5) from features/rewrite/cleanup into features/rewrite/main
Reviewed-on: #5
2023-02-13 13:57:27 +00:00
stm
3540dc8b54 Cleanup, progress 2023-02-13 14:48:37 +01:00
16 changed files with 67 additions and 167 deletions

3
.gitmodules vendored Normal file
View File

@ -0,0 +1,3 @@
[submodule "dependencies/Connected"]
path = dependencies/Connected
url = https://git.tompit.com/Connected/Connected.git

View File

@ -9,6 +9,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Connected.Components.Showca
EndProject EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Connected.Components.Showcase.Runner", "src\Connected.Components.Showcase.Runner\Connected.Components.Showcase.Runner.csproj", "{347B526C-39A0-43CE-B0F9-79E61B4897C6}" Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Connected.Components.Showcase.Runner", "src\Connected.Components.Showcase.Runner\Connected.Components.Showcase.Runner.csproj", "{347B526C-39A0-43CE-B0F9-79E61B4897C6}"
EndProject EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dependencies", "Dependencies", "{BCBA8E3E-D4C0-45A5-8780-FDED0B4C7A47}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Connected.Client", "dependencies\Connected\src\Connected.Client\Connected.Client.csproj", "{2118ED53-21AC-4D53-8B02-52980E5C715F}"
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU Debug|Any CPU = Debug|Any CPU
@ -27,10 +31,17 @@ Global
{347B526C-39A0-43CE-B0F9-79E61B4897C6}.Debug|Any CPU.Build.0 = Debug|Any CPU {347B526C-39A0-43CE-B0F9-79E61B4897C6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{347B526C-39A0-43CE-B0F9-79E61B4897C6}.Release|Any CPU.ActiveCfg = Release|Any CPU {347B526C-39A0-43CE-B0F9-79E61B4897C6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{347B526C-39A0-43CE-B0F9-79E61B4897C6}.Release|Any CPU.Build.0 = Release|Any CPU {347B526C-39A0-43CE-B0F9-79E61B4897C6}.Release|Any CPU.Build.0 = Release|Any CPU
{2118ED53-21AC-4D53-8B02-52980E5C715F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2118ED53-21AC-4D53-8B02-52980E5C715F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2118ED53-21AC-4D53-8B02-52980E5C715F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2118ED53-21AC-4D53-8B02-52980E5C715F}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE
EndGlobalSection EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{2118ED53-21AC-4D53-8B02-52980E5C715F} = {BCBA8E3E-D4C0-45A5-8780-FDED0B4C7A47}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {CBDD97EC-4855-4005-97A7-29FE298FB057} SolutionGuid = {CBDD97EC-4855-4005-97A7-29FE298FB057}
EndGlobalSection EndGlobalSection

1
dependencies/Connected vendored Submodule

@ -0,0 +1 @@
Subproject commit cc259dfc18c4ad6989898fa813e281b9249c3bd3

View File

@ -10,8 +10,6 @@
</packageRestore> </packageRestore>
<packageSources> <packageSources>
<add key="NuGet official package source" value="https://api.nuget.org/v3/index.json" /> <add key="NuGet official package source" value="https://api.nuget.org/v3/index.json" />
<add key="LocalNugetServer" value="%LOCAL_NUGET_SERVER%" />
<add key="Local file repository" value="%LOCAL_NUGET%" />
</packageSources> </packageSources>
<disabledPackageSources /> <disabledPackageSources />
</configuration> </configuration>

View File

@ -8,56 +8,20 @@
<p>ValueText: @inputValueText</p> <p>ValueText: @inputValueText</p>
<p>SimpleSelectValue: @SelectedItemValue</p> <p>SimpleSelectValue: @SelectedItemValue</p>
<InputNumber <TextInput
Clearable="false"
DisableMouseWheel="false"
Disabled="false"
Readonly="false"
Placeholder="Double"
Label="Double"
Required="true"
Step="0.000516"
DecimalPlaces=5
Class="m-2"
@bind-Value="@inputValueDouble">
</InputNumber>
<InputNumber
Clearable="true"
DisableMouseWheel="false"
Disabled="false"
Readonly="false"
Placeholder="Double"
Label="Integer"
Required="true"
Step="0.001"
DecimalPlaces="2"
Class="m-4"
@bind-Value="@inputValueInt">
</InputNumber>
<InputText
Label="String" Label="String"
Required="true" Required="true"
ErrorText="@errorText" ErrorText="@errorText"
@bind-Value="@inputValueText"> @bind-Value="@inputValueText">
</InputText> </TextInput>
<InputText <TextInput
Label="Password" Label="Password"
IsPassword="true" IsPassword="true"
Required="true" Required="true"
ErrorText="@errorText" ErrorText="@errorText"
@bind-Value="@inputValueText"> @bind-Value="@inputValueText">
</InputText> </TextInput>
<SimpleSelect
Label="Simple Select"
ValueType="string"
@bind-Value="@SelectedItemValue"
Items="@SelectFieldItems">
</SimpleSelect>
@code { @code {

View File

@ -20,7 +20,6 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="7.0.*-*" /> <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="7.0.*-*" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="7.0.*-*" PrivateAssets="all" /> <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="7.0.*-*" PrivateAssets="all" />
<PackageReference Include="Connected.Client" Version="1.0.*-*" />
<PackageReference Include="Nerdbank.GitVersioning" Version="3.5.119" PrivateAssets="all" Condition="!Exists('packages.config')" /> <PackageReference Include="Nerdbank.GitVersioning" Version="3.5.119" PrivateAssets="all" Condition="!Exists('packages.config')" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
@ -39,16 +38,9 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\..\dependencies\Connected\src\Connected.Client\Connected.Client.csproj" />
<ProjectReference Include="..\connected.components\Connected.Components.csproj" /> <ProjectReference Include="..\connected.components\Connected.Components.csproj" />
</ItemGroup> </ItemGroup>
<Target Name="CopyPackages" AfterTargets="Pack">
<Copy SourceFiles="$(OutputPath)..\$(PackageId).$(PackageVersion).nupkg" DestinationFolder="$([System.Environment]::GetEnvironmentVariable('LOCAL_NUGET'))" />
<Copy SourceFiles="$(OutputPath)..\$(PackageId).$(PackageVersion).snupkg" DestinationFolder="$([System.Environment]::GetEnvironmentVariable('LOCAL_NUGET'))" />
</Target>
<Target Name="UploadLocalPackages" AfterTargets="CopyPackages">
<Exec Command="dotnet nuget push -s LocalNugetServer $(OutputPath)..\$(PackageId).$(PackageVersion).nupkg --api-key $([System.Environment]::GetEnvironmentVariable('LOCAL_NUGET_SERVER_TOKEN'))" IgnoreExitCode="true"></Exec>
<Exec Command="dotnet nuget push -s LocalNugetServer $(OutputPath)..\$(PackageId).$(PackageVersion).snupkg --api-key $([System.Environment]::GetEnvironmentVariable('LOCAL_NUGET_SERVER_TOKEN'))" IgnoreExitCode="true"></Exec>
</Target>
</Project> </Project>

View File

@ -96,6 +96,10 @@ public partial class Button
[Parameter] [Parameter]
public string Style { get; set; } = string.Empty; public string Style { get; set; } = string.Empty;
#endregion
#region Events
/// <summary> /// <summary>
/// Button click event. /// Button click event.
/// Options: any MouseEventCallback event /// Options: any MouseEventCallback event
@ -103,13 +107,9 @@ public partial class Button
[Parameter] [Parameter]
public EventCallback<MouseEventArgs> OnClick { get; set; } public EventCallback<MouseEventArgs> OnClick { get; set; }
#endregion
#region Events
protected async Task Click(MouseEventArgs e) protected async Task Click(MouseEventArgs e)
{ {
await OnClick.InvokeAsync(e); await OnClick.InvokeAsync(e);
} }
#endregion #endregion
@ -146,5 +146,4 @@ public partial class Button
#endregion #endregion
} }

View File

@ -1,4 +1,6 @@
<br/> 
<svg height="@Height" width="@Width" style="fill:@Color;" class="@GlyphClassList" @onclick="@OnClick"> <div style="width:@WidthString; height:@HeightString; overflow:hidden">
<svg viewBox="0 0 24 24" style="fill:@Color;" class="@GlyphClassList" @onclick="@OnClick">
@((MarkupString)SVG) @((MarkupString)SVG)
</svg> </svg>
</div>

View File

@ -13,9 +13,25 @@ namespace Connected.Components
public string Color { get; set; } = "#000000"; public string Color { get; set; } = "#000000";
[Parameter] [Parameter]
public int Width { get; set; } = 25; public int Width { get; set; } = 24;
[Parameter] [Parameter]
public int Height { get; set; } = 25; public int Height { get; set; } = 24;
private string WidthString
{
get
{
return Width.ToString() + "px";
}
}
private string HeightString
{
get
{
return Width.ToString() + "px";
}
}
[Parameter] [Parameter]
public string Class { get; set; } = string.Empty; public string Class { get; set; } = string.Empty;
@ -32,7 +48,7 @@ namespace Connected.Components
[Parameter] [Parameter]
/// <summary> /// <summary>
/// Button click event. /// Glyph click event.
/// </summary> /// </summary>
public EventCallback<MouseEventArgs> Click { get; set; } public EventCallback<MouseEventArgs> Click { get; set; }
protected async Task OnClick(MouseEventArgs e) protected async Task OnClick(MouseEventArgs e)

View File

@ -11,11 +11,13 @@
disabled="@Disabled" disabled="@Disabled"
readonly="@Readonly" readonly="@Readonly"
@onmousewheel="@OnMouseWheel" @onmousewheel="@OnMouseWheel"
@onwheel="@OnMouseWheel"
@oninput=@ChangeValueAsync @oninput=@ChangeValueAsync
@bind-value="@_value" @bind-value="@Value"
@attributes="@InputAttributes"> @attributes="@InputAttributes">
</input> </input>
<span class="highlight"></span> <span class="highlight"></span>
<span class="bar"></span> <span class="bar"></span>
@if (IsLabel) @if (IsLabel)

View File

@ -3,9 +3,10 @@ using Connected.Utilities;
using Microsoft.AspNetCore.Components; using Microsoft.AspNetCore.Components;
using Microsoft.AspNetCore.Components.Web; using Microsoft.AspNetCore.Components.Web;
using System.Numerics; using System.Numerics;
using static Connected.Colors;
namespace Connected.Components; namespace Connected.Components;
public partial class InputNumber<NumberType>:InputBase where NumberType : INumber<NumberType> public partial class NumberInput<NumberType>:InputBase where NumberType : INumber<NumberType>
{ {
private double _step =1; private double _step =1;
[Parameter] [Parameter]
@ -40,7 +41,7 @@ public partial class InputNumber<NumberType>:InputBase where NumberType : INumbe
} }
protected async Task OnMouseWheel(WheelEventArgs obj) protected async Task OnMouseWheel(WheelEventArgs obj)
{ {
if (!DisableMouseWheel) if (DisableMouseWheel==false)
{ {
if (!obj.ShiftKey || Disabled || Readonly) if (!obj.ShiftKey || Disabled || Readonly)
return; return;
@ -55,19 +56,12 @@ public partial class InputNumber<NumberType>:InputBase where NumberType : INumbe
} }
} }
private NumberType _value;
[Parameter] [Parameter]
public NumberType Value public NumberType Value
{ {
get get;
{ set;
return _value;
}
set
{
_value = AdjustDecimalPlaces(value);
}
} }
[Parameter] [Parameter]

View File

@ -1,18 +0,0 @@
@using Connected.Models;
@typeparam ValueType
@inherits InputBase;
<div class="@InputFieldClassList">
<select @bind="@Value" @oninput="@ChangeValueAsync">
@if (EnableSearch)
{
<InputText @bind-Value="@SearchText" ValueChanged=""></InputText>
}
@foreach(SelectItem<ValueType> item in Items)
{
<option value="@item.Value">@item.DisplayedText</option>
}
</select>
</div>

View File

@ -1,45 +0,0 @@
using Connected.Models;
using Microsoft.AspNetCore.Components;
using System;
namespace Connected.Components;
public partial class SimpleSelect<ValueType> : InputBase
{
[Parameter]
public ValueType Value { get; set; }
[Parameter]
public IEnumerable<SelectItem<ValueType>> Items { get; set; }
public IEnumerable<SelectItem<ValueType>> OriginalItems { get; set; }
[Parameter]
public bool EnableSearch { get; set; } = true;
public string SearchText { get; set; }
public void FilterItems()
{
Items= Items.Where(item => item.Value.ToString().ToLower().Contains(SearchText.ToLower()) || item.DisplayedText.ToString().ToLower().Contains(SearchText.ToLower()));
}
[Parameter]
public EventCallback<ValueType> ValueChanged { get; set; }
private async Task ChangeValueAsync(ChangeEventArgs args)
{
await ValueChanged.InvokeAsync((ValueType)Convert.ChangeType(args.Value, typeof(ValueType)));
}
protected override async Task OnParametersSetAsync()
{
if (base.InputAttributes is null) base.InputAttributes = new();
if (base.Required)
{
if (base.InputAttributes.ContainsKey("required")) base.InputAttributes.Add("required", true);
}
OriginalItems = Items;
await base.OnInitializedAsync();
}
}

View File

@ -41,7 +41,7 @@
} }
<span class="input-glyph-wraper"> <span class="input-glyph-wraper">
<span class="input-glyph"> <span class="input-glyph">
@if (Clearable && Value.ToString().Length>0) @if (Clearable && !string.IsNullOrEmpty(Value))
{ {
<span class="input-glyph button" @onclick="Clear"> <span class="input-glyph button" @onclick="Clear">
<Glyph SVG="@Icons.Material.Rounded.Dangerous" /> <Glyph SVG="@Icons.Material.Rounded.Dangerous" />

View File

@ -2,7 +2,7 @@
using Microsoft.AspNetCore.Components; using Microsoft.AspNetCore.Components;
namespace Connected.Components; namespace Connected.Components;
public partial class InputText: InputBase public partial class TextInput: InputBase
{ {
[Parameter] [Parameter]
@ -31,7 +31,7 @@ public partial class InputText: InputBase
[Parameter] [Parameter]
public string Value { get; set; } public string Value { get; set; } = string.Empty;
private string inputType private string inputType
{ {
@ -42,7 +42,6 @@ public partial class InputText: InputBase
} }
} }
[Parameter] [Parameter]
public EventCallback<string> ValueChanged { get; set; } public EventCallback<string> ValueChanged { get; set; }

View File

@ -20,13 +20,6 @@
<ItemGroup> <ItemGroup>
<None Include="compilerconfig.json" /> <None Include="compilerconfig.json" />
<None Include="ComponentsN\ToggleButton.razor" />
<None Include="ComponentsN\Button.razor" />
<None Include="ComponentsN\Glyph.razor" />
<None Include="ComponentsN\Link.razor" />
<None Include="ComponentsN\InputDate.razor" />
<None Include="ComponentsN\InputNumber.razor" />
<None Include="ComponentsN\InputText.razor" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
@ -39,9 +32,6 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Folder Include="Interfaces\" />
<Folder Include="Services\" />
<Folder Include="wwwroot\" />
<None Include="..\..\LICENSE"> <None Include="..\..\LICENSE">
<Pack>True</Pack> <Pack>True</Pack>
<PackagePath>\</PackagePath> <PackagePath>\</PackagePath>
@ -86,19 +76,11 @@
<Delete Files="./Styles/Connected.Components.min.css" /> <Delete Files="./Styles/Connected.Components.min.css" />
</Target> </Target>
<!--Dont Include in build output-->
<ItemGroup>
<Content Remove="compilerconfig.json" />
<Content Remove="excubowebcompiler.json" />
<Content Remove="wwwroot/DoNotRemove.txt" />
<!--macOS hidden file (causes problems with dotnet pack)-->
<Content Remove="**/*/.DS_Store" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Watch Include="**/*.scss" /> <Watch Include="**/*.scss" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Watch Remove="Styles\Connected.Components.scss" /> <Watch Remove="Styles\Connected.Components.scss" />
</ItemGroup> </ItemGroup>