You've already forked linux-packaging-mono
Imported Upstream version 6.6.0.89
Former-commit-id: b39a328747c2f3414dc52e009fb6f0aa80ca2492
This commit is contained in:
parent
cf815e07e0
commit
95fdb59ea6
74
external/illinker-test-assets/wasm/BlazingPizza.Client/Pages/Index.razor
vendored
Normal file
74
external/illinker-test-assets/wasm/BlazingPizza.Client/Pages/Index.razor
vendored
Normal file
@@ -0,0 +1,74 @@
|
||||
@page "/"
|
||||
@inject HttpClient HttpClient
|
||||
@inject OrderState OrderState
|
||||
@inject IUriHelper UriHelper
|
||||
@inject IJSRuntime JS
|
||||
|
||||
<div class="main">
|
||||
<ul class="pizza-cards">
|
||||
@if (specials != null)
|
||||
{
|
||||
@foreach (var special in specials)
|
||||
{
|
||||
<li @onclick="@(() => OrderState.ShowConfigurePizzaDialog(special))" style="background-image: url('@special.ImageUrl')">
|
||||
<div class="pizza-info">
|
||||
<span class="title">@special.Name</span>
|
||||
@special.Description
|
||||
<span class="price">@special.GetFormattedBasePrice()</span>
|
||||
</div>
|
||||
</li>
|
||||
}
|
||||
}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="sidebar">
|
||||
@if (Order.Pizzas.Any())
|
||||
{
|
||||
<div class="order-contents">
|
||||
<h2>Your order</h2>
|
||||
|
||||
@foreach (var configuredPizza in Order.Pizzas)
|
||||
{
|
||||
<ConfiguredPizzaItem Pizza="configuredPizza" OnRemoved="@(() => RemovePizza(configuredPizza))" />
|
||||
}
|
||||
</div>
|
||||
}
|
||||
else
|
||||
{
|
||||
<div class="empty-cart">Choose a pizza<br>to get started</div>
|
||||
}
|
||||
|
||||
<div class="order-total @(Order.Pizzas.Any() ? "" : "hidden")">
|
||||
Total:
|
||||
<span class="total-price">@Order.GetFormattedTotalPrice()</span>
|
||||
<a href="checkout" class="btn btn-warning" disabled="@(Order.Pizzas.Count == 0)">
|
||||
Order >
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<TemplatedDialog Show="OrderState.ShowingConfigureDialog">
|
||||
<ConfigurePizzaDialog
|
||||
Pizza="OrderState.ConfiguringPizza"
|
||||
OnCancel="OrderState.CancelConfigurePizzaDialog"
|
||||
OnConfirm="OrderState.ConfirmConfigurePizzaDialog" />
|
||||
</TemplatedDialog>
|
||||
|
||||
@functions {
|
||||
List<PizzaSpecial> specials;
|
||||
Order Order => OrderState.Order;
|
||||
|
||||
protected async override Task OnInitAsync()
|
||||
{
|
||||
specials = await HttpClient.GetJsonAsync<List<PizzaSpecial>>("specials");
|
||||
}
|
||||
|
||||
async Task RemovePizza(Pizza configuredPizza)
|
||||
{
|
||||
if (await JS.Confirm($"Remove {configuredPizza.Special.Name} pizza from the order?"))
|
||||
{
|
||||
OrderState.RemoveConfiguredPizza(configuredPizza);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user