diff --git a/Components/Layout/MainLayout.razor b/Components/Layout/MainLayout.razor deleted file mode 100644 index 5a24bb1..0000000 --- a/Components/Layout/MainLayout.razor +++ /dev/null @@ -1,23 +0,0 @@ -@inherits LayoutComponentBase - -
- - -
-
- About -
- -
- @Body -
-
-
- -
- An unhandled error has occurred. - Reload - 🗙 -
diff --git a/Components/Layout/MainLayout.razor.css b/Components/Layout/MainLayout.razor.css deleted file mode 100644 index 038baf1..0000000 --- a/Components/Layout/MainLayout.razor.css +++ /dev/null @@ -1,96 +0,0 @@ -.page { - position: relative; - display: flex; - flex-direction: column; -} - -main { - flex: 1; -} - -.sidebar { - background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%); -} - -.top-row { - background-color: #f7f7f7; - border-bottom: 1px solid #d6d5d5; - justify-content: flex-end; - height: 3.5rem; - display: flex; - align-items: center; -} - - .top-row ::deep a, .top-row ::deep .btn-link { - white-space: nowrap; - margin-left: 1.5rem; - text-decoration: none; - } - - .top-row ::deep a:hover, .top-row ::deep .btn-link:hover { - text-decoration: underline; - } - - .top-row ::deep a:first-child { - overflow: hidden; - text-overflow: ellipsis; - } - -@media (max-width: 640.98px) { - .top-row { - justify-content: space-between; - } - - .top-row ::deep a, .top-row ::deep .btn-link { - margin-left: 0; - } -} - -@media (min-width: 641px) { - .page { - flex-direction: row; - } - - .sidebar { - width: 250px; - height: 100vh; - position: sticky; - top: 0; - } - - .top-row { - position: sticky; - top: 0; - z-index: 1; - } - - .top-row.auth ::deep a:first-child { - flex: 1; - text-align: right; - width: 0; - } - - .top-row, article { - padding-left: 2rem !important; - padding-right: 1.5rem !important; - } -} - -#blazor-error-ui { - background: lightyellow; - bottom: 0; - box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2); - display: none; - left: 0; - padding: 0.6rem 1.25rem 0.7rem 1.25rem; - position: fixed; - width: 100%; - z-index: 1000; -} - - #blazor-error-ui .dismiss { - cursor: pointer; - position: absolute; - right: 0.75rem; - top: 0.5rem; - } diff --git a/Components/Layout/NavMenu.razor b/Components/Layout/NavMenu.razor deleted file mode 100644 index 9f2df8b..0000000 --- a/Components/Layout/NavMenu.razor +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - diff --git a/Components/Layout/NavMenu.razor.css b/Components/Layout/NavMenu.razor.css deleted file mode 100644 index 4e15395..0000000 --- a/Components/Layout/NavMenu.razor.css +++ /dev/null @@ -1,105 +0,0 @@ -.navbar-toggler { - appearance: none; - cursor: pointer; - width: 3.5rem; - height: 2.5rem; - color: white; - position: absolute; - top: 0.5rem; - right: 1rem; - border: 1px solid rgba(255, 255, 255, 0.1); - background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1); -} - -.navbar-toggler:checked { - background-color: rgba(255, 255, 255, 0.5); -} - -.top-row { - height: 3.5rem; - background-color: rgba(0,0,0,0.4); -} - -.navbar-brand { - font-size: 1.1rem; -} - -.bi { - display: inline-block; - position: relative; - width: 1.25rem; - height: 1.25rem; - margin-right: 0.75rem; - top: -1px; - background-size: cover; -} - -.bi-house-door-fill-nav-menu { - background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E"); -} - -.bi-plus-square-fill-nav-menu { - background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E"); -} - -.bi-list-nested-nav-menu { - background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E"); -} - -.nav-item { - font-size: 0.9rem; - padding-bottom: 0.5rem; -} - - .nav-item:first-of-type { - padding-top: 1rem; - } - - .nav-item:last-of-type { - padding-bottom: 1rem; - } - - .nav-item ::deep .nav-link { - color: #d7d7d7; - background: none; - border: none; - border-radius: 4px; - height: 3rem; - display: flex; - align-items: center; - line-height: 3rem; - width: 100%; - } - -.nav-item ::deep a.active { - background-color: rgba(255,255,255,0.37); - color: white; -} - -.nav-item ::deep .nav-link:hover { - background-color: rgba(255,255,255,0.1); - color: white; -} - -.nav-scrollable { - display: none; -} - -.navbar-toggler:checked ~ .nav-scrollable { - display: block; -} - -@media (min-width: 641px) { - .navbar-toggler { - display: none; - } - - .nav-scrollable { - /* Never collapse the sidebar for wide screens */ - display: block; - - /* Allow sidebar to scroll for tall menus */ - height: calc(100vh - 3.5rem); - overflow-y: auto; - } -} diff --git a/Components/Pages/About.razor b/Components/Pages/About.razor new file mode 100644 index 0000000..045134e --- /dev/null +++ b/Components/Pages/About.razor @@ -0,0 +1,506 @@ +@page "/about" +@layout KeymailSpecials2.Components.Layout.NoNav + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Company - Movers Demo | Canvas + + + + + + +
+ + + + +
+
+
+ +
+

Company

+ Get to know us +
+ + + +
+
+
+ +
+ +
+ +
+
+ +
+
+
+
Our Story
+

Make the right Move.
We Move your Life.

+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptate corporis, facilis assumenda optio consequuntur amet iure, quidem animi nam inventore!

+
+
+
+
+ +
+
+ Map Image +
+

More than 21 Countries included in Our Network. Some of Our Most Popular Countries

+ +
+
+ +
+
+
+
+
+
+
Moved Monthly
+
+ +
+
+
+
+
Years of Experience
+
+ +
+
+
+
+
Trained Manpower
+
+ +
+
+
+
+
Countries Worldwide
+
+
+ +
+
+ +
+ +
+
+
+
+

Moving you
Toward your
Future.

+ Image +
+
+

Compellingly target sticky infrastructures via superior catalysts for change. Completely productize efficient e-tailers rather than sticky applications. Credibly productize interdependent users through scalable collaboration and idea-sharing. Objectively foster cutting-edge intellectual capital via frictionless data. Objectively impact cutting-edge niche markets with cross functional services.

+

Synergistically architect enterprise-wide products whereas business content. Credibly facilitate top-line expertise with excellent platforms.

+

Compellingly target sticky infrastructures via superior catalysts for change. Completely productize efficient e-tailers rather than sticky applications. Credibly productize interdependent users through scalable collaboration and idea-sharing. Objectively foster cutting-edge intellectual capital via frictionless data. Objectively impact cutting-edge niche markets with cross functional services.

+

Synergistically architect enterprise-wide products whereas business content. Credibly facilitate top-line expertise with excellent platforms.

+
+
+
+
+ +
+
+
+
+
+
+ +
+
+

Office Moving.

+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Eligendi rem, facilis nobis voluptatum.

+
+
+
+
+
+
+ +
+
+

Home Moving.

+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Eligendi rem, facilis nobis voluptatum.

+
+
+
+
+
+
+ +
+
+

International Moving.

+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Eligendi rem, facilis nobis voluptatum.

+
+
+
+
+
+
+ +
+
+

Pet Shifting.

+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Eligendi rem, facilis nobis voluptatum.

+
+
+
+
+
+
+ +
+
+

Car Shifting.

+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Eligendi rem, facilis nobis voluptatum.

+
+
+
+
+
+
+ +
+
+

Hire Truck.

+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Eligendi rem, facilis nobis voluptatum.

+
+
+
+
+
+
+ +
+ +
+ + + + +
+
+ +
+
+

Contact Our Movers Specialist

+

Phosfluorescently develop customized relationships vis-a-vis B2C infomediaries.

+
+ Get In Touch +
+ +
+
+
+
+
+ + + +
+ +
+ + + + + + + + + \ No newline at end of file diff --git a/Components/Pages/Counter.razor b/Components/Pages/Counter.razor deleted file mode 100644 index b6dc2aa..0000000 --- a/Components/Pages/Counter.razor +++ /dev/null @@ -1,23 +0,0 @@ -@page "/counter" -@rendermode InteractiveServer - -Counter - -

Counter

- -

Current count: @currentCount

- - - -@code { - private int currentCount = 0; - - private void IncrementCount() - { - currentCount++; - } - private void DecrementCount() - { - currentCount--; - } -} diff --git a/Components/Pages/Error.razor b/Components/Pages/Error.razor deleted file mode 100644 index 576cc2d..0000000 --- a/Components/Pages/Error.razor +++ /dev/null @@ -1,36 +0,0 @@ -@page "/Error" -@using System.Diagnostics - -Error - -

Error.

-

An error occurred while processing your request.

- -@if (ShowRequestId) -{ -

- Request ID: @RequestId -

-} - -

Development Mode

-

- Swapping to Development environment will display more detailed information about the error that occurred. -

-

- The Development environment shouldn't be enabled for deployed applications. - It can result in displaying sensitive information from exceptions to end users. - For local debugging, enable the Development environment by setting the ASPNETCORE_ENVIRONMENT environment variable to Development - and restarting the app. -

- -@code{ - [CascadingParameter] - private HttpContext? HttpContext { get; set; } - - private string? RequestId { get; set; } - private bool ShowRequestId => !string.IsNullOrEmpty(RequestId); - - protected override void OnInitialized() => - RequestId = Activity.Current?.Id ?? HttpContext?.TraceIdentifier; -} diff --git a/Components/Pages/Home.razor b/Components/Pages/Home.razor deleted file mode 100644 index 06055cb..0000000 --- a/Components/Pages/Home.razor +++ /dev/null @@ -1,7 +0,0 @@ -@page "/Home" - -Home - -

Hello, world!

- -Welcome to your new app. diff --git a/Components/Pages/Movers.razor b/Components/Pages/Index.razor similarity index 58% rename from Components/Pages/Movers.razor rename to Components/Pages/Index.razor index 95e1a7f..165ee06 100644 --- a/Components/Pages/Movers.razor +++ b/Components/Pages/Index.razor @@ -1,6 +1,15 @@ @page "/" @layout KeymailSpecials2.Components.Layout.NoNav + + @@ -32,7 +41,7 @@ - Movers Demo | Canvas + KeyMail Specials @@ -51,7 +60,7 @@ + + +
@@ -128,12 +150,11 @@
-
- +
@@ -146,7 +167,7 @@
- +
@@ -156,7 +177,6 @@
-

Share your Office Shifting details by Filling out an Easy Form. Get Free Quotes from Verified Packers & Movers Instantly.

@@ -166,45 +186,31 @@
-
-
- - -
-
- -
-
- - -
-
-
- + +
+
+ +
+
+ +
- -
-
- -
-
- - +
- +
@@ -213,7 +219,7 @@
- +
@@ -225,7 +231,7 @@
- Image 1 + Image 1
@@ -256,40 +262,37 @@
-

How We Make your Shifting Easy

- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptate corporis, facilis assumenda optio consequuntur amet iure, quidem animi nam inventore! +

How We Elevate Your Business

+ KeyMotive offers a wide variety of marketing solutions to attract as many customers as possible.
- Image 1 + stats
-

After you Share your Shifting details, Our Team will contact you.

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nisi deserunt doloremque facilis rem, in recusandae, vel.

- illustration by Ouch.pics +

Direct mail marketing programs which increase customer retention as well as new customer acquisition.

+

Offering programs specifically targeted to increasing the number of customers who visit your business, we are your one-stop shop for all of your direct marketing needs.

-

Pack & Load your Stuffs.

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nisi deserunt doloremque facilis rem, in recusandae, vel.

- illustration by Ouch.pics +

Statistical predictive models using your customers' transaction history.

+

Our models know when one of your customers is in the market for one of your products or services.

- Image 1 + Image 1
- Image 1 + Image 1
-

Deliver whenever you are Ready.

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nisi deserunt doloremque facilis rem, in recusandae, vel.

- illustration by Ouch.pics +

Multi-channel marketing to reach the most scrutinous of today's customers.

+

We can send your marketing messages throguh postal mail, email or text messaging, and adhering toall regulations pertaining to opt-out and consumer privacy.

@@ -299,34 +302,33 @@
-
+
-
-
- -

Services we can help you with.

+
+
+

Why Trust Us?

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt distinctio dolor nemo quasi cum. A ipsam tempora voluptatem officiis! Accusantium!

-

Service We Provide:

+

TODO: FILL THIS OUT WITH A LIST OF THINGS WE DO

+

What We Provide:

    -
  • 100% Trustable
  • -
  • 100% Safe & Secure
  • -
  • On-Time Delivery
  • -
  • Verified Movers
  • -
  • Liecenced Company
  • -
  • No Hidden Charges
  • -
  • Live Chat
  • +
  • Data-Driven Approach
  • +
  • Ongoing Support
  • +
  • Proven Results
  • +
  • +
  • +
  • +
    -
  • 24x7 Support
  • -
  • No Extra Payments
  • -
  • Also Deliver on Sunday
  • -
  • Minimum 1 Mover Free
  • -
  • Track Items by App
  • -
  • International Delivery
  • -
  • Door to Door
  • +
  • 15 Years of Experience
  • +
  • Multi-Channel Marketing
  • +
  • +
  • +
  • +
  • +
@@ -334,7 +336,7 @@
- +
@@ -407,165 +409,10 @@
- +
-
-
- Map Image -
-

More than 21 Countries included in Our Network. Some of Our Most Popular Countries

- -
-
- -
-
- -
-
-
+
-
Moved Monthly
-
- -
-
-
+
-
Years of Experience
-
- -
-
-
+
-
Trained Manpower
-
- -
-
-
+
-
Countries Worldwide
-
- -
-
-
-
- -
-
-
- - - - - -
-
-
-
-
-

What Our Users Say:

- View More -
-
-
-
-
- Customer Testimonails -

John Doe

-
-
-

Assertively leverage existing integrated communities after turnkey quality vectors. Assertively coordinate sustainable quality vectors and pandemic markets. Assertively leverage existing integrated communities.

-
- Fig Nelson
-
-
-
-
-
-
-

Incidunt deleniti blanditiis quas aperiam recusandae consequatur ullam quibusdam cum libero illo rerum repellendus!

-
- Fig Nelson
-
-
-
-
-

Incidunt deleniti blanditiis quas aperiam recusandae consequatur ullam quibusdam cum libero illo rerum repellendus!

-
- Fig Nelson
-
-
-
-
-
- Dot Image -
-
-
-
- -
-
-
- We’ve valuable Organizations Since 2021 -
-
- -
-
-
- - -
-
- Why Canvas for Home Shifting? -
-
-
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda, dolorum, vero ipsum molestiae minima odio quo voluptate illum excepturi quam cum voluptates doloribus quae nisi tempore necessitatibus dolores ducimus enim libero eaque explicabo suscipit animi at quaerat aliquid ex expedita perspiciatis? Saepe, aperiam, nam unde quas beatae vero vitae nulla.
-
- -
-
-
- - -
-
- Advanced Moving Equipments -
-
-
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda, dolorum, vero ipsum molestiae minima odio quo voluptate illum excepturi quam cum voluptates doloribus quae nisi tempore necessitatibus dolores ducimus enim libero eaque explicabo suscipit animi at quaerat aliquid ex expedita perspiciatis? Saepe, aperiam, nam unde quas beatae vero vitae nulla.
-
- -
-
-
- - -
-
- Best Moving Equipments -
-
-
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda, dolorum, vero ipsum molestiae minima odio quo voluptate illum excepturi quam cum voluptates doloribus quae nisi tempore necessitatibus dolores ducimus enim libero eaque explicabo suscipit animi at quaerat aliquid ex expedita perspiciatis? Saepe, aperiam, nam unde quas beatae vero vitae nulla.
-
-
-
-
@@ -578,8 +425,8 @@
-

Contact Our Movers Specialist

-

Phosfluorescently develop customized relationships vis-a-vis B2C infomediaries.

+

Contact Our Marketing Professionals

+

Get In Touch
@@ -648,52 +495,17 @@
-
- -

Get to Know us

- - - -
+
-

Headquarters:

-
- 795 Folsom Ave, Suite 600
- San Francisco, CA 94107
+ 40503 Koppernick Rd
+ Canton, MI 48187
-

+111 22-33-44

- +

(734)-217-4940

@@ -713,7 +525,7 @@
- Copyrights © 2023 All Rights Reserved by Canvas Inc. + Copyrights © 2024 All Rights Reserved by KeyMotive LLC.
@@ -747,6 +559,12 @@ startDate: "today", }); --> - + @code { + protected override async void OnInitialized() + { + var error = "THIS IS IT: " + typeof(Program).Assembly.GetName().Name; + Console.WriteLine(error); + } +} \ No newline at end of file diff --git a/Components/Pages/Weather.razor b/Components/Pages/Weather.razor deleted file mode 100644 index 43a1ecb..0000000 --- a/Components/Pages/Weather.razor +++ /dev/null @@ -1,64 +0,0 @@ -@page "/weather" -@attribute [StreamRendering] - -Weather - -

Weather

- -

This component demonstrates showing data.

- -@if (forecasts == null) -{ -

Loading...

-} -else -{ - - - - - - - - - - - @foreach (var forecast in forecasts) - { - - - - - - - } - -
DateTemp. (C)Temp. (F)Summary
@forecast.Date.ToShortDateString()@forecast.TemperatureC@forecast.TemperatureF@forecast.Summary
-} - -@code { - private WeatherForecast[]? forecasts; - - protected override async Task OnInitializedAsync() - { - // Simulate asynchronous loading to demonstrate streaming rendering - await Task.Delay(500); - - var startDate = DateOnly.FromDateTime(DateTime.Now); - var summaries = new[] { "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching" }; - forecasts = Enumerable.Range(1, 5).Select(index => new WeatherForecast - { - Date = startDate.AddDays(index), - TemperatureC = Random.Shared.Next(-20, 55), - Summary = summaries[Random.Shared.Next(summaries.Length)] - }).ToArray(); - } - - private class WeatherForecast - { - public DateOnly Date { get; set; } - public int TemperatureC { get; set; } - public string? Summary { get; set; } - public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); - } -} diff --git a/Components/Routes.razor b/Components/Routes.razor index f756e19..b9dbc6b 100644 --- a/Components/Routes.razor +++ b/Components/Routes.razor @@ -1,6 +1,6 @@  - + diff --git a/wwwroot/demos/movers/images/2.svg b/wwwroot/demos/movers/images/12w3qdaad2.svg.bak similarity index 100% rename from wwwroot/demos/movers/images/2.svg rename to wwwroot/demos/movers/images/12w3qdaad2.svg.bak diff --git a/wwwroot/demos/movers/images/happy.svg b/wwwroot/demos/movers/images/happy.svg new file mode 100644 index 0000000..6239685 --- /dev/null +++ b/wwwroot/demos/movers/images/happy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/wwwroot/demos/movers/images/join.svg b/wwwroot/demos/movers/images/join.svg new file mode 100644 index 0000000..205ea75 --- /dev/null +++ b/wwwroot/demos/movers/images/join.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/wwwroot/demos/movers/images/privacy.svg b/wwwroot/demos/movers/images/privacy.svg new file mode 100644 index 0000000..64d24aa --- /dev/null +++ b/wwwroot/demos/movers/images/privacy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/wwwroot/demos/movers/images/section/1.jpg b/wwwroot/demos/movers/images/section/1.jpg deleted file mode 100644 index a1529c5..0000000 Binary files a/wwwroot/demos/movers/images/section/1.jpg and /dev/null differ diff --git a/wwwroot/demos/movers/images/section/bg.jpg b/wwwroot/demos/movers/images/section/bg.jpg new file mode 100644 index 0000000..45c4b30 Binary files /dev/null and b/wwwroot/demos/movers/images/section/bg.jpg differ diff --git a/wwwroot/demos/movers/images/startae-team-7tXA8xwe4W4-unsplash.jpg b/wwwroot/demos/movers/images/startae-team-7tXA8xwe4W4-unsplash.jpg new file mode 100644 index 0000000..45c4b30 Binary files /dev/null and b/wwwroot/demos/movers/images/startae-team-7tXA8xwe4W4-unsplash.jpg differ diff --git a/wwwroot/demos/movers/images/stats.svg b/wwwroot/demos/movers/images/stats.svg new file mode 100644 index 0000000..bcd10e7 --- /dev/null +++ b/wwwroot/demos/movers/images/stats.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/wwwroot/demos/movers/images/user_nums.svg b/wwwroot/demos/movers/images/user_nums.svg new file mode 100644 index 0000000..451f2fc --- /dev/null +++ b/wwwroot/demos/movers/images/user_nums.svg @@ -0,0 +1 @@ + \ No newline at end of file