yoco updated to use webhook

This commit is contained in:
twotalesanimation
2025-12-29 14:43:24 +02:00
parent 6de01c13c5
commit 00b8ff77b2
123 changed files with 6959 additions and 12669 deletions
-65
View File
@@ -1,65 +0,0 @@
APP_NAME=Laravel
APP_ENV=local
APP_KEY=
APP_DEBUG=true
APP_URL=http://localhost
APP_LOCALE=en
APP_FALLBACK_LOCALE=en
APP_FAKER_LOCALE=en_US
APP_MAINTENANCE_DRIVER=file
# APP_MAINTENANCE_STORE=database
# PHP_CLI_SERVER_WORKERS=4
BCRYPT_ROUNDS=12
LOG_CHANNEL=stack
LOG_STACK=single
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug
DB_CONNECTION=sqlite
# DB_HOST=127.0.0.1
# DB_PORT=3306
# DB_DATABASE=laravel
# DB_USERNAME=root
# DB_PASSWORD=
SESSION_DRIVER=database
SESSION_LIFETIME=120
SESSION_ENCRYPT=false
SESSION_PATH=/
SESSION_DOMAIN=null
BROADCAST_CONNECTION=log
FILESYSTEM_DISK=local
QUEUE_CONNECTION=database
CACHE_STORE=database
# CACHE_PREFIX=
MEMCACHED_HOST=127.0.0.1
REDIS_CLIENT=phpredis
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_MAILER=log
MAIL_SCHEME=null
MAIL_HOST=127.0.0.1
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false
VITE_APP_NAME="${APP_NAME}"
+50
View File
@@ -0,0 +1,50 @@
<?php
if (!function_exists('progress_log')) {
/**
* Write a progress log entry to a file in the project root
*
* @param string|array|object $message The message or data to log
* @param array|object|null $context Optional context data
* @return void
*/
function progress_log($message, $context = null): void {
try {
// Get the project root path
$rootPath = base_path();
$logsDir = $rootPath . DIRECTORY_SEPARATOR . 'logs';
// Create logs directory if it doesn't exist
if (!is_dir($logsDir)) {
@mkdir($logsDir, 0777, true);
}
$logFile = $logsDir . DIRECTORY_SEPARATOR . 'progress.log';
$timestamp = date('Y-m-d H:i:s');
// Normalize message
if (is_array($message) || is_object($message)) {
$message = json_encode($message, JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT);
}
// Normalize context (optional extra data)
if ($context !== null) {
if (is_array($context) || is_object($context)) {
$context = json_encode($context, JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT);
}
$message .= ' | CONTEXT: ' . $context;
}
$line = "[{$timestamp}] {$message}" . PHP_EOL;
// Append atomically
file_put_contents($logFile, $line, FILE_APPEND | LOCK_EX);
} catch (Throwable $e) {
// Never allow logging failures to break execution
// Silent by design
}
}
}
@@ -0,0 +1,73 @@
<?php
namespace App\Http\Controllers;
use App\Models\Order;
use App\Models\CustomOrder;
use Illuminate\Http\Request;
use Illuminate\View\View;
class AccountController extends Controller
{
/**
* Show user account page
*/
public function show(): View
{
return view('account.profile', [
'user' => auth()->user(),
]);
}
/**
* Update user account
*/
public function update(Request $request)
{
$validated = $request->validate([
'name' => 'required|string|max:255',
'email' => 'required|email|unique:users,email,' . auth()->id(),
]);
auth()->user()->update($validated);
return redirect()->route('my-account')->with('success', 'Profile updated successfully.');
}
/**
* Show user's orders (both standard and custom)
*/
public function orders(): View
{
$user = auth()->user();
$standardOrders = Order::where('user_id', $user->id)
->orderBy('created_at', 'desc')
->get();
$customOrders = CustomOrder::where('user_id', $user->id)
->orderBy('created_at', 'desc')
->get();
return view('account.orders', [
'standardOrders' => $standardOrders,
'customOrders' => $customOrders,
]);
}
/**
* Show order detail (both standard and custom)
*/
public function orderDetail(Order $order)
{
// Check authorization
if ($order->user_id !== auth()->id() && !auth()->user()->is_admin) {
abort(403);
}
return view('account.order-detail', [
'order' => $order,
]);
}
}
@@ -0,0 +1,74 @@
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Models\User;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Str;
use Laravel\Socialite\Facades\Socialite;
class GoogleAuthController extends Controller
{
/**
* Redirect to Google OAuth
*/
public function redirect()
{
return Socialite::driver('google')->redirect();
}
/**
* Handle Google OAuth callback
*/
public function callback()
{
try {
$googleUser = Socialite::driver('google')->user();
// Find or create user
$user = User::firstOrCreate(
['email' => $googleUser->getEmail()],
[
'name' => $googleUser->getName(),
'google_id' => $googleUser->getId(),
'email_verified_at' => now(),
// Set a random password so the row passes DB constraints; not used for login
'password' => Str::random(32),
]
);
// Update Google ID if not already set
if (!$user->google_id) {
$user->update(['google_id' => $googleUser->getId()]);
}
Auth::login($user, remember: true);
return redirect()->intended('/');
} catch (\Exception $e) {
Log::error('Google OAuth callback failed', [
'error' => $e->getMessage(),
'exception' => $e,
]);
return redirect('/login')->with('error', 'Failed to authenticate with Google. Please try again.');
}
}
/**
* Logout user
*/
public function logout()
{
Log::info('User logging out', [
'user_id' => optional(Auth::user())->id,
'email' => optional(Auth::user())->email,
]);
Auth::logout();
request()->session()->invalidate();
request()->session()->regenerateToken();
return redirect('/');
}
}
@@ -0,0 +1,316 @@
<?php
namespace App\Http\Controllers;
use App\Models\CustomOrder;
use App\Models\CustomOrderFile;
use App\Models\CustomOrderSpecification;
use App\Models\AppSetting;
use App\Models\PrintStock;
use Illuminate\Http\Request;
use Illuminate\View\View;
use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Http;
class CustomOrderController extends Controller
{
/**
* Show custom orders index/list
*/
public function index(): View
{
$customOrders = CustomOrder::where('user_id', auth()->id())
->orderBy('created_at', 'desc')
->get();
return view('custom-orders.index', [
'customOrders' => $customOrders,
]);
}
/**
* Show custom order creation form
*/
public function create(): View
{
$designFee = AppSetting::get('design_fee', 500);
return view('custom-orders.create', [
'printStocks' => PrintStock::all(),
'designFee' => $designFee,
]);
}
/**
* Store custom order and calculate quote
*/
public function store(Request $request)
{
error_log('=== CUSTOM ORDER STORE METHOD CALLED (error_log) ===');
error_log('Request method: ' . $request->method());
error_log('Request path: ' . $request->path());
error_log('Request all data: ' . json_encode($request->all()));
$userId = auth()->id();
error_log('User ID: ' . ($userId ?? 'NOT AUTHENTICATED'));
Log::warning('=== CUSTOM ORDER STORE METHOD CALLED ===');
Log::warning('Request all data', $request->all());
Log::warning('User ID', ['user_id' => auth()->id()]);
$validated = $request->validate([
'type' => 'required|in:wallpaper,mural,fabric',
'length' => 'nullable|numeric|min:0.1',
'width' => 'nullable|numeric|min:0.1',
'height' => 'nullable|numeric|min:0.1',
'print_stock_id' => 'required|exists:print_stocks,id',
'quantity' => 'required|integer|min:1',
'customer_brief' => 'required|string|min:50|max:5000',
'special_instructions' => 'nullable|string|max:1000',
'library_discount' => 'boolean',
'reference_images.*' => 'nullable|file|mimes:jpeg,png,jpg,gif,webp|max:5120',
]);
Log::warning('Validation passed', $validated);
// Get design fee from settings
$designFee = AppSetting::get('design_fee', 500);
$libraryDiscountApplied = $request->boolean('library_discount', false);
// Deduct library discount if selected
$finalDesignFee = $libraryDiscountApplied ? $designFee * 0.8 : $designFee;
// Get print stock for material cost calculation
$printStock = PrintStock::find($validated['print_stock_id']);
// Calculate material cost based on type and dimensions
$materialCost = $this->calculateMaterialCost(
$validated['type'],
$validated['length'] ?? 0,
$validated['width'] ?? 0,
$validated['height'] ?? 0,
$validated['quantity'],
$printStock
);
// Total cost = material cost + design fee
$totalCost = $materialCost + $finalDesignFee;
// Deposit is 20% of total, balance is 80%
$depositAmount = $totalCost * 0.2;
$balanceAmount = $totalCost * 0.8;
// Create custom order
$customOrder = CustomOrder::create([
'user_id' => auth()->id(),
'type' => $validated['type'],
'design_fee' => $designFee,
'library_discount_applied' => $libraryDiscountApplied,
'material_cost' => $materialCost,
'total_cost' => $totalCost,
'deposit_amount' => $depositAmount,
'balance_amount' => $balanceAmount,
'customer_brief' => $validated['customer_brief'],
]);
// Create specifications
CustomOrderSpecification::create([
'custom_order_id' => $customOrder->id,
'length' => $validated['length'] ?? null,
'width' => $validated['width'] ?? null,
'height' => $validated['height'] ?? null,
'print_stock_id' => $validated['print_stock_id'],
'quantity' => $validated['quantity'],
'special_instructions' => $validated['special_instructions'] ?? null,
]);
// Handle file uploads
if ($request->hasFile('reference_images')) {
foreach ($request->file('reference_images') as $file) {
$path = $file->store('custom-orders/references', 'local');
CustomOrderFile::create([
'custom_order_id' => $customOrder->id,
'file_type' => 'reference_image',
'file_path' => $path,
'original_filename' => $file->getClientOriginalName(),
'file_size' => $file->getSize(),
'mime_type' => $file->getMimeType(),
'uploaded_by' => auth()->id(),
]);
}
}
return redirect()->route('custom-orders.show', $customOrder)->with('success', 'Custom order created successfully. Please review the quote and proceed with deposit payment.');
}
/**
* Show custom order detail with quote
*/
public function show(CustomOrder $customOrder): View
{
// Check authorization
if ($customOrder->user_id !== auth()->id()) {
abort(403);
}
return view('custom-orders.show', [
'customOrder' => $customOrder,
]);
}
/**
* Process deposit payment
*/
public function depositPayment(Request $request)
{
$validated = $request->validate([
'custom_order_id' => 'required|exists:custom_orders,id',
]);
$customOrder = CustomOrder::findOrFail($validated['custom_order_id']);
// Check authorization
if ($customOrder->user_id !== auth()->id()) {
abort(403);
}
// Check if already paid
if ($customOrder->deposit_status === 'paid') {
return redirect()->route('custom-orders.show', $customOrder)
->with('info', 'Deposit already paid for this order.');
}
// Initiate Yoco payment for deposit
$yocoResponse = $this->initiateYocoPayment(
amount: (int)($customOrder->deposit_amount * 100), // Convert to cents
orderId: $customOrder->uuid,
orderType: 'custom_deposit',
description: "Deposit for Custom {$customOrder->type} Order #{$customOrder->order_number}"
);
if (!$yocoResponse) {
return redirect()->route('custom-orders.show', $customOrder)
->with('error', 'Failed to initiate payment. Please try again.');
}
return redirect($yocoResponse['checkout_url']);
}
/**
* Handle successful deposit payment
*/
public function depositSuccess(CustomOrder $customOrder)
{
// Check authorization
if ($customOrder->user_id !== auth()->id()) {
abort(403);
}
// Update order status
$customOrder->update([
'deposit_status' => 'paid',
'status' => 'submitted',
]);
return view('custom-orders.deposit-success', [
'customOrder' => $customOrder,
]);
}
/**
* Calculate material cost based on dimensions and print stock
*/
private function calculateMaterialCost($type, $length, $width, $height, $quantity, $printStock)
{
$costPerUnit = $printStock->cost_per_meter ?? $printStock->cost_per_m2 ?? 0;
if (!$costPerUnit) {
return 0;
}
$cost = 0;
if ($type === 'wallpaper' && $length > 0 && $width > 0) {
// Area-based: length x width in meters
$area = $length * $width;
$cost = $area * $costPerUnit * $quantity;
} elseif ($type === 'mural' && $width > 0 && $height > 0) {
// Area-based: width x height in meters
$area = $width * $height;
$cost = $area * $costPerUnit * $quantity;
} elseif ($type === 'fabric' && $length > 0) {
// Linear: length in meters
$cost = $length * $costPerUnit * $quantity;
}
return round($cost, 2);
}
/**
* Initiate Yoco payment
*/
private function initiateYocoPayment($amount, $orderId, $orderType, $description)
{
$yocoSecret = config('services.yoco.secret_key');
if (!$yocoSecret) {
Log::error('Yoco secret key not configured');
return null;
}
$payload = [
'amount' => $amount,
'currency' => 'ZAR',
'successUrl' => route('yoco-custom-deposit-success', ['customOrder' => $orderId]),
'failureUrl' => route('custom-orders.show', ['customOrder' => $orderId]),
'cancelUrl' => route('custom-orders.show', ['customOrder' => $orderId]),
'metadata' => [
'order_uuid' => $orderId,
'order_type' => $orderType,
],
'description' => $description,
];
try {
Log::info('Initiating Yoco payment', [
'amount' => $amount,
'orderId' => $orderId,
'description' => $description
]);
$response = Http::withHeaders([
'Authorization' => 'Bearer ' . $yocoSecret,
'Content-Type' => 'application/json',
])->post('https://payments.yoco.com/api/checkouts', $payload);
Log::info('Yoco API response', [
'status' => $response->status(),
'body' => $response->body()
]);
if ($response->successful()) {
$data = $response->json();
Log::info('Yoco payment success', [
'checkout_url' => $data['redirectUrl'] ?? 'N/A',
'checkout_id' => $data['id'] ?? 'N/A'
]);
return [
'checkout_url' => $data['redirectUrl'],
'checkout_id' => $data['id'],
];
} else {
Log::error('Yoco payment API error', [
'status' => $response->status(),
'body' => $response->body()
]);
}
} catch (\Exception $e) {
Log::error('Yoco payment exception: ' . $e->getMessage(), [
'trace' => $e->getTraceAsString()
]);
}
return null;
}
}
+224 -36
View File
@@ -267,6 +267,7 @@ class OrderController extends Controller
'metadata' => [
'order_uuid' => $order->uuid,
'order_number' => $order->order_number,
'site' => 'additional_design',
],
];
@@ -278,7 +279,55 @@ class OrderController extends Controller
if ($response->successful()) {
$checkout = $response->json();
return redirect($checkout['redirectUrl']);
$checkoutId = $checkout['id'] ?? null;
$redirectUrl = $checkout['redirectUrl'] ?? null;
\Log::info('Yoco checkout created', [
'order_uuid' => $order->uuid,
'checkout_id' => $checkoutId,
'redirect_url' => $redirectUrl,
]);
if (!$checkoutId || !$redirectUrl) {
throw new \Exception('Invalid Yoco checkout response: missing id or redirectUrl');
}
// Persist checkout info to database
try {
$order->update([
'yoco_checkout_id' => $checkoutId,
'yoco_redirect_url' => $redirectUrl,
'yoco_checkout_response' => json_encode($checkout),
]);
// Reload the model to verify update
$order->refresh();
if ($order->yoco_checkout_id) {
//clear cart
session()->forget('cart');
\Log::info('Yoco checkout info saved successfully', [
'order_uuid' => $order->uuid,
'yoco_checkout_id' => $order->yoco_checkout_id,
]);
} else {
\Log::warning('Yoco checkout ID not saved after update', [
'order_uuid' => $order->uuid,
'order_data' => $order->toArray(),
]);
}
} catch (\Exception $dbException) {
\Log::error('Database error while saving Yoco checkout info', [
'order_uuid' => $order->uuid,
'error_message' => $dbException->getMessage(),
'error_code' => $dbException->getCode(),
'checkout_id' => $checkoutId,
'redirect_url' => $redirectUrl,
]);
throw $dbException;
}
return redirect($redirectUrl);
} else {
\Log::error('Yoco API Error', [
'status' => $response->status(),
@@ -300,18 +349,18 @@ class OrderController extends Controller
->with('success', 'Payment was already processed for this order.');
}
// Update order status
$order->update([
'payment_status' => 'paid',
'status' => 'processing',
]);
// // Update order status
// $order->update([
// 'payment_status' => 'paid',
// 'status' => 'processing',
// ]);
// Reduce stock
foreach ($order->items as $item) {
$product = $item->product;
$product->stock -= $item->quantity;
$product->save();
}
// // Reduce stock
// foreach ($order->items as $item) {
// $product = $item->product;
// $product->stock -= $item->quantity;
// $product->save();
// }
// Clear pending order from session
session()->forget('pending_order_uuid');
@@ -339,35 +388,174 @@ class OrderController extends Controller
public function yocoWebhook(Request $request)
{
// Verify webhook signature
$payload = $request->getContent();
$signature = $request->header('X-Yoco-Signature');
// 1. Get Raw Body and Headers
\Log::info('Yoco Webhook: Received webhook');
// Process webhook event
$event = $request->all();
$rawBody = $request->getContent();
$trimmedBody = trim($rawBody);
if (isset($event['type']) && $event['type'] === 'checkout.succeeded') {
$metadata = $event['payload']['metadata'] ?? [];
$orderId = $metadata['order_id'] ?? null;
$webhookId = $_SERVER['HTTP_WEBHOOK_ID'] ?? null;
$webhookTimestamp = $_SERVER['HTTP_WEBHOOK_TIMESTAMP'] ?? null;
$webhookSignatureHeader = $_SERVER['HTTP_WEBHOOK_SIGNATURE'] ?? null;
if ($orderId) {
$order = Order::find($orderId);
if ($order && $order->payment_status !== 'paid') {
$order->update([
'payment_status' => 'paid',
'status' => 'processing',
]);
// Reduce stock
foreach ($order->items as $item) {
$product = $item->product;
$product->stock -= $item->quantity;
$product->save();
}
}
}
// Validate headers exist
if (!$webhookId || !$webhookTimestamp || !$webhookSignatureHeader) {
\Log::warning('Yoco Webhook: Missing headers', [
'has_id' => !empty($webhookId),
'has_timestamp' => !empty($webhookTimestamp),
'has_signature' => !empty($webhookSignatureHeader),
]);
return response()->json(['error' => 'Missing headers'], 400);
}
// 2. Parse the Secret Safely
$envSecret = trim(config('services.yoco.webhook_secret'));
if (empty($envSecret)) {
\Log::error('Yoco Webhook: Missing webhook secret configuration');
return response()->json(['error' => 'Webhook secret not configured'], 500);
}
$secretKeyString = strpos($envSecret, 'whsec_') === 0
? substr($envSecret, 6)
: $envSecret;
$secretBytes = base64_decode($secretKeyString);
// 3. Parse Incoming Signature (Standardize)
$incomingSignature = '';
if (preg_match('/(?:v1=|v1,)([^,\s]+)/', $webhookSignatureHeader, $matches)) {
$incomingSignature = $matches[1];
} else {
$incomingSignature = trim($webhookSignatureHeader);
}
// 4. Verification Function
$verifySignature = function($id, $timestamp, $body, $secretBytes, $expectedSig) {
$signedContent = $id . '.' . $timestamp . '.' . $body;
$calculatedHmac = hash_hmac('sha256', $signedContent, $secretBytes, true);
$calculatedSig = base64_encode($calculatedHmac);
return hash_equals($expectedSig, $calculatedSig);
};
// 5. Try Verification (Attempt both Trimmed and Raw)
$isValid = false;
$methodUsed = '';
// Attempt 1: Trimmed Body (Most likely correct for JSON)
if ($verifySignature($webhookId, $webhookTimestamp, trim($rawBody), $secretBytes, $incomingSignature)) {
$isValid = true;
$methodUsed = 'trimmed';
}
// Attempt 2: Raw Body (Fallback if Yoco signed the whitespace)
elseif ($verifySignature($webhookId, $webhookTimestamp, $rawBody, $secretBytes, $incomingSignature)) {
$isValid = true;
$methodUsed = 'raw';
}
if (!$isValid) {
\Log::warning('Yoco Webhook: Signature verification failed', [
'webhook_id' => $webhookId,
'timestamp' => $webhookTimestamp,
'received_signature' => $incomingSignature,
]);
return response()->json(['error' => 'Invalid signature'], 403);
}
\Log::info('Yoco Webhook: Signature verified successfully', ['method' => $methodUsed]);
// 6. Parse Event
$event = json_decode($rawBody, true);
if (!$event) {
\Log::warning('Yoco Webhook: Failed to parse JSON payload');
return response()->json(['error' => 'Invalid JSON'], 400);
}
$type = $event['type'] ?? null;
$payload = $event['payload'] ?? [];
$metadata = $payload['metadata'] ?? [];
$orderUuid = $metadata['order_uuid'] ?? null;
$site = $metadata['site'] ?? null;
$paymentId = $payload['id'] ?? null;
$status = $payload['status'] ?? null;
\Log::info('Yoco Webhook: Payload extracted', [
'type' => $type,
'site' => $site,
'order_uuid' => $orderUuid,
'payment_id' => $paymentId,
'status' => $status,
]);
if ($site !== 'additional_design') {
\Log::warning('Yoco Webhook: Ignored event for different site', [
'expected_site' => 'additional_design',
'received_site' => $site,
]);
return response()->json(['status' => 'ignored'], 200);
}
if (!$orderUuid || !$status) {
\Log::warning('Yoco Webhook: Validation failed', [
'order_uuid' => $orderUuid,
'status' => $status,
'type' => $type,
]);
return response()->json(['error' => 'Invalid payload'], 400);
}
// 7. Update Payment State
$order = Order::where('uuid', $orderUuid)->first();
if (!$order) {
\Log::warning('Yoco Webhook: Order not found', ['order_uuid' => $orderUuid]);
return response()->json(['error' => 'Order not found'], 404);
}
if ($status === 'succeeded') {
\Log::info('Yoco Webhook: Processing successful payment', [
'order_uuid' => $orderUuid,
'payment_id' => $paymentId,
]);
if ($order->payment_status !== 'paid') {
$order->update([
'payment_status' => 'paid',
'status' => 'processing',
'yoco_checkout_response' => json_encode($payload),
]);
// Reduce stock
foreach ($order->items as $item) {
$product = $item->product;
$product->stock -= $item->quantity;
$product->save();
}
\Log::info('Yoco Webhook: Order updated for successful payment', [
'order_uuid' => $orderUuid,
'order_id' => $order->id,
]);
}
} elseif ($status === 'failed' || $status === 'cancelled') {
\Log::info('Yoco Webhook: Processing failed/cancelled payment', [
'order_uuid' => $orderUuid,
'payment_id' => $paymentId,
'status' => $status,
]);
$order->update([
'payment_status' => 'failed',
]);
}
\Log::info('Yoco Webhook: Processed successfully', [
'order_uuid' => $orderUuid,
'status' => $status,
]);
return response()->json(['status' => 'success']);
}
}
+17
View File
@@ -0,0 +1,17 @@
<?php
namespace App\Http\Middleware;
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware;
class VerifyCsrfToken extends Middleware
{
/**
* The URIs that should be excluded from CSRF verification.
*
* @var array<int, string>
*/
protected $except = [
'api/webhook',
];
}
+40
View File
@@ -0,0 +1,40 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class AppSetting extends Model
{
protected $fillable = ['key', 'value', 'type', 'description'];
/**
* Get a setting by key
*/
public static function get(string $key, mixed $default = null): mixed
{
$setting = self::where('key', $key)->first();
if (!$setting) {
return $default;
}
return match ($setting->type) {
'integer' => (int) $setting->value,
'boolean' => (bool) $setting->value,
'json' => json_decode($setting->value, true),
default => $setting->value,
};
}
/**
* Set a setting
*/
public static function set(string $key, mixed $value, string $type = 'string'): void
{
self::updateOrCreate(
['key' => $key],
['value' => is_array($value) ? json_encode($value) : (string) $value, 'type' => $type]
);
}
}
+100
View File
@@ -0,0 +1,100 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasOne;
use Illuminate\Database\Eloquent\Relations\HasMany;
class CustomOrder extends Model
{
protected $fillable = [
'user_id',
'uuid',
'order_number',
'type',
'status',
'design_fee',
'library_discount_applied',
'material_cost',
'total_cost',
'deposit_amount',
'balance_amount',
'deposit_status',
'balance_status',
'customer_brief',
'admin_notes',
'submitted_at',
'approved_at',
'rejected_at',
'completed_at',
];
protected $casts = [
'library_discount_applied' => 'boolean',
'design_fee' => 'decimal:2',
'material_cost' => 'decimal:2',
'total_cost' => 'decimal:2',
'deposit_amount' => 'decimal:2',
'balance_amount' => 'decimal:2',
'submitted_at' => 'datetime',
'approved_at' => 'datetime',
'rejected_at' => 'datetime',
'completed_at' => 'datetime',
];
/**
* Boot method for model
*/
protected static function boot()
{
parent::boot();
static::creating(function ($model) {
$model->uuid = \Illuminate\Support\Str::uuid();
$model->order_number = 'CUSTOM-' . now()->format('Ymd') . '-' . strtoupper(uniqid());
$model->submitted_at = now();
});
}
/**
* Get the user that owns this custom order
*/
public function user(): BelongsTo
{
return $this->belongsTo(User::class);
}
/**
* Get the specifications for this custom order
*/
public function specifications(): HasOne
{
return $this->hasOne(CustomOrderSpecification::class);
}
/**
* Get the files uploaded for this custom order
*/
public function files(): HasMany
{
return $this->hasMany(CustomOrderFile::class);
}
/**
* Get the proofs uploaded for this custom order
*/
public function proofs(): HasMany
{
return $this->hasMany(CustomOrderProof::class);
}
/**
* Get route key name for implicit route binding
*/
public function getRouteKeyName()
{
return 'uuid';
}
}
+35
View File
@@ -0,0 +1,35 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class CustomOrderFile extends Model
{
protected $fillable = [
'custom_order_id',
'file_type',
'file_path',
'original_filename',
'file_size',
'mime_type',
'uploaded_by',
];
/**
* Get the custom order that owns this file
*/
public function customOrder(): BelongsTo
{
return $this->belongsTo(CustomOrder::class);
}
/**
* Get the user who uploaded this file
*/
public function uploadedByUser(): BelongsTo
{
return $this->belongsTo(User::class, 'uploaded_by');
}
}
+44
View File
@@ -0,0 +1,44 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class CustomOrderProof extends Model
{
protected $fillable = [
'custom_order_id',
'file_path',
'original_filename',
'file_size',
'mime_type',
'notes',
'uploaded_by',
'status',
'rejection_reason',
'approved_at',
'rejected_at',
];
protected $casts = [
'approved_at' => 'datetime',
'rejected_at' => 'datetime',
];
/**
* Get the custom order that owns this proof
*/
public function customOrder(): BelongsTo
{
return $this->belongsTo(CustomOrder::class);
}
/**
* Get the admin who uploaded this proof
*/
public function uploadedByUser(): BelongsTo
{
return $this->belongsTo(User::class, 'uploaded_by');
}
}
+42
View File
@@ -0,0 +1,42 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class CustomOrderSpecification extends Model
{
protected $fillable = [
'custom_order_id',
'length',
'width',
'height',
'print_stock_id',
'quantity',
'special_instructions',
];
protected $casts = [
'length' => 'decimal:2',
'width' => 'decimal:2',
'height' => 'decimal:2',
'quantity' => 'integer',
];
/**
* Get the custom order that owns this specification
*/
public function customOrder(): BelongsTo
{
return $this->belongsTo(CustomOrder::class);
}
/**
* Get the print stock
*/
public function printStock(): BelongsTo
{
return $this->belongsTo(PrintStock::class);
}
}
+5 -1
View File
@@ -24,7 +24,11 @@ class Order extends Model
'customer_email',
'customer_phone',
'shipping_address',
'notes'
'notes',
'yoco_checkout_id',
'yoco_redirect_url',
'yoco_checkout_response',
'yoco_payment_id',
];
public function user()
+2
View File
@@ -22,6 +22,8 @@ class User extends Authenticatable
'email',
'password',
'is_admin',
'google_id',
'email_verified_at',
];
/**
+1
View File
@@ -7,6 +7,7 @@ use Illuminate\Foundation\Configuration\Middleware;
return Application::configure(basePath: dirname(__DIR__))
->withRouting(
web: __DIR__.'/../routes/web.php',
api: __DIR__.'/../routes/api.php',
commands: __DIR__.'/../routes/console.php',
health: '/up',
)
+12
View File
@@ -0,0 +1,12 @@
<?php
require 'vendor/autoload.php';
$app = require_once 'bootstrap/app.php';
$app->make(\Illuminate\Contracts\Console\Kernel::class)->bootstrap();
$products = \App\Models\Product::with('printStocks')->limit(5)->get();
foreach ($products as $p) {
echo "\n{$p->name} ({$p->type}):\n";
foreach ($p->printStocks as $s) {
echo " - {$s->name}: width={$s->width}m, cost_per_meter={$s->cost_per_meter}, cost_per_m2={$s->cost_per_m2}\n";
}
}
+4 -1
View File
@@ -26,7 +26,10 @@
"App\\": "app/",
"Database\\Factories\\": "database/factories/",
"Database\\Seeders\\": "database/seeders/"
}
},
"files": [
"app/Helpers/Logger.php"
]
},
"autoload-dev": {
"psr-4": {
+20 -2
View File
@@ -1,5 +1,16 @@
<?php
if (!defined('YOCO_TESTING_MODE')) define('YOCO_TESTING_MODE', (bool)($_SERVER['YOCO_TESTING_MODE'] ?? $_ENV['YOCO_TESTING_MODE'] ?? true));
// Use test keys if in testing mode, otherwise use production keys from environment
$yoco_secret_key = YOCO_TESTING_MODE
? ($_SERVER['YOCO_TEST_SECRET_KEY'] ?? $_ENV['YOCO_TEST_SECRET_KEY'] ?? '')
: ($_SERVER['YOCO_SECRET_KEY'] ?? $_ENV['YOCO_SECRET_KEY'] ?? '');
$yoco_public_key = YOCO_TESTING_MODE
? ($_SERVER['YOCO_TEST_PUBLIC_KEY'] ?? $_ENV['YOCO_TEST_PUBLIC_KEY'] ?? '')
: ($_SERVER['YOCO_PUBLIC_KEY'] ?? $_ENV['YOCO_PUBLIC_KEY'] ?? '');
return [
/*
@@ -37,8 +48,15 @@ return [
'yoco' => [
'mode' => env('YOCO_MODE', 'test'),
'secret_key' => env('YOCO_SECRET_KEY'),
'public_key' => env('YOCO_PUBLIC_KEY'),
'secret_key' => $yoco_secret_key,
'public_key' => $yoco_public_key,
'webhook_secret' => env('YOCO_WEBHOOK_SECRET'),
],
'google' => [
'client_id' => env('GOOGLE_CLIENT_ID'),
'client_secret' => env('GOOGLE_CLIENT_SECRET'),
'redirect' => env('GOOGLE_REDIRECT_URI', '/auth/google/callback'),
],
];
@@ -0,0 +1,28 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::table('users', function (Blueprint $table) {
$table->string('google_id')->nullable()->unique()->after('id');
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('users', function (Blueprint $table) {
$table->dropColumn('google_id');
});
}
};
@@ -0,0 +1,31 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('app_settings', function (Blueprint $table) {
$table->id();
$table->string('key')->unique();
$table->text('value')->nullable();
$table->string('type')->default('string'); // string, integer, boolean, json
$table->text('description')->nullable();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('app_settings');
}
};
@@ -0,0 +1,93 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
// Custom Orders table
Schema::create('custom_orders', function (Blueprint $table) {
$table->id();
$table->uuid()->unique()->index();
$table->foreignId('user_id')->nullable()->constrained()->onDelete('set null');
$table->string('order_number')->unique();
$table->enum('type', ['wallpaper', 'mural', 'fabric']);
$table->enum('status', ['submitted', 'approved', 'rejected', 'in_production', 'proof_ready', 'completed'])->default('submitted');
$table->decimal('design_fee', 10, 2);
$table->boolean('library_discount_applied')->default(false);
$table->decimal('material_cost', 10, 2)->default(0);
$table->decimal('total_cost', 10, 2);
$table->decimal('deposit_amount', 10, 2);
$table->decimal('balance_amount', 10, 2);
$table->enum('deposit_status', ['pending', 'paid', 'failed'])->default('pending');
$table->enum('balance_status', ['pending', 'paid', 'failed'])->default('pending');
$table->text('customer_brief');
$table->text('admin_notes')->nullable();
$table->timestamp('submitted_at')->nullable();
$table->timestamp('approved_at')->nullable();
$table->timestamp('rejected_at')->nullable();
$table->timestamp('completed_at')->nullable();
$table->timestamps();
});
// Custom Order Specifications table
Schema::create('custom_order_specifications', function (Blueprint $table) {
$table->id();
$table->foreignId('custom_order_id')->constrained('custom_orders')->onDelete('cascade');
$table->decimal('length', 10, 2)->nullable(); // wallpaper length in meters
$table->decimal('width', 10, 2)->nullable(); // mural/wallpaper width in meters
$table->decimal('height', 10, 2)->nullable(); // mural height in meters
$table->foreignId('print_stock_id')->nullable()->constrained('print_stocks')->onDelete('set null');
$table->integer('quantity')->default(1);
$table->text('special_instructions')->nullable();
$table->timestamps();
});
// Custom Order Files table (reference images, design files)
Schema::create('custom_order_files', function (Blueprint $table) {
$table->id();
$table->foreignId('custom_order_id')->constrained('custom_orders')->onDelete('cascade');
$table->enum('file_type', ['reference_image', 'design_file', 'specification']);
$table->string('file_path');
$table->string('original_filename');
$table->integer('file_size');
$table->string('mime_type');
$table->foreignId('uploaded_by')->nullable()->constrained('users')->onDelete('set null');
$table->timestamps();
});
// Custom Order Proofs table (admin-uploaded proofs)
Schema::create('custom_order_proofs', function (Blueprint $table) {
$table->id();
$table->foreignId('custom_order_id')->constrained('custom_orders')->onDelete('cascade');
$table->string('file_path');
$table->string('original_filename');
$table->integer('file_size');
$table->string('mime_type');
$table->text('notes')->nullable();
$table->foreignId('uploaded_by')->constrained('users')->onDelete('restrict');
$table->enum('status', ['pending', 'approved', 'rejected'])->default('pending');
$table->text('rejection_reason')->nullable();
$table->timestamp('approved_at')->nullable();
$table->timestamp('rejected_at')->nullable();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('custom_order_proofs');
Schema::dropIfExists('custom_order_files');
Schema::dropIfExists('custom_order_specifications');
Schema::dropIfExists('custom_orders');
}
};
+178 -9
View File
@@ -86,7 +86,7 @@ a:hover {
/* ===== CONTAINER & LAYOUT ===== */
.container {
max-width: var(--max-width);
margin: 0 auto;
margin: 20px auto;
padding: 0 var(--spacing-md);
}
@@ -385,14 +385,14 @@ nav a:hover {
/* ===== BADGE / CERTIFICATION ===== */
.badge {
display: flex;
align-items: center;
gap: var(--spacing-md);
background-color: white;
padding: var(--spacing-lg);
border: 2px solid var(--accent-dark);
border-radius: 2px;
margin-bottom: var(--spacing-lg);
display: inline-block;
font-weight: 900;
background-color: var(--bg-secondary);
color: var(--text-secondary);
padding: 4px 8px;
font-size: 0.8rem;
margin-bottom: var(--spacing-sm);
border-radius: 20px;
}
.badge-icon {
@@ -674,3 +674,172 @@ footer {
padding: 6px 12px;
font-size: 0.85rem;
}
/* ===== STATUS BADGES ===== */
.status-badge {
display: inline-flex;
align-items: center;
justify-content: center;
font-weight: 900;
background-color: var(--bg-secondary);
color: var(--text-secondary);
padding: 4px 8px;
font-size: 0.8rem;
margin-bottom: var(--spacing-sm);
border-radius: 20px;
}
/* Status badge variants */
.status-badge.pending,
.status-badge.submitted {
background-color: var(--accent-light);
color: var(--text-primary);
}
.status-badge.approved,
.status-badge.completed,
.status-badge.paid {
background-color: var(--accent-pink);
color: white;
}
.status-badge.processing,
.status-badge.in_production,
.status-badge.proof_ready {
background-color: var(--bg-secondary);
color: var(--text-secondary);
}
.status-badge.rejected,
.status-badge.cancelled {
background-color: #f8d7da;
color: var(--text-primary);
}
.status-badge.unpaid {
background-color: var(--accent-light);
color: var(--text-primary);
}
/* ===== CUSTOM ORDER COMPONENTS ===== */
.alert {
padding: var(--spacing-md);
border-radius: 20px;
margin-bottom: var(--spacing-lg);
border: 1px solid;
}
.alert-success {
background-color: #e8f5e9;
border-color: #c8e6c9;
color: #2e7d32;
}
.alert-info {
background-color: var(--accent-light);
border-color: var(--border-color);
color: var(--text-primary);
}
.content-grid {
display: grid;
grid-template-columns: 2fr 1fr;
gap: var(--spacing-lg);
}
.card-section {
margin-bottom: var(--spacing-lg);
}
.card-section:last-child {
margin-bottom: 0;
}
.spec-group {
margin-bottom: var(--spacing-md);
}
.spec-group dt {
font-weight: 600;
color: var(--text-primary);
}
.spec-group dd {
margin: 0;
color: var(--text-secondary);
}
.image-gallery {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
gap: var(--spacing-md);
}
.image-gallery img {
width: 100%;
height: 150px;
object-fit: cover;
border-radius: 20px;
cursor: pointer;
transition: transform 0.2s;
}
.image-gallery img:hover {
transform: scale(1.05);
}
.proof-item {
padding: var(--spacing-md);
border: 1px solid var(--border-color);
border-radius: 20px;
margin-bottom: var(--spacing-md);
transition: var(--transition);
}
.proof-item:hover {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.proof-item.approved {
background-color: #f0f9ff;
border-color: #7dd3fc;
}
.payment-section {
background-color: var(--bg-secondary);
padding: var(--spacing-md);
border-radius: 20px;
margin-bottom: var(--spacing-md);
}
.payment-row {
display: flex;
justify-content: space-between;
padding: var(--spacing-sm) 0;
border-bottom: 1px solid var(--border-color);
}
.payment-row.total {
font-weight: 600;
font-size: 1.1rem;
border-bottom: none;
padding-top: var(--spacing-md);
}
.terms-box {
background-color: var(--accent-light);
padding: var(--spacing-md);
border-radius: 20px;
font-size: 0.9rem;
color: var(--text-secondary);
}
.terms-box ul {
margin: 0;
padding-left: 1.25rem;
}
.terms-box li {
margin-bottom: 0.5rem;
}
+7 -16
View File
@@ -190,8 +190,12 @@ document.head.appendChild(style);
// ===== FORM HANDLING =====
document.querySelectorAll('form').forEach(form => {
// Skip cart-related forms (add to cart, update quantity, remove, etc)
if (form.action.includes('/cart/') || form.action.includes('/orders/')) {
// Skip cart-related, order, custom order, payment, and logout forms (they handle submission themselves)
if (form.action.includes('/cart/') ||
form.action.includes('/orders/') ||
form.action.includes('/custom-orders') ||
form.action.includes('/payment/') ||
form.action.includes('/logout')) {
return;
}
@@ -204,20 +208,7 @@ document.querySelectorAll('form').forEach(form => {
// Here you would typically send to backend
console.log('Form submitted:', data);
// Show success message
const message = document.createElement('div');
message.textContent = 'Thank you! We\'ll be in touch soon.';
message.style.cssText = `
padding: 12px 20px;
background-color: #4caf50;
color: white;
border-radius: 4px;
margin-top: 10px;
`;
this.appendChild(message);
// Form submission handled - no popup message
this.reset();
setTimeout(() => message.remove(), 3000);
});
});
@@ -0,0 +1,420 @@
@extends('layouts.app')
@section('title', 'Order #' . $order->order_number . ' - Order Details')
@section('styles')
<style>
/* Page-specific typography overrides */
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.6rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
h3 {
font-family: var(--font-sans);
font-size: 1.1rem;
font-weight: 600;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.page-intro {
margin-bottom: var(--spacing-lg);
}
.page-intro p {
color: var(--text-secondary);
font-size: 1rem;
}
/* Card styles */
.card {
padding: var(--spacing-lg);
margin-bottom: var(--spacing-lg);
}
.card:hover {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.card-section {
margin-bottom: var(--spacing-lg);
padding-bottom: var(--spacing-lg);
border-bottom: 1px solid var(--border-color);
}
.card-section:last-child {
border-bottom: none;
margin-bottom: 0;
padding-bottom: 0;
}
.content-grid {
display: grid;
grid-template-columns: 2fr 1fr;
gap: var(--spacing-lg);
}
/* Order items styling */
.order-item {
padding: var(--spacing-md);
background-color: white;
border-radius: 20px;
margin-bottom: var(--spacing-md);
border: 1px solid var(--border-color);
transition: var(--transition);
}
.order-item:hover {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.item-header {
display: flex;
justify-content: space-between;
align-items: flex-start;
margin-bottom: var(--spacing-sm);
}
.item-name {
font-weight: 600;
color: var(--text-primary);
font-size: 1rem;
}
.item-price {
font-weight: 700;
color: var(--accent-dark);
font-size: 1.1rem;
}
.item-meta {
color: var(--text-secondary);
font-size: 0.9rem;
}
/* Payment action styling */
.payment-action-box {
padding: var(--spacing-lg);
border-radius: 20px;
margin-top: var(--spacing-lg);
display: flex;
justify-content: space-between;
align-items: center;
gap: var(--spacing-lg);
}
.payment-action-box.pending {
background-color: var(--accent-light);
border: 2px solid var(--accent-dark);
}
.payment-action-box.failed {
background-color: var(--accent-light);
border: 2px solid var(--accent-dark);
}
.payment-action-box.success {
background-color: var(--accent-light);
border: 2px solid var(--accent-dark);
}
.payment-amount {
text-align: right;
}
.payment-amount-label {
color: var(--text-secondary);
font-size: 0.9rem;
margin-bottom: 0.5rem;
}
.payment-amount-value {
font-size: 2rem;
font-weight: 700;
color: var(--accent-dark);
}
.pending .payment-amount-value {
color: var(--accent-dark);
}
.failed .payment-amount-value {
color: var(--accent-dark);
}
.success .payment-amount-value {
color: var(--accent-dark);
}
.btn {
display: inline-block;
padding: 1rem 2rem;
background-color: var(--accent-dark);
color: white;
text-decoration: none;
border-radius: 20px;
font-weight: 600;
transition: var(--transition);
border: none;
cursor: pointer;
font-size: 1rem;
}
.btn:hover {
background-color: var(--accent-pink);
transform: translateY(-2px);
}
.btn-pending {var(--accent-dark);
color: white;
}
.btn-failed {
background-color: var(--accent-dark)
background-color: #dc3545;
color: white;
}
.success-check {
font-sivar(--accent-dark)m;
color: #28a745;
}
.status-badge {
display: inline-block;
padding: 0.4rem 0.8rem;
border-radius: 20px;
font-size: 0.85rem;
font-weight: 600;
text-transform: capitalize;
}
.status-badge.paid {var(--accent-light);
color: var(--accent-dark);
}
.status-badge.pending {
background-color: var(--accent-light);
color: var(--accent-dark);
}
.status-badge.failed {
background-color: var(--accent-light);
color: var(--accent-dark);
}
.status-badge.processing {
background-color: var(--accent-light);
color: var(--accent-dark);
}
.status-badge.shipped {
background-color: var(--accent-light);
color: var(--accent-dark);
}
.status-badge.delivered {
background-color: var(--accent-light);
color: var(--accent-dark)or: #d4edda;
color: #155724;
}
@media (max-width: 768px) {
.content-grid {
grid-template-columns: 1fr;
}
h1 {
font-size: 1.8rem;
}
.payment-action-box {
flex-direction: column;
align-items: flex-start;
}
.payment-amount {
text-align: left;
}
}
</style>
@endsection
@section('content')
<div class="container">
<div class="page-intro">
<h1>Order Details</h1>
<p>Order #{{ $order->order_number }}</p>
</div>
<div class="content-grid">
<!-- Main Content -->
<div>
<!-- Order Status -->
<div class="card">
<h2>Order Status</h2>
<div class="card-section">
<span class="status-badge {{ $order->status }}">
{{ str_replace('_', ' ', ucfirst($order->status)) }}
</span>
<p style="margin-top: var(--spacing-sm); color: var(--text-secondary); font-size: 0.9rem;">
Ordered on {{ $order->created_at->format('d M Y \a\t H:i') }}
</p>
</div>
</div>
<!-- Order Items -->
<div class="card">
<h2>Order Items</h2>
@foreach($order->items as $item)
<div class="order-item">
<div class="item-header">
<div>
<div class="item-name">{{ $item->product->name }}</div>
<div class="item-meta">{{ $item->type }}</div>
@if($item->length)
<div class="item-meta">Length: {{ $item->length }}m</div>
@endif
@if($item->width && $item->height)
<div class="item-meta">Dimensions: {{ $item->width }}m × {{ $item->height }}m</div>
@endif
</div>
<div>
<div class="item-price">R {{ number_format($item->price, 2) }}</div>
<div class="item-meta" style="text-align: right;">Qty: {{ $item->quantity }}</div>
</div>
</div>
</div>
@endforeach
</div>
<!-- Shipping Details -->
<div class="card">
<h2>Delivery Details</h2>
<div class="card-section">
<h3>Customer Information</h3>
<dl style="color: var(--text-secondary);">
<div class="spec-group">
<dt>Name:</dt>
<dd>{{ $order->customer_name }}</dd>
</div>
<div class="spec-group">
<dt>Email:</dt>
<dd>{{ $order->customer_email }}</dd>
</div>
<div class="spec-group">
<dt>Phone:</dt>
<dd>{{ $order->customer_phone }}</dd>
</div>
</dl>
</div>
<div class="card-section">
<h3>Shipping Address</h3>
<p style="color: var(--text-secondary); line-height: 1.6;">{{ $order->shipping_address }}</p>
</div>
@if($order->notes)
<div class="card-section">
<h3>Order Notes</h3>
<p style="color: var(--text-secondary);">{{ $order->notes }}</p>
</div>
@endif
</div>
</div>
<!-- Sidebar -->
<div>
<!-- Order Summary & Payment -->
<div class="card">
<h2>Order Summary</h2>
<div class="card-section">
<div class="payment-row" style="display: flex; justify-content: space-between; margin-bottom: var(--spacing-sm); color: var(--text-secondary);">
<span>Subtotal:</span>
<span>R {{ number_format($order->total, 2) }}</span>
</div>
<div class="payment-row total" style="display: flex; justify-content: space-between; border-top: 2px solid var(--border-color); padding-top: var(--spacing-md); font-weight: 700; font-size: 1.2rem;">
<span>Total:</span>
<span>R {{ number_format($order->total, 2) }}</span>
</div>
</div>
<h3 style="margin-top: var(--spacing-lg); margin-bottom: var(--spacing-md);">Payment Status</h3>
<div style="padding: var(--spacing-sm); background-color: var(--accent-light); border-radius: 20px; margin-bottom: var(--spacing-lg);">
<div style="display: flex; justify-content: space-between; align-items: center;">
<strong>Payment</strong>
<span class="status-badge {{ $order->payment_status }}">{{ ucfirst($order->payment_status) }}</span>
</div>
</div>
<!-- Payment Actions -->
@if($order->payment_status === 'pending' && $order->yoco_redirect_url)
<div class="payment-action-box pending">
<div>
<h3 style="margin-top: 0; color: var(--accent-dark);">Payment Required</h3>
<p style="color: var(--accent-dark); margin: var(--spacing-sm) 0 0 0;">Click below to complete your payment.</p>
<a href="{{ $order->yoco_redirect_url }}"
target="_blank"
class="btn btn-pending"
style="margin-top: var(--spacing-md);">
Pay Now
</a>
</div>
<div class="payment-amount">
<div class="payment-amount-label">Amount Due</div>
<div class="payment-amount-value">R {{ number_format($order->total, 2) }}</div>
</div>
</div>
@elseif($order->payment_status === 'failed' && $order->yoco_redirect_url)
<div class="payment-action-box failed">
<div>
<h3 style="margin-top: 0; color: var(--accent-dark);">Payment Failed</h3>
<p style="color: var(--accent-dark); margin: var(--spacing-sm) 0 0 0;">Please try your payment again.</p>
<a href="{{ $order->yoco_redirect_url }}"
target="_blank"
class="btn btn-failed"
style="margin-top: var(--spacing-md);">
Retry Payment
</a>
</div>
<div class="payment-amount">
<div class="payment-amount-label">Amount Due</div>
<div class="payment-amount-value">R {{ number_format($order->total, 2) }}</div>
</div>
</div>
@elseif($order->payment_status === 'paid')
<div class="payment-action-box success">
<div style="display: flex; gap: var(--spacing-md); align-items: flex-start;">
<div class="success-check"></div>
<div>
<h3 style="margin-top: 0; color: var(--accent-dark);">Payment Received</h3>
<p style="color: var(--accent-dark); margin: var(--spacing-sm) 0 0 0; font-size: 0.9rem;">Thank you! Your order is being processed.</p>
</div>
</div>
</div>
@endif
</div>
<!-- Back Link -->
<div style="text-align: center; margin-top: var(--spacing-lg);">
<a href="{{ route('my-orders') }}" style="color: var(--accent-dark); text-decoration: none; font-weight: 600;">
Back to Orders
</a>
</div>
</div>
</div>
</div>
@endsection
+277
View File
@@ -0,0 +1,277 @@
@extends('layouts.app')
@section('title', 'My Orders - Additional Design')
@section('styles')
<style>
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.8rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
.page-intro {
margin-bottom: var(--spacing-lg);
}
.page-intro p {
color: var(--text-secondary);
font-size: 1.1rem;
}
.orders-section {
margin-bottom: var(--spacing-xl);
}
.section-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: var(--spacing-md);
}
.btn-new {
display: inline-block;
}
@media (max-width: 768px) {
.btn-new {
display: block;
width: 100%;
}
}
.table-container {
background: white;
border-radius: 8px;
overflow: hidden;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
table {
width: 100%;
border-collapse: collapse;
}
thead {
background-color: var(--bg-secondary);
border-bottom: 1px solid var(--border-color);
}
th {
padding: var(--spacing-sm) var(--spacing-md);
text-align: left;
font-weight: 600;
font-size: 0.9rem;
color: var(--text-primary);
}
tbody tr {
border-bottom: 1px solid var(--border-color);
transition: background-color 0.2s;
}
tbody tr:hover {
background-color: var(--bg-primary);
}
td {
padding: var(--spacing-sm) var(--spacing-md);
font-size: 0.95rem;
color: var(--text-secondary);
}
.order-number {
font-weight: 600;
color: var(--text-primary);
}
.badge {
display: inline-block;
padding: 0.35rem 0.75rem;
border-radius: 20px;
font-size: 0.8rem;
font-weight: 600;
}
.btn-view {
color: var(--text-primary);
font-weight: 600;
text-decoration: none;
transition: var(--transition);
}
.btn-view:hover {
color: var(--accent-dark);
}
.empty-state {
background-color: var(--bg-secondary);
border-radius: 8px;
padding: var(--spacing-xl);
text-align: center;
}
.empty-state p {
font-size: 1.05rem;
margin-bottom: var(--spacing-md);
}
.empty-state a {
color: var(--text-primary);
font-weight: 600;
text-decoration: none;
padding: var(--spacing-sm) var(--spacing-lg);
background-color: var(--accent-dark);
color: white;
border-radius: 4px;
display: inline-block;
transition: var(--transition);
}
.empty-state a:hover {
background-color: #333;
}
@media (max-width: 768px) {
h1 {
font-size: 2rem;
}
h2 {
font-size: 1.4rem;
}
.section-header {
flex-direction: column;
align-items: flex-start;
gap: var(--spacing-sm);
}
table {
font-size: 0.85rem;
}
th, td {
padding: var(--spacing-xs) var(--spacing-sm);
}
.btn-new {
width: 100%;
text-align: center;
}
}
</style>
@endsection
@section('content')
<div class="container">
<div class="page-intro">
<h1>My Orders</h1>
<p>View your standard and custom orders</p>
</div>
<!-- Standard Orders -->
<div class="orders-section">
<h2>Standard Orders</h2>
@if ($standardOrders->count() > 0)
<div class="table-container">
<table>
<thead>
<tr>
<th>Order #</th>
<th>Date</th>
<th>Total</th>
<th>Status</th>
<th>Action</th>
</tr>
</thead>
<tbody>
@foreach ($standardOrders as $order)
<tr>
<td class="order-number">{{ $order->order_number }}</td>
<td>{{ $order->created_at->format('d M Y') }}</td>
<td><strong>R{{ number_format($order->total, 2) }}</strong></td>
<td>
<span class="status-badge {{ $order->status }}">
{{ ucfirst(str_replace('_', ' ', $order->status)) }}
</span>
</td>
<td>
<a href="{{ route('my-orders.detail', $order) }}" class="btn-view">View Details</a>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="empty-state">
<p>You haven't placed any standard orders yet.</p>
<a href="{{ route('wallpapers') }}">Browse Products</a>
</div>
@endif
</div>
<!-- Custom Orders -->
<div class="orders-section">
<div class="section-header">
<h2 style="margin-bottom: 0;">Custom Orders</h2>
<a href="{{ route('custom-orders.create') }}" class="btn btn-new">+ New Custom Order</a>
</div>
@if ($customOrders->count() > 0)
<div class="table-container">
<table>
<thead>
<tr>
<th>Order #</th>
<th>Type</th>
<th>Total</th>
<th>Status</th>
<th>Deposit</th>
<th>Action</th>
</tr>
</thead>
<tbody>
@foreach ($customOrders as $order)
<tr>
<td class="order-number">{{ $order->order_number }}</td>
<td class="capitalize">{{ ucfirst($order->type) }}</td>
<td><strong>R{{ number_format($order->total_cost, 2) }}</strong></td>
<td>
<span class="status-badge {{ $order->status }}">
{{ str_replace('_', ' ', ucfirst($order->status)) }}
</span>
</td>
<td>
<span class="status-badge {{ $order->deposit_status }}">
{{ ucfirst($order->deposit_status) }}
</span>
</td>
<td>
<a href="{{ route('custom-orders.show', $order) }}" class="btn-view">View Details</a>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="empty-state">
<p>You haven't created any custom orders yet.</p>
<a href="{{ route('custom-orders.create') }}">Create Custom Order</a>
</div>
@endif
</div>
</div>
@endsection
@@ -0,0 +1,94 @@
@extends('layouts.app')
@section('content')
<div class="container mx-auto px-4 py-8">
<div class="max-w-4xl mx-auto">
<h1 class="text-3xl font-bold mb-8">Pending Payments</h1>
@if($orders->isEmpty())
<div class="bg-blue-50 border border-blue-200 rounded-lg p-6">
<p class="text-blue-800">You have no pending payments. All your orders are either paid or cancelled.</p>
<a href="{{ route('order-history') }}" class="mt-4 inline-block text-blue-600 hover:text-blue-800 font-semibold">
Back to Order History
</a>
</div>
@else
<div class="space-y-4">
@foreach($orders as $order)
<div class="border border-gray-200 rounded-lg p-6 hover:shadow-lg transition-shadow">
<div class="flex justify-between items-start mb-4">
<div>
<h2 class="text-xl font-semibold text-gray-900">{{ $order->order_number }}</h2>
<p class="text-sm text-gray-600">
Ordered: {{ $order->created_at->format('M d, Y @ H:i') }}
</p>
</div>
<div class="text-right">
<p class="text-2xl font-bold text-gray-900">R {{ number_format($order->total, 2) }}</p>
<span class="inline-block mt-2 px-3 py-1 bg-yellow-100 text-yellow-800 text-xs font-semibold rounded-full">
@if($order->payment_status === 'pending')
Payment Pending
@elseif($order->payment_status === 'failed')
Payment Failed
@else
{{ ucfirst($order->payment_status) }}
@endif
</span>
</div>
</div>
<div class="bg-gray-50 rounded p-4 mb-4">
<h3 class="font-semibold text-gray-900 mb-3">Order Items</h3>
<div class="space-y-2">
@foreach($order->items as $item)
<div class="flex justify-between text-sm text-gray-700">
<span>{{ $item->product->name }}</span>
<span>{{ $item->quantity }} x R {{ number_format($item->price, 2) }}</span>
</div>
@endforeach
</div>
</div>
<div class="grid grid-cols-2 gap-4 text-sm mb-4 pb-4 border-b border-gray-200">
<div>
<p class="text-gray-600">Customer Name</p>
<p class="font-semibold text-gray-900">{{ $order->customer_name }}</p>
</div>
<div>
<p class="text-gray-600">Shipping Address</p>
<p class="font-semibold text-gray-900">{{ $order->shipping_address }}</p>
</div>
</div>
@if($order->yoco_redirect_url)
<div class="flex gap-3">
<a href="{{ $order->yoco_redirect_url }}"
target="_blank"
class="flex-1 bg-blue-600 hover:bg-blue-700 text-white font-semibold py-3 px-4 rounded-lg text-center transition-colors">
Complete Payment with Yoco
</a>
<a href="{{ route('order-history') }}"
class="flex-1 bg-gray-200 hover:bg-gray-300 text-gray-800 font-semibold py-3 px-4 rounded-lg text-center transition-colors">
Back
</a>
</div>
@else
<div class="bg-red-50 border border-red-200 rounded p-4">
<p class="text-red-800 text-sm">
<strong>Note:</strong> Payment link is not available for this order. Please contact support.
</p>
</div>
@endif
</div>
@endforeach
</div>
<div class="mt-8">
<a href="{{ route('order-history') }}" class="text-blue-600 hover:text-blue-800 font-semibold">
Back to All Orders
</a>
</div>
@endif
</div>
</div>
@endsection
+275
View File
@@ -0,0 +1,275 @@
@extends('layouts.app')
@section('title', 'My Account - Additional Design')
@section('styles')
<style>
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.page-intro {
margin-bottom: var(--spacing-lg);
}
.page-intro p {
color: var(--text-secondary);
font-size: 1.1rem;
}
.account-grid {
display: grid;
grid-template-columns: 2fr 1fr;
gap: var(--spacing-lg);
margin-bottom: var(--spacing-lg);
}
.card {
background: white;
padding: var(--spacing-lg);
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.card h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.8rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
.card h3 {
font-family: var(--font-sans);
font-size: 1.3rem;
font-weight: 600;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
.form-group {
margin-bottom: var(--spacing-md);
}
.form-group label {
display: block;
font-weight: 600;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.form-group input,
.form-group textarea {
width: 100%;
padding: 0.75rem;
border: 1px solid var(--border-color);
border-radius: 4px;
font-size: 1rem;
font-family: inherit;
background-color: var(--bg-primary);
}
.form-group input:focus,
.form-group textarea:focus {
outline: none;
border-color: var(--text-primary);
box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05);
}
.account-type {
padding: var(--spacing-sm) 0;
}
.badge {
display: inline-block;
padding: 0.4rem 1rem;
border-radius: 20px;
font-size: 0.85rem;
font-weight: 600;
}
.badge-admin {
background-color: var(--accent-pink);
color: white;
}
.badge-customer {
background-color: var(--accent-light);
color: var(--text-primary);
}
.sidebar-card {
margin-bottom: var(--spacing-lg);
}
.sidebar-card ul {
list-style: none;
padding: 0;
}
.sidebar-card li {
padding: 0.75rem 0;
border-bottom: 1px solid var(--border-color);
}
.sidebar-card li:last-child {
border-bottom: none;
}
.sidebar-card a {
color: var(--text-primary);
font-weight: 500;
transition: var(--transition);
}
.sidebar-card a:hover {
color: var(--accent-dark);
}
.help-box {
background-color: var(--accent-light);
padding: var(--spacing-lg);
border-radius: 8px;
}
.help-box h3 {
margin-bottom: 0.5rem;
}
.help-box p {
font-size: 0.95rem;
margin-bottom: var(--spacing-sm);
}
.help-box a {
font-weight: 600;
color: var(--accent-dark);
}
.alert {
padding: var(--spacing-sm);
border-radius: 4px;
margin-bottom: var(--spacing-lg);
font-size: 0.9rem;
}
.alert-success {
background-color: #e8f5e9;
border: 1px solid #c8e6c9;
color: #2e7d32;
}
.btn-logout {
color: #c53030;
font-weight: 600;
cursor: pointer;
padding: 0;
border: none;
background: none;
transition: var(--transition);
}
.btn-logout:hover {
color: #a02424;
}
@media (max-width: 768px) {
.account-grid {
grid-template-columns: 1fr;
}
h1 {
font-size: 2rem;
}
.card h2 {
font-size: 1.5rem;
}
}
</style>
@endsection
@section('content')
<div class="container">
<div class="page-intro">
<h1>My Account</h1>
<p>Manage your profile and view your orders</p>
</div>
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
<div class="account-grid">
<!-- Profile Section -->
<div>
<div class="card">
<h2>Profile Information</h2>
<form action="{{ route('my-account.update') }}" method="POST">
@csrf
<div class="form-group">
<label for="name">Name</label>
<input type="text" id="name" name="name" value="{{ auth()->user()->name }}" required>
@error('name')
<p style="color: #c53030; font-size: 0.9rem; margin-top: 0.25rem;">{{ $message }}</p>
@enderror
</div>
<div class="form-group">
<label for="email">Email</label>
<input type="email" id="email" name="email" value="{{ auth()->user()->email }}" required>
@error('email')
<p style="color: #c53030; font-size: 0.9rem; margin-top: 0.25rem;">{{ $message }}</p>
@enderror
</div>
<div class="form-group account-type">
<label>Account Type</label>
@if (auth()->user()->is_admin)
<span class="badge badge-admin">Admin</span>
@else
<span class="badge badge-customer">Customer</span>
@endif
</div>
<button type="submit" class="btn">Update Profile</button>
</form>
</div>
</div>
<!-- Sidebar -->
<div>
<div class="card sidebar-card">
<h3>Quick Links</h3>
<ul>
<li>
<a href="{{ route('my-orders') }}">📦 My Orders</a>
</li>
<li>
<a href="{{ route('custom-orders.create') }}"> New Custom Order</a>
</li>
</ul>
</div>
<div class="help-box">
<h3>Need Help?</h3>
<p>Contact us for assistance with your account or orders.</p>
<a href="mailto:support@example.com">support@example.com</a>
</div>
</div>
</div>
<div style="text-align: center; padding: var(--spacing-lg) 0; border-top: 1px solid var(--border-color);">
<form action="{{ route('logout') }}" method="POST" style="display: inline;">
@csrf
<button type="submit" class="btn-logout">Sign Out</button>
</form>
</div>
</div>
@endsection
+187
View File
@@ -0,0 +1,187 @@
@extends('layouts.app')
@section('title', 'Sign In - Additional Design')
@section('styles')
<style>
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
text-align: center;
}
.login-container {
display: flex;
align-items: center;
justify-content: center;
min-height: 70vh;
padding: var(--spacing-lg) 0;
}
.login-card {
background: white;
padding: 3rem;
border-radius: 20px;
max-width: 400px;
width: 100%;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.login-card p {
text-align: center;
margin-bottom: var(--spacing-lg);
color: var(--text-secondary);
}
.btn-google {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
gap: var(--spacing-sm);
padding: var(--spacing-sm) var(--spacing-md);
background-color: white;
border: 2px solid var(--border-color);
color: var(--text-primary);
border-radius: 50px;
font-weight: 600;
font-size: 1rem;
cursor: pointer;
transition: var(--transition);
margin-bottom: var(--spacing-md);
}
.btn-google:hover {
background-color: var(--bg-secondary);
border-color: var(--text-primary);
}
.btn-google svg {
width: 20px;
height: 20px;
}
.divider {
display: flex;
align-items: center;
gap: var(--spacing-sm);
margin: var(--spacing-lg) 0;
}
.divider-line {
flex: 1;
height: 1px;
background-color: var(--border-color);
}
.divider-text {
font-size: 0.85rem;
color: var(--text-secondary);
}
.btn-guest {
width: 100%;
display: block;
text-align: center;
padding: var(--spacing-sm) var(--spacing-md);
background-color: var(--bg-secondary);
color: var(--text-primary);
border: none;
border-radius: 50px;
font-weight: 600;
font-size: 1rem;
cursor: pointer;
transition: var(--transition);
text-decoration: none;
}
.btn-guest:hover {
background-color: var(--border-color);
}
.terms {
margin-top: var(--spacing-lg);
padding-top: var(--spacing-lg);
border-top: 1px solid var(--border-color);
text-align: center;
font-size: 0.85rem;
color: var(--text-secondary);
}
.terms a {
color: var(--accent-dark);
font-weight: 600;
}
.alert {
padding: var(--spacing-sm);
border-radius: 4px;
margin-bottom: var(--spacing-md);
font-size: 0.9rem;
}
.alert-error {
background-color: #fce8e8;
border: 1px solid #f5c6cb;
color: #721c24;
}
@media (max-width: 768px) {
.login-card {
padding: 2rem;
margin: 0 var(--spacing-md);
}
h1 {
font-size: 2rem;
}
}
</style>
@endsection
@section('content')
<div class="login-container">
<div class="login-card">
<h1>Sign In</h1>
<p>Create an account or continue as guest to access your orders and custom designs</p>
@if (session('error'))
<div class="alert alert-error">
{{ session('error') }}
</div>
@endif
@if ($errors->any())
<div class="alert alert-error">
{{ $errors->first() }}
</div>
@endif
<a href="{{ route('auth.google') }}" class="btn-google">
<svg viewBox="0 0 24 24" fill="currentColor">
<path d="M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z"/>
<path d="M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z"/>
<path d="M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z"/>
<path d="M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z"/>
</svg>
Sign in with Google
</a>
<div class="divider">
<div class="divider-line"></div>
<span class="divider-text">or</span>
<div class="divider-line"></div>
</div>
<a href="{{ route('home') }}" class="btn-guest">
Continue as Guest
</a>
<div class="terms">
By signing in, you agree to our <a href="#">Terms of Service</a> and <a href="#">Privacy Policy</a>
</div>
</div>
</div>
@endsection
+72 -17
View File
@@ -6,27 +6,82 @@
<!-- <a href="/">Home</a> -->
<a href="/wallpapers">Wallpaper</a>
<a href="/murals">Murals</a>
<a href="/fabrics">Fabrics</a>
<a href="/#portfolio">Portfolio</a>
<!-- <a href="/fabrics">Fabrics</a> -->
<!-- <a href="/#portfolio">Portfolio</a> -->
<a href="/#projects">Projects</a>
<!-- <a href="/#shop">Decor Shop</a> -->
<a href="/#contact">Contact</a>
</nav>
<a href="{{ route('cart') }}" style="display: flex; align-items: center; gap: 0.5rem; text-decoration: none; color: inherit; font-weight: 500; position: relative;">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<circle cx="9" cy="21" r="1"></circle>
<circle cx="20" cy="21" r="1"></circle>
<path d="M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6"></path>
</svg>
<span>Cart</span>
@if($cartCount > 0)
<span style="background: var(--accent-dark); color: white; border-radius: 50%; width: 20px; height: 20px; display: flex; align-items: center; justify-content: center; font-size: 0.75rem; font-weight: bold; position: absolute; top: -8px; right: -8px;">{{ $cartCount }}</span>
@endif
</a>
<span></span>
<span></span>
<span></span>
</button>
<div style="display: flex; align-items: center; gap: 1.5rem;">
<!-- Authentication Links -->
@auth
<a href="{{ route('custom-orders.create') }}" style="text-decoration: none; color: inherit; font-weight: 500; font-size: 0.9rem;">Custom Order</a>
<div style="position: relative; display: inline-block;">
<button onclick="toggleUserMenu()" style="background: none; border: none; cursor: pointer; padding: 0; font-weight: 500; display: flex; align-items: center; gap: 0.5rem; color: inherit; font-size: 0.9rem; font-family: Montserrat, sans-serif;">
{{ auth()->user()->name }}
<svg style="width: 16px; height: 16px;" fill="currentColor" viewBox="0 0 20 20">
<path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd" />
</svg>
</button>
<div id="user-menu" style="display: none; position: absolute; right: 0; top: 100%; margin-top: 0.5rem; background: white; border-radius: 0.5rem; box-shadow: 0 10px 25px rgba(0,0,0,0.1); min-width: 200px; z-index: 1000;">
<a href="{{ route('my-account') }}" style="display: block; padding: 0.75rem 1rem; text-decoration: none; color: inherit; border-bottom: 1px solid #e5e7eb;">My Account</a>
<a href="{{ route('my-orders') }}" style="display: block; padding: 0.75rem 1rem; text-decoration: none; color: inherit; border-bottom: 1px solid #e5e7eb;">My Orders</a>
@if(auth()->user()->is_admin)
<a href="/admin" style="display: block; padding: 0.75rem 1rem; text-decoration: none; color: inherit; border-bottom: 1px solid #e5e7eb;">Admin Panel</a>
@endif
<form action="{{ route('logout') }}" method="POST" style="margin: 0;" id="logout-form">
@csrf
<button type="submit" style="font-family: Montserrat, sans-serif; width: 100%; text-align: left; padding: 0.75rem 1rem; background: none; border: none; cursor: pointer; color: inherit; font-weight: 500; font-size: 0.9rem;">Sign Out</button>
</form>
</div>
</div>
@else
<a href="{{ route('auth.login') }}" style="text-decoration: none; color: inherit; font-weight: 500; font-size: 0.9rem;">Sign In</a>
@endauth
<!-- Cart -->
<a href="{{ route('cart') }}" style="display: flex; align-items: center; gap: 0.5rem; text-decoration: none; color: inherit; font-weight: 500; position: relative;">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<circle cx="9" cy="21" r="1"></circle>
<circle cx="20" cy="21" r="1"></circle>
<path d="M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6"></path>
</svg>
<span>Cart</span>
@if($cartCount > 0)
<span style="background: var(--accent-dark); color: white; border-radius: 50%; width: 20px; height: 20px; display: flex; align-items: center; justify-content: center; font-size: 0.75rem; font-weight: bold; position: absolute; top: -8px; right: -8px;">{{ $cartCount }}</span>
@endif
</a>
</div>
</div>
</div>
</div>
</header>
<script>
function toggleUserMenu() {
const menu = document.getElementById('user-menu');
if (menu) {
menu.style.display = menu.style.display === 'none' ? 'block' : 'none';
}
}
// Close menu when clicking outside
document.addEventListener('click', function(event) {
const userMenu = document.getElementById('user-menu');
const toggleButton = event.target.closest('button[onclick="toggleUserMenu()"]');
const logoutForm = document.getElementById('logout-form');
// Don't close if clicking logout form or the toggle button
if (userMenu && !event.target.closest('#user-menu') && !toggleButton && !logoutForm?.contains(event.target)) {
userMenu.style.display = 'none';
}
});
// Allow logout form to submit by not preventing default
document.addEventListener('submit', function(event) {
if (event.target.id === 'logout-form') {
// Allow normal form submission
return true;
}
});
</script>
@@ -0,0 +1,749 @@
@extends('layouts.app')
@section('title', 'Request Custom Design - Additional Design')
@section('styles')
<style>
.page-intro {
margin-bottom: var(--spacing-lg);
}
.page-intro h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.page-intro p {
color: var(--text-secondary);
font-size: 1.1rem;
}
.form-card {
background: white;
padding: var(--spacing-lg);
border-radius: 20px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
margin-bottom: var(--spacing-lg);
max-width: 700px;
}
.form-section h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.6rem;
color: var(--text-primary);
/* margin-bottom: var(--spacing-md); */
}
.form-section {
/* margin-bottom: var(--spacing-lg); */
}
.form-section:last-child {
margin-bottom: 0;
}
.form-group {
margin-bottom: var(--spacing-md);
}
.form-group label {
display: block;
font-weight: 600;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.form-group-hint {
font-size: 0.9rem;
color: var(--text-secondary);
margin-bottom: 0.75rem;
}
.form-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: var(--spacing-sm);
}
.form-row.full {
grid-template-columns: 1fr;
}
.form-group input,
.form-group textarea,
.form-group select {
width: 100%;
padding: 0.75rem;
border: 1px solid var(--border-color);
border-radius: 4px;
font-size: 1rem;
font-family: inherit;
background-color: white;
box-sizing: border-box;
}
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus {
outline: none;
border-color: var(--accent-dark);
box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05);
}
.form-group textarea {
resize: vertical;
min-height: 120px;
}
.upload-area {
border: 2px dashed var(--border-color);
border-radius: 8px;
padding: var(--spacing-lg);
text-align: center;
cursor: pointer;
transition: var(--transition);
background-color: var(--bg-primary);
}
.upload-area:hover {
border-color: var(--accent-dark);
background-color: var(--bg-secondary);
}
.upload-area svg {
width: 48px;
height: 48px;
color: var(--text-secondary);
margin: 0 auto var(--spacing-sm);
}
.upload-area p {
margin: 0.25rem 0;
}
.upload-area .hint {
font-size: 0.85rem;
color: var(--text-secondary);
}
.file-item {
display: flex;
align-items: center;
gap: 0.75rem;
padding: 0.75rem;
background-color: var(--bg-secondary);
border-radius: 4px;
margin-top: 0.5rem;
font-size: 0.9rem;
}
.file-item svg {
width: 18px;
height: 18px;
color: var(--accent-dark);
flex-shrink: 0;
}
.checkbox-group {
padding: var(--spacing-md);
background-color: var(--bg-secondary);
border-radius: 20px;
margin-bottom: var(--spacing-md);
}
.checkbox-option {
display: flex;
gap: var(--spacing-md);
cursor: pointer;
}
.checkbox-option input[type="checkbox"] {
margin-top: 2px;
cursor: pointer;
}
.checkbox-content p {
margin-bottom: 0.5rem;
}
.button-group {
display: flex;
gap: var(--spacing-md);
margin-top: var(--spacing-lg);
}
.button-group .btn {
flex: 1;
}
.btn-cancel {
background-color: var(--bg-secondary) !important;
color: var(--text-primary) !important;
border: 1px solid var(--border-color) !important;
}
.btn-cancel:hover {
background-color: var(--border-color) !important;
color: var(--text-primary) !important;
}
.error-message {
color: #c53030;
font-size: 0.9rem;
margin-top: 0.5rem;
}
.info-box {
background-color: var(--accent-light);
border: 1px solid var(--border-color);
padding: var(--spacing-lg);
border-radius: 20px;
margin-bottom: var(--spacing-lg);
}
.info-box h3 {
font-family: var(--font-sans);
font-size: 1.2rem;
font-weight: 600;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
margin-top: 0;
}
.info-box ul {
list-style-position: inside;
margin: 0;
padding: 0;
}
.info-box li {
margin-bottom: 0.5rem;
}
.form-wrapper {
display: grid;
grid-template-columns: 1fr 450px;
gap: var(--spacing-lg);
margin-bottom: var(--spacing-lg);
}
.cost-summary {
height: fit-content;
position: sticky;
top: 120px;
}
.cost-summary-content {
background: white;
padding: var(--spacing-lg);
border-radius: 20px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
margin-bottom: var(--spacing-md);
}
.cost-summary-content h3 {
font-family: 'Abril Fatface', cursive;
font-size: 1.3rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
.cost-item {
display: flex;
justify-content: space-between;
padding: var(--spacing-sm) 0;
border-bottom: 1px solid var(--border-color);
font-size: 0.95rem;
}
.cost-item.total {
font-weight: 700;
font-size: 1.1rem;
border-top: 2px solid var(--accent-dark);
border-bottom: none;
margin-top: var(--spacing-md);
padding-top: var(--spacing-md);
color: var(--accent-dark);
}
.cost-label {
color: var(--text-secondary);
}
.cost-value {
font-weight: 600;
color: var(--text-primary);
}
.cost-item.total .cost-value {
color: var(--accent-dark);
}
.design-fee-note {
font-size: 0.85rem;
color: var(--text-secondary);
margin-top: var(--spacing-md);
padding-top: var(--spacing-md);
border-top: 1px solid var(--border-color);
}
.cost-item.disabled {
opacity: 0.5;
color: var(--text-secondary);
}
.cost-item.discount {
color: var(--accent-pink);
}
.cost-item.discount .cost-value {
color: var(--accent-pink);
}
@media (max-width: 768px) {
.form-wrapper {
grid-template-columns: 1fr;
}
.cost-summary-content {
position: static;
}
.form-card {
padding: var(--spacing-md);
}
.form-row {
grid-template-columns: 1fr;
}
.button-group {
flex-direction: column;
}
}
</style>
@endsection
@section('content')
<div class="container" style="padding:20px;">
<div class="page-intro">
<h1>Request Custom Design</h1>
<p>Create a custom wallpaper, mural, or fabric design tailored to your needs</p>
</div>
@if ($errors->any())
<div style="background-color: #f8d7da; border: 1px solid var(--border-color); color: var(--text-primary); padding: var(--spacing-md); border-radius: 8px; margin-bottom: var(--spacing-lg);">
<h4 style="margin-top: 0;">Please correct the following errors:</h4>
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
@if (session('success'))
<div style="background-color: var(--accent-light); border: 1px solid var(--border-color); color: var(--text-primary); padding: var(--spacing-md); border-radius: 8px; margin-bottom: var(--spacing-lg);">
{{ session('success') }}
</div>
@endif
<!-- Info Box -->
<div class="info-box">
<h2>How It Works</h2>
<ul>
<li>Submit your custom order with design specifications and reference images</li>
<li>Pay a 20% non-refundable deposit to commence design work</li>
<li>Our team creates your design and prepares proofs for review</li>
<li>Pay the remaining 80% balance to proceed with printing and shipping</li>
</ul>
</div>
<!-- Form -->
<div class="form-wrapper">
<form action="{{ route('custom-orders.store') }}" method="POST" enctype="multipart/form-data" id="custom-order-form" class="form-card" data-action="{{ route('custom-orders.store') }}">
@csrf
<!-- Order Type & Dimensions -->
<div class="form-section">
<h2>Order Details</h2>
<div class="form-group">
<label for="type">Order Type *</label>
<select id="type" name="type" required>
<option value="">-- Select a type --</option>
<option value="wallpaper" {{ old('type') == 'wallpaper' ? 'selected' : '' }}>Wallpaper (tileable pattern)</option>
<option value="mural" {{ old('type') == 'mural' ? 'selected' : '' }}>Mural (large format)</option>
<option value="fabric" {{ old('type') == 'fabric' ? 'selected' : '' }}>Fabric (linear meter)</option>
</select>
@error('type')
<p class="error-message">{{ $message }}</p>
@enderror
</div>
<div class="form-row">
<div class="form-group">
<label for="width">Width (meters) *</label>
<input type="number" id="width" name="width" step="0.01" min="0.1" value="{{ old('width') }}" required>
@error('width')
<p class="error-message">{{ $message }}</p>
@enderror
</div>
<div class="form-group">
<label for="height">Height (meters) *</label>
<input type="number" id="height" name="height" step="0.01" min="0.1" value="{{ old('height') }}" required>
@error('height')
<p class="error-message">{{ $message }}</p>
@enderror
</div>
</div>
<div class="form-row">
<div class="form-group">
<label for="quantity">Quantity *</label>
<input type="number" id="quantity" name="quantity" value="{{ old('quantity', 1) }}" min="1" required>
@error('quantity')
<p class="error-message">{{ $message }}</p>
@enderror
</div>
<div class="form-group">
<label for="print_stock_id">Print Material *</label>
<select id="print_stock_id" name="print_stock_id" required>
<option value="">-- Select material --</option>
@foreach ($printStocks as $stock)
<option value="{{ $stock->id }}" {{ old('print_stock_id') == $stock->id ? 'selected' : '' }}>
{{ $stock->name }} ({{ $stock->cost_per_meter ? 'R' . number_format($stock->cost_per_meter, 2) . '/m' : 'R' . number_format($stock->cost_per_m2, 2) . '/m²' }})
</option>
@endforeach
</select>
@error('print_stock_id')
<p class="error-message">{{ $message }}</p>
@enderror
</div>
</div>
</div>
<!-- Design Brief -->
<div class="form-section">
<h2>Design Brief</h2>
<div class="form-group form-row full">
<label for="customer_brief">Design Brief (minimum 50 characters) *</label>
<p class="form-group-hint">Tell us about your design concept, colors, style, and any specific requirements</p>
<textarea id="customer_brief" name="customer_brief" placeholder="Describe your custom design vision..." minlength="50" required>{{ old('customer_brief') }}</textarea>
@error('customer_brief')
<p class="error-message">{{ $message }}</p>
@enderror
</div>
<div class="form-group form-row full">
<label for="special_instructions">Special Instructions (optional)</label>
<textarea id="special_instructions" name="special_instructions" placeholder="Any additional notes or requirements...">{{ old('special_instructions') }}</textarea>
@error('special_instructions')
<p class="error-message">{{ $message }}</p>
@enderror
</div>
</div>
<!-- Reference Images -->
<div class="form-section">
<h2>Reference Images</h2>
<div class="form-group form-row full">
<label>Upload Reference Images</label>
<p class="form-group-hint">Upload inspiration images, mood boards, or reference materials for your design</p>
<div class="upload-area" onclick="document.getElementById('reference-images').click()">
<input type="file" id="reference-images" name="reference_images[]" multiple accept="image/*" style="display: none;">
<svg fill="none" stroke="currentColor" viewBox="0 0 48 48">
<path d="M28 8H12a4 4 0 00-4 4v20m32-12v8a4 4 0 01-4 4H12a4 4 0 01-4-4v-4m32-12l-3.172-3.172a4 4 0 00-5.656 0L28 12M12 32l3.172-3.172a4 4 0 015.656 0L32 32" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
</svg>
<p style="margin: 0;">Click to upload or drag and drop</p>
<p class="hint">PNG, JPG, GIF, WebP up to 5MB</p>
</div>
<div id="file-list"></div>
@error('reference_images.*')
<p class="error-message">{{ $message }}</p>
@enderror
</div>
</div>
<!-- Library Agreement -->
<div class="form-section">
<h2>Design Library</h2>
<div class="checkbox-group">
<label class="checkbox-option">
<input type="checkbox" name="library_discount" value="1" {{ old('library_discount') ? 'checked' : '' }}>
<div class="checkbox-content">
<p style="font-weight: 600; margin-bottom: 0.25rem;">Allow us to use your design in our library</p>
<p>If you agree, we'll apply a <strong>20% discount to the design fee</strong>. This means we may offer similar designs to other customers in the future.</p>
</div>
</label>
</div>
</div>
<!-- Submit Buttons -->
<div class="button-group">
<button type="submit" class="btn">Submit Order</button>
<a href="{{ route('my-orders') }}" class="btn btn-cancel">Cancel</a>
</div>
</form>
<!-- Cost Summary Sidebar -->
<div class="cost-summary">
<div class="cost-summary-content">
<h3>Cost Summary</h3>
<div class="cost-item disabled" id="material-cost-item">
<span class="cost-label">Material Cost</span>
<span class="cost-value">-</span>
</div>
<div class="cost-item disabled" id="design-fee-item">
<span class="cost-label">Design Fee</span>
<span class="cost-value">-</span>
</div>
<div class="cost-item disabled" id="discount-item" style="display: none;">
<span class="cost-label">Library Discount</span>
<span class="cost-value">-</span>
</div>
<div class="cost-item total">
<span>Deposit Required (20%)</span>
<span class="cost-value" id="deposit-amount">R0.00</span>
</div>
<div class="design-fee-note">
<strong>Note:</strong> 20% non-refundable deposit covers design work. Pay the remaining 80% after proof approval.
</div>
</div>
<div style="background: var(--accent-light); padding: 1.5rem; border-radius: 20px; margin-bottom: 1rem;">
<p style="margin: 0 0 0.5rem 0; color: black;">Estimated Total:</p>
<div style="font-family: 'Abril Fatface', cursive; font-size: 3rem; font-weight: 400; color: white;">R<span id="total-cost">0.00</span></div>
<small style="color: #fff; display: block; margin-top: 0.5rem;">incl. VAT</small>
</div>
</div>
<!-- Total Cost Display -->
</div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
console.log('=== CUSTOM ORDER FORM DEBUG ===');
const form = document.getElementById('custom-order-form');
console.log('Form element:', form);
console.log('Form action:', form.action);
console.log('Form method:', form.method);
console.log('Form enctype:', form.enctype);
console.log('Form ID:', form.id);
console.log('Form classes:', form.className);
if (!form) {
console.error('FORM NOT FOUND!');
return;
}
// ===== COST CALCULATION =====
const DESIGN_FEE = 500; // Base design fee in Rands
const DISCOUNT_PERCENTAGE = 0.20; // 20% discount for library usage
// Get form inputs
const typeSelect = document.getElementById('type');
const widthInput = document.getElementById('width');
const heightInput = document.getElementById('height');
const quantityInput = document.getElementById('quantity');
const stockSelect = document.getElementById('print_stock_id');
const libraryCheckbox = document.querySelector('input[name="library_discount"]');
// Get summary elements
const materialCostItem = document.getElementById('material-cost-item');
const designFeeItem = document.getElementById('design-fee-item');
const discountItem = document.getElementById('discount-item');
const depositAmount = document.getElementById('deposit-amount');
// Store print stocks data
const printStocksData = {};
@foreach($printStocks as $stock)
printStocksData[{{ $stock->id }}] = {
name: '{{ $stock->name }}',
width: {{ $stock->width ?? 0.53 }},
costPerMeter: {{ $stock->cost_per_meter ?? 0 }},
costPerM2: {{ $stock->cost_per_m2 ?? 0 }}
};
@endforeach
function calculateCosts() {
const type = typeSelect.value;
const width = parseFloat(widthInput.value) || 0;
const height = parseFloat(heightInput.value) || 0;
const quantity = parseFloat(quantityInput.value) || 1;
const stockId = stockSelect.value;
const hasLibraryDiscount = libraryCheckbox?.checked || false;
if (!type || !stockId || width <= 0 || height <= 0) {
// Show disabled state
materialCostItem.classList.add('disabled');
designFeeItem.classList.add('disabled');
discountItem.style.display = 'none';
depositAmount.textContent = 'R0.00';
document.getElementById('total-cost').textContent = '0.00';
document.getElementById('cost-breakdown').textContent = '';
return;
}
const stock = printStocksData[stockId];
if (!stock) return;
// Calculate material cost based on type
let materialCost = 0;
let breakdown = '';
if (type === 'wallpaper') {
// Wallpaper: Takes into account stock width
// Calculate number of vertical strips needed: ceil(wall_height / stock_width)
// Calculate total length: number_of_strips × wall_width
// Cost = total_length × cost_per_meter × quantity
const stockWidth = stock.width || 0.53; // Default to standard wallpaper width if not specified
const stripsNeeded = Math.ceil(height / stockWidth);
const totalLength = stripsNeeded * width;
materialCost = totalLength * stock.costPerMeter * quantity;
breakdown = `Stock: R${stock.costPerMeter.toFixed(2)}/m × ${totalLength.toFixed(2)}m`;
} else if (type === 'mural') {
// Mural: width × height in m²
// Cost = cost_per_m2 × (width × height) × quantity
const area = width * height;
materialCost = area * stock.costPerM2 * quantity;
breakdown = `Stock: R${stock.costPerM2.toFixed(2)}/m² × ${area.toFixed(2)}m²`;
} else if (type === 'fabric') {
// Fabric: width input = length in linear meters
// Cost = cost_per_meter × length × quantity
materialCost = width * stock.costPerMeter * quantity;
breakdown = `Stock: R${stock.costPerMeter.toFixed(2)}/m × ${width.toFixed(2)}m`;
}
// Calculate design fee
let designFee = DESIGN_FEE;
let discount = 0;
if (hasLibraryDiscount) {
discount = designFee * DISCOUNT_PERCENTAGE;
designFee -= discount;
}
// Total cost
const totalCost = materialCost + designFee;
const depositRequired = totalCost * 0.20; // 20% deposit
const remainingBalance = totalCost * 0.80; // 80% remaining
// Update UI
materialCostItem.classList.remove('disabled');
materialCostItem.innerHTML = `<span class="cost-label">Material Cost</span><span class="cost-value">R${materialCost.toFixed(2)}</span>`;
designFeeItem.classList.remove('disabled');
designFeeItem.innerHTML = `<span class="cost-label">Design Fee</span><span class="cost-value">R${designFee.toFixed(2)}</span>`;
if (hasLibraryDiscount && discount > 0) {
discountItem.style.display = 'flex';
discountItem.classList.add('discount');
discountItem.innerHTML = `<span class="cost-label">Library Discount (20%)</span><span class="cost-value">-R${discount.toFixed(2)}</span>`;
} else {
discountItem.style.display = 'none';
}
depositAmount.textContent = `R${depositRequired.toFixed(2)}`;
document.getElementById('total-cost').textContent = `${totalCost.toFixed(2)}`;
document.getElementById('cost-breakdown').textContent = breakdown;
}
// Add event listeners for cost calculation
if (typeSelect) typeSelect.addEventListener('change', calculateCosts);
if (widthInput) widthInput.addEventListener('input', calculateCosts);
if (heightInput) heightInput.addEventListener('input', calculateCosts);
if (quantityInput) quantityInput.addEventListener('input', calculateCosts);
if (stockSelect) stockSelect.addEventListener('change', calculateCosts);
if (libraryCheckbox) libraryCheckbox.addEventListener('change', calculateCosts);
// Update field labels based on type
function updateFieldLabels() {
const type = typeSelect.value;
const widthLabel = document.querySelector('label[for="width"]');
const heightLabel = document.querySelector('label[for="height"]');
const heightGroup = heightInput?.parentElement;
if (type === 'wallpaper') {
if (widthLabel) widthLabel.innerHTML = 'Wall Width (meters) *';
if (heightLabel) heightLabel.innerHTML = 'Wall Height (meters) *<br><small style="font-weight: normal; color: var(--text-secondary); display: block; margin-top: 0.25rem;">The system will calculate strips needed based on stock width</small>';
if (heightGroup) heightGroup.style.display = 'block';
} else if (type === 'mural') {
if (widthLabel) widthLabel.textContent = 'Width (meters) *';
if (heightGroup) heightGroup.style.display = 'block';
if (heightLabel) heightLabel.textContent = 'Height (meters) *';
} else if (type === 'fabric') {
if (widthLabel) widthLabel.textContent = 'Length (meters) *';
if (heightGroup) heightGroup.style.display = 'none';
}
}
if (typeSelect) {
typeSelect.addEventListener('change', updateFieldLabels);
}
// Initial label update
updateFieldLabels();
// Initial calculation
calculateCosts();
// Handle reference image uploads
const referenceImagesInput = document.getElementById('reference-images');
if (referenceImagesInput) {
referenceImagesInput.addEventListener('change', function() {
const fileList = document.getElementById('file-list');
if (fileList) {
fileList.innerHTML = '';
for (let file of this.files) {
const item = document.createElement('div');
item.className = 'file-item';
item.innerHTML = `<svg fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M4 4a2 2 0 012-2h4.586A2 2 0 0112 2.586L15.414 6A2 2 0 0116 7.414V16a2 2 0 01-2 2H6a2 2 0 01-2-2V4z" clip-rule="evenodd"/></svg><span>${file.name}</span>`;
fileList.appendChild(item);
}
}
});
}
// Find the submit button and log when it's clicked
const submitBtn = form.querySelector('button[type="submit"]');
if (submitBtn) {
console.log('Submit button found:', submitBtn);
submitBtn.addEventListener('click', function(e) {
console.log('===== SUBMIT BUTTON CLICKED =====');
console.log('Event:', e);
console.log('Form will submit to:', form.action);
});
}
// Handle form submission - FORCE IT TO SUBMIT
form.addEventListener('submit', function(e) {
console.log('===== FORM SUBMIT EVENT FIRED =====');
console.log('Event type:', e.type);
console.log('Event defaultPrevented:', e.defaultPrevented);
console.log('Action:', form.action);
console.log('Method:', form.method);
console.log('About to submit to:', form.action);
console.log('Checking if global script should skip this form...');
console.log('Form action includes /custom-orders:', form.action.includes('/custom-orders'));
// Don't prevent - let it submit naturally
});
console.log('Event listeners attached successfully');
});
</script>
@endsection
@@ -0,0 +1,150 @@
@extends('layouts.app')
@section('title', 'Deposit Payment Successful')
@section('styles')
<style>
.success-container {
max-width: 600px;
margin: var(--spacing-xl) auto;
padding: var(--spacing-xl);
background-color: var(--accent-light);
border: 2px solid var(--accent-pink);
border-radius: 20px;
text-align: center;
}
.success-icon {
font-size: 4rem;
color: var(--accent-pink);
margin-bottom: var(--spacing-md);
}
.success-title {
font-family: var(--font-serif);
font-size: 2rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
.success-message {
color: var(--text-secondary);
margin-bottom: var(--spacing-lg);
font-size: 1.1rem;
}
.order-details {
background-color: white;
padding: var(--spacing-lg);
border-radius: 8px;
margin-bottom: var(--spacing-lg);
text-align: left;
}
.detail-row {
display: flex;
justify-content: space-between;
padding: var(--spacing-sm) 0;
border-bottom: 1px solid var(--border-color);
}
.detail-row:last-child {
border-bottom: none;
}
.detail-label {
color: var(--text-secondary);
font-weight: 500;
}
.detail-value {
color: var(--text-primary);
font-weight: 600;
}
.next-steps {
text-align: left;
background-color: white;
padding: var(--spacing-lg);
border-radius: 8px;
margin-bottom: var(--spacing-lg);
}
.next-steps h3 {
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
.next-steps ol {
color: var(--text-secondary);
padding-left: var(--spacing-lg);
}
.next-steps li {
margin-bottom: var(--spacing-sm);
}
.action-buttons {
display: flex;
gap: var(--spacing-md);
justify-content: center;
flex-wrap: wrap;
}
.action-buttons .btn {
flex: 1;
min-width: 150px;
}
</style>
@endsection
@section('content')
<div class="container">
<div class="success-container">
<div class="success-icon"></div>
<h1 class="success-title">Payment Successful!</h1>
<p class="success-message">
Your deposit payment has been received and processed successfully.
</p>
<div class="order-details">
<div class="detail-row">
<span class="detail-label">Order Number:</span>
<span class="detail-value">{{ $customOrder->order_number }}</span>
</div>
<div class="detail-row">
<span class="detail-label">Order Type:</span>
<span class="detail-value">{{ ucfirst($customOrder->type) }}</span>
</div>
<div class="detail-row">
<span class="detail-label">Deposit Amount:</span>
<span class="detail-value">R{{ number_format($customOrder->deposit_amount, 2) }}</span>
</div>
<div class="detail-row">
<span class="detail-label">Remaining Balance:</span>
<span class="detail-value">R{{ number_format($customOrder->balance_amount, 2) }}</span>
</div>
<div class="detail-row">
<span class="detail-label">Payment Status:</span>
<span class="detail-value"><span class="status-badge paid">Paid</span></span>
</div>
</div>
<div class="next-steps">
<h3>What Happens Next?</h3>
<ol>
<li>Your design requirements have been received</li>
<li>Our design team will review your specifications</li>
<li>You'll receive proof designs for your approval within 3-5 business days</li>
<li>Once you approve the proofs, we'll prepare for printing</li>
<li>The remaining balance (80%) will be due before printing begins</li>
</ol>
</div>
<div class="action-buttons">
<a href="{{ route('custom-orders.show', $customOrder) }}" class="btn">View Order Details</a>
<a href="{{ route('my-orders') }}" class="btn btn--secondary">Back to Orders</a>
</div>
</div>
</div>
@endsection
@@ -0,0 +1,355 @@
@extends('layouts.app')
@section('title', 'My Custom Orders')
@section('styles')
<style>
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.6rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
.page-header {
display: flex;
justify-content: space-between;
align-items: flex-start;
margin-bottom: var(--spacing-lg);
gap: var(--spacing-md);
}
.page-header-content {
flex: 1;
}
.page-header p {
color: var(--text-secondary);
font-size: 1rem;
}
.empty-state {
background-color: var(--bg-secondary);
border-radius: 8px;
padding: var(--spacing-xl);
text-align: center;
margin-bottom: var(--spacing-lg);
}
.empty-state-icon {
font-size: 3rem;
margin-bottom: var(--spacing-md);
}
.empty-state h2 {
margin-bottom: 0.5rem;
}
.empty-state p {
color: var(--text-secondary);
margin-bottom: var(--spacing-lg);
}
.orders-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
gap: var(--spacing-lg);
margin-bottom: var(--spacing-lg);
}
.order-card {
background: white;
border-radius: 8px;
overflow: hidden;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
transition: var(--transition);
}
.order-card:hover {
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}
.order-card-header {
padding: var(--spacing-lg);
border-bottom: 1px solid var(--border-color);
display: flex;
justify-content: space-between;
align-items: flex-start;
}
.order-number {
font-family: var(--font-sans);
font-weight: 600;
color: var(--text-primary);
font-size: 1.1rem;
margin-bottom: 0.25rem;
}
.order-date {
color: var(--text-secondary);
font-size: 0.9rem;
}
.order-card-body {
padding: var(--spacing-lg);
}
.order-detail {
margin-bottom: var(--spacing-md);
}
.order-detail:last-child {
margin-bottom: 0;
}
.order-detail-label {
font-weight: 600;
color: var(--text-primary);
font-size: 0.9rem;
text-transform: uppercase;
letter-spacing: 0.5px;
margin-bottom: 0.25rem;
}
.order-detail-value {
color: var(--text-secondary);
font-size: 1rem;
text-transform: capitalize;
}
.order-details-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: var(--spacing-md);
}
.order-card-footer {
padding: var(--spacing-lg);
border-top: 1px solid var(--border-color);
display: flex;
gap: var(--spacing-md);
}
.order-card-footer a {
flex: 1;
display: flex;
align-items: center;
justify-content: center;
text-decoration: none;
}
.progress-indicator {
display: flex;
gap: var(--spacing-sm);
margin-bottom: var(--spacing-md);
}
.progress-step {
flex: 1;
height: 4px;
background-color: var(--border-color);
border-radius: 2px;
overflow: hidden;
}
.progress-step.active {
background-color: var(--accent-dark);
}
.progress-step.completed {
background-color: #4caf50;
}
.status-flow {
display: flex;
align-items: center;
gap: var(--spacing-sm);
font-size: 0.85rem;
color: var(--text-secondary);
margin-bottom: var(--spacing-md);
flex-wrap: wrap;
}
.status-flow-item {
display: flex;
align-items: center;
gap: 0.25rem;
}
.status-flow-arrow {
color: var(--border-color);
margin: 0 0.25rem;
}
.alert {
padding: var(--spacing-md);
border-radius: 8px;
margin-bottom: var(--spacing-lg);
border: 1px solid;
}
.alert-success {
background-color: #e8f5e9;
border-color: #c8e6c9;
color: #2e7d32;
}
@media (max-width: 768px) {
h1 {
font-size: 2rem;
}
.page-header {
flex-direction: column;
}
.orders-grid {
grid-template-columns: 1fr;
}
.order-details-grid {
grid-template-columns: 1fr;
}
.order-card-footer {
flex-direction: column;
}
.order-card-footer a {
display: block;
}
.status-flow {
flex-direction: column;
align-items: flex-start;
}
}
</style>
@endsection
@section('content')
<div class="container" style="margin-top:20px;">
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
<div class="page-header">
<div class="page-header-content">
<h1>My Custom Orders</h1>
<p>Track and manage your custom printing orders</p>
</div>
<a href="{{ route('custom-orders.create') }}" class="btn">Create New Order</a>
</div>
@if ($customOrders->isEmpty())
<div class="empty-state">
<div class="empty-state-icon">📋</div>
<h2>No Custom Orders Yet</h2>
<p>You haven't created any custom orders yet. Start by designing your unique print today!</p>
<a href="{{ route('custom-orders.create') }}" class="btn">Create Your First Order</a>
</div>
@else
<div class="orders-grid">
@foreach ($customOrders as $order)
<div class="order-card">
<div class="order-card-header">
<div>
<div class="order-number">Order #{{ $order->order_number }}</div>
<div class="order-date">{{ $order->created_at->format('d M Y') }}</div>
</div>
<span class="status-badge {{ $order->status }}">
{{ str_replace('_', ' ', ucfirst($order->status)) }}
</span>
</div>
<div class="order-card-body">
<!-- Progress Indicator -->
<div class="progress-indicator">
@php
$statuses = ['submitted', 'approved', 'in_production', 'proof_ready', 'completed'];
$currentIndex = array_search($order->status, $statuses);
@endphp
@foreach ($statuses as $index => $status)
<div class="progress-step {{ $index <= $currentIndex ? 'completed' : ($index === $currentIndex + 1 ? 'active' : '') }}"></div>
@endforeach
</div>
<!-- Order Details Grid -->
<div class="order-details-grid">
<div class="order-detail">
<div class="order-detail-label">Type</div>
<div class="order-detail-value">{{ ucfirst($order->type) }}</div>
</div>
<div class="order-detail">
<div class="order-detail-label">Status</div>
<div class="order-detail-value">
{{ str_replace('_', ' ', ucfirst($order->status)) }}
</div>
</div>
@if ($order->specifications)
<div class="order-detail">
<div class="order-detail-label">Quantity</div>
<div class="order-detail-value">{{ $order->specifications->quantity }}</div>
</div>
<div class="order-detail">
<div class="order-detail-label">Stock</div>
<div class="order-detail-value">
{{ $order->specifications->printStock ? $order->specifications->printStock->name : 'N/A' }}
</div>
</div>
@endif
</div>
<!-- Payment Status -->
@if ($order->total_cost)
<div class="order-detail">
<div class="order-detail-label">Total Cost</div>
<div class="order-detail-value" style="font-weight: 600; color: var(--accent-dark); font-size: 1.1rem;">
R{{ number_format($order->total_cost, 2) }}
</div>
</div>
@endif
<!-- Status Flow -->
<div class="status-flow">
<div class="status-flow-item">
<span>{{ $order->deposit_status === 'paid' ? '✓' : '○' }}</span>
<span>Deposit</span>
</div>
<div class="status-flow-arrow"></div>
<div class="status-flow-item">
<span>{{ $order->status === 'approved' ? '✓' : '○' }}</span>
<span>Approved</span>
</div>
<div class="status-flow-arrow"></div>
<div class="status-flow-item">
<span>{{ in_array($order->status, ['in_production', 'proof_ready', 'completed']) ? '✓' : '○' }}</span>
<span>Production</span>
</div>
</div>
</div>
<div class="order-card-footer">
<a href="{{ route('custom-orders.show', $order->uuid) }}">View Details</a>
@if ($order->deposit_status === 'unpaid')
<a href="{{ route('custom-orders.show', $order->uuid) }}" class="secondary">Pay Deposit</a>
@endif
</div>
</div>
@endforeach
</div>
@endif
</div>
@endsection
@@ -0,0 +1,431 @@
@extends('layouts.app')
@section('title', 'Order #' . $customOrder->order_number . ' - Custom Order Details')
@section('styles')
<style>
/* Page-specific typography overrides */
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.6rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
h3 {
font-family: var(--font-sans);
font-size: 1.1rem;
font-weight: 600;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.page-intro {
margin-bottom: var(--spacing-lg);
}
.page-intro p {
color: var(--text-secondary);
font-size: 1rem;
}
/* Timeline-specific styles */
.card {
padding: var(--spacing-lg);
margin-bottom: var(--spacing-lg);
}
.card:hover {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.timeline-container {
background: white;
padding: var(--spacing-lg);
border-radius: 20px;
margin-bottom: var(--spacing-lg);
transition: var(--transition);
}
.timeline-container:hover {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.timeline-title {
font-family: var(--font-serif);
font-size: 1.3rem;
color: var(--text-primary);
margin-bottom: var(--spacing-lg);
text-align: center;
}
.timeline {
display: flex;
align-items: center;
gap: 0;
position: relative;
overflow-x: auto;
padding: var(--spacing-md) 0;
}
.timeline::before {
content: '';
position: absolute;
top: 50%;
left: 0;
right: 0;
height: 2px;
background-color: var(--border-color);
z-index: 1;
transform: translateY(-50%);
}
.timeline-item {
flex: 1;
min-width: 140px;
display: flex;
flex-direction: column;
align-items: center;
position: relative;
z-index: 2;
}
.timeline-circle {
width: 40px;
height: 40px;
border-radius: 50%;
background-color: white;
border: 3px solid var(--border-color);
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
font-weight: 900;
font-size: 1.2rem;
color: var(--text-primary);
flex-shrink: 0;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
margin: 0;
}
.timeline-item.completed .timeline-circle {
background-color: var(--accent-pink);
border-color: var(--accent-pink);
color: white;
}
.timeline-item.active .timeline-circle {
background-color: var(--accent-light);
border-color: var(--accent-dark);
box-shadow: 0 0 0 4px var(--accent-light);
}
.timeline-label {
text-align: center;
font-size: 0.85rem;
font-weight: 600;
color: var(--text-primary);
line-height: 1.3;
max-width: 120px;
margin-top: 60px;
}
.timeline-item.completed .timeline-label {
color: var(--accent-pink);
}
.timeline-item.active .timeline-label {
color: var(--accent-dark);
font-weight: 700;
}
@media (max-width: 768px) {
.content-grid {
grid-template-columns: 1fr;
}
h1 {
font-size: 1.8rem;
}
.image-gallery {
grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
}
}
</style>
@endsection
@section('content')
<div class="container">
<div class="page-intro">
<h1>Custom Order Details</h1>
<p>Order #{{ $customOrder->order_number }}</p>
</div>
@if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
@if (session('info'))
<div class="alert alert-info">
{{ session('info') }}
</div>
@endif
<!-- Timeline -->
<div class="timeline-container">
<h2 class="timeline-title">Order Progress</h2>
<div class="timeline">
@php
$timelineSteps = [
['status' => 'submitted', 'label' => 'Order\nSubmitted', 'completed' => $customOrder->status !== null],
['status' => 'deposit_paid', 'label' => 'Deposit\nPaid', 'completed' => $customOrder->deposit_status === 'paid'],
['status' => 'proof_sent', 'label' => 'Proofs\nSent', 'completed' => $customOrder->proofs()->exists()],
['status' => 'proof_approved', 'label' => 'Proofs\nApproved', 'completed' => $customOrder->proofs()->where('status', 'approved')->exists()],
['status' => 'processing', 'label' => 'Processing', 'completed' => $customOrder->status === 'processing'],
['status' => 'shipped', 'label' => 'Order\nShipped', 'completed' => $customOrder->status === 'completed'],
];
// Determine current step
$currentStep = 0;
if ($customOrder->status === 'completed') $currentStep = 5;
elseif ($customOrder->status === 'processing') $currentStep = 4;
elseif ($customOrder->proofs()->where('status', 'approved')->exists()) $currentStep = 3;
elseif ($customOrder->proofs()->exists()) $currentStep = 2;
elseif ($customOrder->deposit_status === 'paid') $currentStep = 1;
@endphp
@foreach ($timelineSteps as $index => $step)
<div class="timeline-item @if ($index < $currentStep) completed @elseif ($index === $currentStep) active @endif">
<div class="timeline-circle">
@if ($index < $currentStep)
@else
{{ $index + 1 }}
@endif
</div>
<div class="timeline-label">{{ $step['label'] }}</div>
</div>
@endforeach
</div>
</div>
<div class="content-grid">
<!-- Main Content -->
<div>
<!-- Order Status -->
<div class="card">
<h2>Order Status</h2>
<div class="card-section">
<span class="status-badge {{ $customOrder->status }}">
{{ str_replace('_', ' ', ucfirst($customOrder->status)) }}
</span>
<p style="margin-top: var(--spacing-sm); color: var(--text-secondary); font-size: 0.9rem;">
Submitted on {{ $customOrder->created_at->format('d M Y \a\t H:i') }}
</p>
</div>
</div>
<!-- Design Requirements -->
<div class="card">
<h2>Design Requirements</h2>
<div class="card-section">
<h3>Order Type</h3>
<p style="color: var(--text-secondary); text-transform: capitalize;">{{ $customOrder->type }}</p>
</div>
<div class="card-section">
<h3>Dimensions</h3>
@if ($customOrder->specifications)
<dl style="color: var(--text-secondary);">
@if ($customOrder->specifications->length)
<div class="spec-group">
<dt>Length:</dt>
<dd>{{ $customOrder->specifications->length }}m</dd>
</div>
@endif
@if ($customOrder->specifications->width)
<div class="spec-group">
<dt>Width:</dt>
<dd>{{ $customOrder->specifications->width }}m</dd>
</div>
@endif
@if ($customOrder->specifications->height)
<div class="spec-group">
<dt>Height:</dt>
<dd>{{ $customOrder->specifications->height }}m</dd>
</div>
@endif
<div class="spec-group">
<dt>Quantity:</dt>
<dd>{{ $customOrder->specifications->quantity }}</dd>
</div>
</dl>
@endif
</div>
<div class="card-section">
<h3>Print Material</h3>
@if ($customOrder->specifications->printStock)
<p style="color: var(--text-secondary);">{{ $customOrder->specifications->printStock->name }}</p>
@endif
</div>
<div class="card-section">
<h3>Design Brief</h3>
<p style="color: var(--text-secondary);">{{ $customOrder->customer_brief }}</p>
</div>
@if ($customOrder->specifications->special_instructions)
<div class="card-section">
<h3>Special Instructions</h3>
<p style="color: var(--text-secondary);">{{ $customOrder->specifications->special_instructions }}</p>
</div>
@endif
</div>
<!-- Reference Images -->
@if ($customOrder->files->count() > 0)
<div class="card">
<h2>Reference Images</h2>
<div class="image-gallery">
@foreach ($customOrder->files as $file)
<a href="{{ Storage::url($file->file_path) }}" target="_blank" title="{{ $file->original_filename }}">
<img src="{{ Storage::url($file->file_path) }}" alt="{{ $file->original_filename }}">
</a>
@endforeach
</div>
</div>
@endif
<!-- Design Proofs -->
@if ($customOrder->proofs->count() > 0)
<div class="card">
<h2>Design Proofs</h2>
@foreach ($customOrder->proofs as $proof)
<div class="proof-item {{ $proof->status === 'approved' ? 'approved' : '' }}">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: var(--spacing-sm);">
<h3>Proof {{ $loop->iteration }}</h3>
<span class="status-badge {{ $proof->status }}">
{{ ucfirst($proof->status) }}
</span>
</div>
@if ($proof->file_path)
<a href="{{ Storage::url($proof->file_path) }}" target="_blank" style="color: var(--accent-dark); text-decoration: underline; font-size: 0.9rem;">
View Proof File
</a>
@endif
@if ($proof->feedback)
<div style="margin-top: var(--spacing-sm); padding: var(--spacing-sm); background: white; border-radius: 4px; border-left: 3px solid var(--accent-dark);">
<strong style="color: var(--text-primary); font-size: 0.9rem;">Feedback:</strong>
<p style="color: var(--text-secondary); font-size: 0.85rem; margin: var(--spacing-xs) 0 0 0;">{{ $proof->feedback }}</p>
</div>
@endif
</div>
@endforeach
</div>
@endif
</div>
<!-- Sidebar -->
<div>
<!-- Cost & Payment Summary -->
<div class="card">
<h2>Order Summary</h2>
<!-- Cost Summary -->
<div class="payment-section">
<div class="payment-row">
<span>Design Fee:</span>
<span>R{{ number_format($customOrder->design_fee, 2) }}</span>
</div>
@if ($customOrder->material_cost > 0)
<div class="payment-row">
<span>Material Cost:</span>
<span>R{{ number_format($customOrder->material_cost, 2) }}</span>
</div>
@endif
<div class="payment-row total">
<span>Total:</span>
<span>R{{ number_format($customOrder->total_cost, 2) }}</span>
</div>
</div>
<!-- Payment Status -->
<h3 style="margin-top: var(--spacing-lg); margin-bottom: var(--spacing-md);">Payment Status</h3>
<div style="padding: var(--spacing-sm); background-color: var(--accent-light); border-radius: 20px; margin-bottom: var(--spacing-md);">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: var(--spacing-xs);">
<strong>Deposit (20%)</strong>
<span class="status-badge {{ $customOrder->deposit_status }}">{{ ucfirst($customOrder->deposit_status) }}</span>
</div>
<p style="color: var(--text-secondary); margin: 0; font-size: 0.9rem;">R{{ number_format($customOrder->deposit_amount, 2) }}</p>
</div>
<div style="padding: var(--spacing-sm); background-color: var(--accent-light); border-radius: 20px; margin-bottom: var(--spacing-lg);">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: var(--spacing-xs);">
<strong>Balance (80%)</strong>
<span class="status-badge {{ $customOrder->balance_status }}">{{ ucfirst($customOrder->balance_status) }}</span>
</div>
<p style="color: var(--text-secondary); margin: 0; font-size: 0.9rem;">R{{ number_format($customOrder->balance_amount, 2) }}</p>
</div>
<!-- Payment Buttons -->
@if ($customOrder->deposit_status !== 'paid')
<form method="POST" action="{{ route('yoco-custom-deposit') }}">
@csrf
<input type="hidden" name="custom_order_id" value="{{ $customOrder->id }}">
<button type="submit" class="btn">Pay Deposit (R{{ number_format($customOrder->deposit_amount, 2) }})</button>
</form>
@elseif ($customOrder->deposit_status === 'paid' && $customOrder->proofs->where('status', 'approved')->count() > 0 && $customOrder->balance_status !== 'paid')
<button class="btn" onclick="alert('Balance payment coming soon')">Pay Balance (R{{ number_format($customOrder->balance_amount, 2) }})</button>
@endif
</div>
<!-- Terms -->
<div class="terms-box">
<h3 style="color: var(--text-primary); margin-top: 0;">Payment Terms</h3>
<ul>
<li>The 20% deposit is non-refundable</li>
<li>Balance of 80% must be paid before printing begins</li>
@if ($customOrder->library_discount_applied)
<li>Design may be added to our library</li>
@else
<li>Bespoke, exclusive design</li>
@endif
</ul>
</div>
</div>
</div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const paymentForm = document.querySelector('form[action*="payment"]');
if (paymentForm) {
console.log('Payment form found:', paymentForm);
console.log('Form action:', paymentForm.action);
paymentForm.addEventListener('submit', function(e) {
console.log('Payment form submitted!');
console.log('Form data:', new FormData(this));
});
} else {
console.log('Payment form NOT found');
console.log('All forms on page:', document.querySelectorAll('form'));
}
});
</script>
@endsection
+1 -24
View File
@@ -68,29 +68,6 @@
gap: 0.5rem;
}
.status-badge {
display: inline-block;
padding: 0.4rem 1rem;
border-radius: 20px;
font-size: 0.9rem;
font-weight: 600;
}
.status-pending {
background-color: #fff3cd;
color: #856404;
}
.status-processing {
background-color: #cfe2ff;
color: #084298;
}
.status-completed {
background-color: #d1e7dd;
color: #0f5132;
}
.order-total {
text-align: right;
}
@@ -196,7 +173,7 @@
</div>
<div class="order-status">
<span class="status-badge status-{{ $order->status }}">
<span class="status-badge {{ $order->status }}">
{{ ucfirst($order->status) }}
</span>
</div>
+4 -4
View File
@@ -428,7 +428,7 @@
<!-- Print Stock Selection -->
<div class="quantity-selector" style="flex-direction: column; align-items: flex-start; gap: 0.5rem; margin-bottom: 2rem;">
<label for="print_stock_id" style="font-weight: 600;">Select Print Stock:</label>
<select id="print_stock_id" name="print_stock_id" required style="width: 100%; padding: 0.75rem; border: 1px solid #ddd; border-radius: 4px; font-size: 1rem;">
<select id="print_stock_id" name="print_stock_id" required style=" font-family: var(--font-sans); width: 100%; padding: 0.75rem; border: 1px solid #ddd; border-radius: 4px; font-size: 1rem;">
@foreach($product->printStocks as $stock)
<option value="{{ $stock->id }}"
data-cost="{{ $product->type === 'wallpaper' ? $stock->cost_per_meter : $stock->cost_per_m2 }}"
@@ -450,7 +450,7 @@
<div class="quantity-selector" style="flex-direction: column; align-items: flex-start; gap: 0.5rem;">
<label for="length">Length Required (meters):</label>
<input type="number" id="length" name="length" min="1" step="0.5" value="3" required style="width: 150px;">
<input type="number" id="length" name="length" min="1" step="0.5" value="3" required style="font-family: var(--font-sans); width: 150px;">
<small style="color: #666;">Recommended: Add 0.5m for pattern matching and trimming</small>
</div>
@elseif($product->type === 'mural')
@@ -540,12 +540,12 @@
<div class="calc-input-group">
<label for="calc-wall-width">Wall Width (meters):</label>
<input type="number" id="calc-wall-width" min="0.1" step="0.1" value="4" oninput="calculateWallpaper()">
<input style="font-family: var(--font-sans);" type="number" id="calc-wall-width" min="0.1" step="0.1" value="4" oninput="calculateWallpaper()">
</div>
<div class="calc-input-group">
<label for="calc-wall-height">Wall Height (meters):</label>
<input type="number" id="calc-wall-height" min="0.1" step="0.1" value="2.7" oninput="calculateWallpaper()">
<input style="font-family: var(--font-sans);" type="number" id="calc-wall-height" min="0.1" step="0.1" value="2.7" oninput="calculateWallpaper()">
</div>
<div class="calc-input-group">
+7
View File
@@ -0,0 +1,7 @@
<?php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\OrderController;
Route::post('/webhook', [OrderController::class, 'yocoWebhook'])->name('yoco-webhook');
+21 -1
View File
@@ -8,6 +8,7 @@ use App\Http\Controllers\FabricsController;
use App\Http\Controllers\ProductController;
use App\Http\Controllers\CartController;
use App\Http\Controllers\OrderController;
use App\Http\Controllers\Auth\GoogleAuthController;
Route::get('/', [HomeController::class, 'index'])->name('home');
Route::get('/wallpapers', [WallpapersController::class, 'index'])->name('wallpapers');
@@ -17,6 +18,12 @@ Route::get('/fabrics', [FabricsController::class, 'index'])->name('fabrics');
// Product routes
Route::get('/products/{product}', [ProductController::class, 'show'])->name('product-detail');
// Authentication routes
Route::get('/login', function () { return view('auth.login'); })->name('auth.login');
Route::get('/auth/google', [GoogleAuthController::class, 'redirect'])->name('auth.google');
Route::get('/auth/google/callback', [GoogleAuthController::class, 'callback'])->name('auth.google.callback');
Route::post('/logout', [GoogleAuthController::class, 'logout'])->name('logout');
// Cart routes
Route::get('/cart', [CartController::class, 'index'])->name('cart');
Route::post('/cart/add/{product}', [CartController::class, 'add'])->name('cart-add');
@@ -35,4 +42,17 @@ Route::get('/payment/yoco/{order:uuid}', [OrderController::class, 'yocoPayment']
Route::get('/payment/yoco/success/{order:uuid}', [OrderController::class, 'yocoSuccess'])->name('yoco-success');
Route::get('/payment/yoco/cancel/{order:uuid}', [OrderController::class, 'yocoCancel'])->name('yoco-cancel');
Route::get('/payment/yoco/failure/{order:uuid}', [OrderController::class, 'yocoFailure'])->name('yoco-failure');
Route::post('/webhooks/yoco', [OrderController::class, 'yocoWebhook'])->name('yoco-webhook');
// Protected routes - authenticated users only
Route::middleware('auth')->group(function () {
Route::get('/my-account', 'App\Http\Controllers\AccountController@show')->name('my-account');
Route::post('/my-account', 'App\Http\Controllers\AccountController@update')->name('my-account.update');
Route::get('/my-orders', 'App\Http\Controllers\AccountController@orders')->name('my-orders');
Route::get('/my-orders/{order:uuid}', 'App\Http\Controllers\AccountController@orderDetail')->name('my-orders.detail');
Route::get('/custom-orders/create', 'App\Http\Controllers\CustomOrderController@create')->name('custom-orders.create');
Route::post('/custom-orders', 'App\Http\Controllers\CustomOrderController@store')->name('custom-orders.store');
Route::get('/custom-orders/{customOrder:uuid}', 'App\Http\Controllers\CustomOrderController@show')->name('custom-orders.show');
Route::post('/payment/yoco/custom/deposit', 'App\Http\Controllers\CustomOrderController@depositPayment')->name('yoco-custom-deposit');
Route::get('/payment/yoco/custom/deposit/success/{customOrder:uuid}', 'App\Http\Controllers\CustomOrderController@depositSuccess')->name('yoco-custom-deposit-success');
});
@@ -1,91 +0,0 @@
<?php
use Illuminate\View\ComponentAttributeBag;
$fieldWrapperView = $getFieldWrapperView();
$statePath = $getStatePath();
$attributes = (new ComponentAttributeBag)
->merge([
'aria-checked' => 'false',
'autofocus' => $isAutofocused(),
'disabled' => $isDisabled(),
'id' => $getId(),
'offColor' => $getOffColor() ?? 'gray',
'offIcon' => $getOffIcon(),
'onColor' => $getOnColor() ?? 'primary',
'onIcon' => $getOnIcon(),
'state' => '$wire.' . $applyStateBindingModifiers('$entangle(\'' . $statePath . '\')'),
'wire:loading.attr' => 'disabled',
'wire:target' => $statePath,
], escape: false)
->merge($getExtraAttributes(), escape: false)
->merge($getExtraAlpineAttributes(), escape: false)
->class(['fi-fo-toggle']);
?>
<?php if (isset($component)) { $__componentOriginal511d4862ff04963c3c16115c05a86a9d = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal511d4862ff04963c3c16115c05a86a9d = $attributes; } ?>
<?php $component = Illuminate\View\DynamicComponent::resolve(['component' => $fieldWrapperView] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('dynamic-component'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\DynamicComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['field' => $field,'inline-label-vertical-alignment' => \Filament\Support\Enums\VerticalAlignment::Center]); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($isInline()): ?>
<?php $__env->slot('labelPrefix', null, []); ?>
<?php if (isset($component)) { $__componentOriginal36e35bdd70f75167ca3607ce632b2f1b = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal36e35bdd70f75167ca3607ce632b2f1b = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.toggle','data' => ['attributes' => \Filament\Support\prepare_inherited_attributes($attributes)]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::toggle'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\prepare_inherited_attributes($attributes))]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal36e35bdd70f75167ca3607ce632b2f1b)): ?>
<?php $attributes = $__attributesOriginal36e35bdd70f75167ca3607ce632b2f1b; ?>
<?php unset($__attributesOriginal36e35bdd70f75167ca3607ce632b2f1b); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal36e35bdd70f75167ca3607ce632b2f1b)): ?>
<?php $component = $__componentOriginal36e35bdd70f75167ca3607ce632b2f1b; ?>
<?php unset($__componentOriginal36e35bdd70f75167ca3607ce632b2f1b); ?>
<?php endif; ?>
<?php $__env->endSlot(); ?>
<?php else: ?>
<?php if (isset($component)) { $__componentOriginal36e35bdd70f75167ca3607ce632b2f1b = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal36e35bdd70f75167ca3607ce632b2f1b = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.toggle','data' => ['attributes' => \Filament\Support\prepare_inherited_attributes($attributes)]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::toggle'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\prepare_inherited_attributes($attributes))]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal36e35bdd70f75167ca3607ce632b2f1b)): ?>
<?php $attributes = $__attributesOriginal36e35bdd70f75167ca3607ce632b2f1b; ?>
<?php unset($__attributesOriginal36e35bdd70f75167ca3607ce632b2f1b); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal36e35bdd70f75167ca3607ce632b2f1b)): ?>
<?php $component = $__componentOriginal36e35bdd70f75167ca3607ce632b2f1b; ?>
<?php unset($__componentOriginal36e35bdd70f75167ca3607ce632b2f1b); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal511d4862ff04963c3c16115c05a86a9d)): ?>
<?php $attributes = $__attributesOriginal511d4862ff04963c3c16115c05a86a9d; ?>
<?php unset($__attributesOriginal511d4862ff04963c3c16115c05a86a9d); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal511d4862ff04963c3c16115c05a86a9d)): ?>
<?php $component = $__componentOriginal511d4862ff04963c3c16115c05a86a9d; ?>
<?php unset($__componentOriginal511d4862ff04963c3c16115c05a86a9d); ?>
<?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/forms/resources/views/components/toggle.blade.php ENDPATH**/ ?>
@@ -1,74 +0,0 @@
<?php
use Filament\Actions\View\ActionsRenderHook;
use Filament\Support\Facades\FilamentView;
$actionModalAlignment = $action->getModalAlignment();
$actionIsModalAutofocused = $action->isModalAutofocused();
$actionHasModalCloseButton = $action->hasModalCloseButton();
$actionIsModalClosedByClickingAway = $action->isModalClosedByClickingAway();
$actionIsModalClosedByEscaping = $action->isModalClosedByEscaping();
$actionModalDescription = $action->getModalDescription();
$actionExtraModalWindowAttributeBag = $action->getExtraModalWindowAttributeBag();
$actionModalFooterActions = $action->getVisibleModalFooterActions();
$actionModalFooterActionsAlignment = $action->getModalFooterActionsAlignment();
$actionModalHeading = $action->getModalHeading();
$actionModalIcon = $action->getModalIcon();
$actionModalIconColor = $action->getModalIconColor();
$actionModalId = "fi-{$this->getId()}-action-{$action->getNestingIndex()}";
$actionIsModalSlideOver = $action->isModalSlideOver();
$actionIsModalFooterSticky = $action->isModalFooterSticky();
$actionIsModalHeaderSticky = $action->isModalHeaderSticky();
$actionModalWidth = $action->getModalWidth();
$actionLivewireCallMountedActionName = $action->hasFormWrapper() ? $action->getLivewireCallMountedActionName() : null;
$actionModalWireKey = "{$this->getId()}.actions.{$action->getName()}.modal";
?>
<?php if (isset($component)) { $__componentOriginal0942a211c37469064369f887ae8d1cef = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal0942a211c37469064369f887ae8d1cef = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.modal.index','data' => ['alignment' => $actionModalAlignment,'autofocus' => $actionIsModalAutofocused,'closeButton' => $actionHasModalCloseButton,'closeByClickingAway' => $actionIsModalClosedByClickingAway,'closeByEscaping' => $actionIsModalClosedByEscaping,'description' => $actionModalDescription,'extraModalWindowAttributeBag' => $actionExtraModalWindowAttributeBag,'footerActions' => $actionModalFooterActions,'footerActionsAlignment' => $actionModalFooterActionsAlignment,'heading' => $actionModalHeading,'icon' => $actionModalIcon,'iconColor' => $actionModalIconColor,'id' => $actionModalId,'slideOver' => $actionIsModalSlideOver,'stickyFooter' => $actionIsModalFooterSticky,'stickyHeader' => $actionIsModalHeaderSticky,'width' => $actionModalWidth,'wire:key' => $actionModalWireKey,'wire:submit.prevent' => $actionLivewireCallMountedActionName,'xOn:modalClosed' => 'if ($event.detail.id === ' . \Illuminate\Support\Js::from($actionModalId) . ') $wire.unmountAction(false)']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::modal'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['alignment' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionModalAlignment),'autofocus' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionIsModalAutofocused),'close-button' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionHasModalCloseButton),'close-by-clicking-away' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionIsModalClosedByClickingAway),'close-by-escaping' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionIsModalClosedByEscaping),'description' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionModalDescription),'extra-modal-window-attribute-bag' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionExtraModalWindowAttributeBag),'footer-actions' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionModalFooterActions),'footer-actions-alignment' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionModalFooterActionsAlignment),'heading' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionModalHeading),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionModalIcon),'icon-color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionModalIconColor),'id' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionModalId),'slide-over' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionIsModalSlideOver),'sticky-footer' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionIsModalFooterSticky),'sticky-header' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionIsModalHeaderSticky),'width' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionModalWidth),'wire:key' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionModalWireKey),'wire:submit.prevent' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionLivewireCallMountedActionName),'x-on:modal-closed' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute('if ($event.detail.id === ' . \Illuminate\Support\Js::from($actionModalId) . ') $wire.unmountAction(false)')]); ?>
<?php echo e(FilamentView::renderHook(ActionsRenderHook::MODAL_CUSTOM_CONTENT_BEFORE, scopes: static::class, data: ['action' => $action])); ?>
<?php echo e($action->getModalContent()); ?>
<?php echo e(FilamentView::renderHook(ActionsRenderHook::MODAL_CUSTOM_CONTENT_AFTER, scopes: static::class, data: ['action' => $action])); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($this->mountedActionHasSchema(mountedAction: $action)): ?>
<?php echo e(FilamentView::renderHook(ActionsRenderHook::MODAL_SCHEMA_BEFORE, scopes: static::class, data: ['action' => $action])); ?>
<?php echo e($this->getMountedActionSchema(mountedAction: $action)); ?>
<?php echo e(FilamentView::renderHook(ActionsRenderHook::MODAL_SCHEMA_AFTER, scopes: static::class, data: ['action' => $action])); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e(FilamentView::renderHook(ActionsRenderHook::MODAL_CUSTOM_CONTENT_FOOTER_BEFORE, scopes: static::class, data: ['action' => $action])); ?>
<?php echo e($action->getModalContentFooter()); ?>
<?php echo e(FilamentView::renderHook(ActionsRenderHook::MODAL_CUSTOM_CONTENT_FOOTER_AFTER, scopes: static::class, data: ['action' => $action])); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal0942a211c37469064369f887ae8d1cef)): ?>
<?php $attributes = $__attributesOriginal0942a211c37469064369f887ae8d1cef; ?>
<?php unset($__attributesOriginal0942a211c37469064369f887ae8d1cef); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal0942a211c37469064369f887ae8d1cef)): ?>
<?php $component = $__componentOriginal0942a211c37469064369f887ae8d1cef; ?>
<?php unset($__componentOriginal0942a211c37469064369f887ae8d1cef); ?>
<?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/actions/resources/views/action-modal.blade.php ENDPATH**/ ?>
@@ -1,6 +0,0 @@
<?php extract((new \Illuminate\Support\Collection($attributes->getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
@props(['field','inlineLabelVerticalAlignment'])
<x-filament-forms::field-wrapper :field="$field" :inline-label-vertical-alignment="$inlineLabelVerticalAlignment" >
<x-slot name="labelPrefix" >{{ $labelPrefix }}</x-slot>
{{ $slot ?? "" }}
</x-filament-forms::field-wrapper>
@@ -1,23 +0,0 @@
<form
<?php echo e($attributes
->merge([
'id' => $getId(),
'wire:submit' => $getLivewireSubmitHandler(),
], escape: false)
->merge($getExtraAttributes(), escape: false)
->class([
'fi-sc-form',
'fi-dense' => $isDense(),
])); ?>
>
<?php echo e($getChildSchema($schemaComponent::HEADER_SCHEMA_KEY)); ?>
<?php echo e($getChildSchema()); ?>
<?php echo e($getChildSchema($schemaComponent::FOOTER_SCHEMA_KEY)); ?>
</form>
<?php /**PATH /var/www/additional_design/vendor/filament/schemas/resources/views/components/form.blade.php ENDPATH**/ ?>
@@ -1,79 +0,0 @@
<?php
use Filament\Support\Enums\VerticalAlignment;
$actions = $getChildSchema()->getComponents();
$alignment = $getAlignment();
$isFullWidth = $isFullWidth();
$isSticky = $isSticky();
$verticalAlignment = $getVerticalAlignment();
if (! $verticalAlignment instanceof VerticalAlignment) {
$verticalAlignment = filled($verticalAlignment) ? (VerticalAlignment::tryFrom($verticalAlignment) ?? $verticalAlignment) : null;
}
?>
<div
<?php if($isSticky): ?>
x-data="filamentActionsSchemaComponent()"
x-intersect:enter.half="disableSticky"
x-intersect:leave="enableSticky"
x-bind:class="{ 'fi-sticky': isSticky }"
<?php endif; ?>
<?php echo e($attributes
->merge([
'id' => $getId(),
], escape: false)
->merge($getExtraAttributes(), escape: false)
->class([
'fi-sc-actions',
($verticalAlignment instanceof VerticalAlignment) ? "fi-vertical-align-{$verticalAlignment->value}" : $verticalAlignment,
])); ?>
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($label = $getLabel())): ?>
<div class="fi-sc-actions-label-ctn">
<?php echo e($getChildSchema($schemaComponent::BEFORE_LABEL_SCHEMA_KEY)); ?>
<div class="fi-sc-actions-label">
<?php echo e($label); ?>
</div>
<?php echo e($getChildSchema($schemaComponent::AFTER_LABEL_SCHEMA_KEY)); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($aboveContentContainer = $getChildSchema($schemaComponent::ABOVE_CONTENT_SCHEMA_KEY)?->toHtmlString()): ?>
<?php echo e($aboveContentContainer); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if (isset($component)) { $__componentOriginal59d80b1aec4ae4c914a3e52dede19504 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal59d80b1aec4ae4c914a3e52dede19504 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.actions','data' => ['actions' => $actions,'alignment' => $alignment,'fullWidth' => $isFullWidth,'xBind:style' => $isSticky ? 'isSticky ? `width: ${width}px;` : \'\'' : null]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::actions'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['actions' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actions),'alignment' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($alignment),'full-width' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isFullWidth),'x-bind:style' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isSticky ? 'isSticky ? `width: ${width}px;` : \'\'' : null)]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal59d80b1aec4ae4c914a3e52dede19504)): ?>
<?php $attributes = $__attributesOriginal59d80b1aec4ae4c914a3e52dede19504; ?>
<?php unset($__attributesOriginal59d80b1aec4ae4c914a3e52dede19504); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal59d80b1aec4ae4c914a3e52dede19504)): ?>
<?php $component = $__componentOriginal59d80b1aec4ae4c914a3e52dede19504; ?>
<?php unset($__componentOriginal59d80b1aec4ae4c914a3e52dede19504); ?>
<?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($belowContentContainer = $getChildSchema($schemaComponent::BELOW_CONTENT_SCHEMA_KEY)?->toHtmlString()): ?>
<?php echo e($belowContentContainer); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/schemas/resources/views/components/actions.blade.php ENDPATH**/ ?>
@@ -1,49 +0,0 @@
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'circular' => true,
'size' => 'md',
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'circular' => true,
'size' => 'md',
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<img
<?php echo e($attributes
->class([
'fi-avatar',
'fi-circular' => $circular,
match ($size) {
'sm', 'md', 'lg' => "fi-size-{$size}",
default => $size,
},
])); ?>
/>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/avatar.blade.php ENDPATH**/ ?>
@@ -1,354 +0,0 @@
<?php
use Filament\Support\Enums\Alignment;
use Filament\Support\Enums\Width;
use Filament\Support\View\Components\ModalComponent\IconComponent;
use Illuminate\View\ComponentAttributeBag;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'alignment' => Alignment::Start,
'ariaLabelledby' => null,
'autofocus' => \Filament\Support\View\Components\ModalComponent::$isAutofocused,
'closeButton' => \Filament\Support\View\Components\ModalComponent::$hasCloseButton,
'closeByClickingAway' => \Filament\Support\View\Components\ModalComponent::$isClosedByClickingAway,
'closeByEscaping' => \Filament\Support\View\Components\ModalComponent::$isClosedByEscaping,
'closeEventName' => 'close-modal',
'closeQuietlyEventName' => 'close-modal-quietly',
'description' => null,
'extraModalWindowAttributeBag' => null,
'footer' => null,
'footerActions' => [],
'footerActionsAlignment' => Alignment::Start,
'header' => null,
'heading' => null,
'icon' => null,
'iconAlias' => null,
'iconColor' => 'primary',
'id' => null,
'openEventName' => 'open-modal',
'slideOver' => false,
'stickyFooter' => false,
'stickyHeader' => false,
'teleport' => null,
'trigger' => null,
'visible' => true,
'width' => 'sm',
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'alignment' => Alignment::Start,
'ariaLabelledby' => null,
'autofocus' => \Filament\Support\View\Components\ModalComponent::$isAutofocused,
'closeButton' => \Filament\Support\View\Components\ModalComponent::$hasCloseButton,
'closeByClickingAway' => \Filament\Support\View\Components\ModalComponent::$isClosedByClickingAway,
'closeByEscaping' => \Filament\Support\View\Components\ModalComponent::$isClosedByEscaping,
'closeEventName' => 'close-modal',
'closeQuietlyEventName' => 'close-modal-quietly',
'description' => null,
'extraModalWindowAttributeBag' => null,
'footer' => null,
'footerActions' => [],
'footerActionsAlignment' => Alignment::Start,
'header' => null,
'heading' => null,
'icon' => null,
'iconAlias' => null,
'iconColor' => 'primary',
'id' => null,
'openEventName' => 'open-modal',
'slideOver' => false,
'stickyFooter' => false,
'stickyHeader' => false,
'teleport' => null,
'trigger' => null,
'visible' => true,
'width' => 'sm',
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
$hasContent = ! \Filament\Support\is_slot_empty($slot);
$hasDescription = filled($description);
$hasFooter = (! \Filament\Support\is_slot_empty($footer)) || (is_array($footerActions) && count($footerActions)) || (! is_array($footerActions) && (! \Filament\Support\is_slot_empty($footerActions)));
$hasHeading = filled($heading);
$hasIcon = filled($icon);
if (! $alignment instanceof Alignment) {
$alignment = filled($alignment) ? (Alignment::tryFrom($alignment) ?? $alignment) : null;
}
if (! $footerActionsAlignment instanceof Alignment) {
$footerActionsAlignment = filled($footerActionsAlignment) ? (Alignment::tryFrom($footerActionsAlignment) ?? $footerActionsAlignment) : null;
}
if (is_string($width)) {
$width = Width::tryFrom($width) ?? $width;
}
$closeEventHandler = filled($id) ? '$dispatch(' . \Illuminate\Support\Js::from($closeEventName) . ', { id: ' . \Illuminate\Support\Js::from($id) . ' })' : 'close()';
$wireSubmitHandler = $attributes->get('wire:submit.prevent');
$attributes = $attributes->except(['wire:submit.prevent']);
?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($trigger): ?>
<?php echo '<div>'; ?>
<div
<?php if(! $trigger->attributes->get('disabled')): ?>
<?php if($id): ?>
x-on:click="$dispatch(<?php echo \Illuminate\Support\Js::from($openEventName)->toHtml() ?>, { id: <?php echo \Illuminate\Support\Js::from($id)->toHtml() ?> })"
<?php else: ?>
x-on:click="$el.nextElementSibling.dispatchEvent(new CustomEvent(<?php echo \Illuminate\Support\Js::from($openEventName)->toHtml() ?>))"
<?php endif; ?>
<?php endif; ?>
<?php echo e($trigger->attributes->except(['disabled'])->class(['fi-modal-trigger'])); ?>
>
<?php echo e($trigger); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($teleport)): ?>
<?php echo "<template x-teleport=\"{$teleport}\">"; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<div
<?php if($ariaLabelledby): ?>
aria-labelledby="<?php echo e($ariaLabelledby); ?>"
<?php elseif($heading): ?>
aria-labelledby="<?php echo e("{$id}.heading"); ?>"
<?php endif; ?>
aria-modal="true"
id="<?php echo e($id); ?>"
role="dialog"
x-data="filamentModal({
id: <?php echo \Illuminate\Support\Js::from($id)->toHtml() ?>,
})"
<?php if($id): ?>
data-fi-modal-id="<?php echo e($id); ?>"
x-on:<?php echo e($closeEventName); ?>.window="if (($event.detail.id === <?php echo \Illuminate\Support\Js::from($id)->toHtml() ?>) && isOpen) close()"
x-on:<?php echo e($closeQuietlyEventName); ?>.window="if (($event.detail.id === <?php echo \Illuminate\Support\Js::from($id)->toHtml() ?>) && isOpen) closeQuietly()"
x-on:<?php echo e($openEventName); ?>.window="if (($event.detail.id === <?php echo \Illuminate\Support\Js::from($id)->toHtml() ?>) && (! isOpen)) open()"
<?php else: ?>
x-on:<?php echo e($closeEventName); ?>.stop="if (isOpen) close()"
x-on:<?php echo e($closeQuietlyEventName); ?>.stop="if (isOpen) closeQuietly()"
x-on:<?php echo e($openEventName); ?>.stop="if (! isOpen) open()"
<?php endif; ?>
x-bind:class="{
'fi-modal-open': isOpen,
}"
x-cloak
x-show="isOpen"
x-trap.noscroll<?php echo e($autofocus ? '' : '.noautofocus'); ?>="isOpen"
<?php echo e($attributes->class([
'fi-modal',
'fi-absolute-positioning-context',
'fi-modal-slide-over' => $slideOver,
'fi-width-screen' => $width === Width::Screen,
])); ?>
>
<div
aria-hidden="true"
x-show="isOpen"
x-transition.duration.300ms.opacity
class="fi-modal-close-overlay"
></div>
<div
<?php if($closeByClickingAway): ?>
x-on:click.self="<?php echo e($closeEventHandler); ?>"
<?php endif; ?>
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-modal-window-ctn',
'fi-clickable' => $closeByClickingAway,
]); ?>"
>
<<?php echo e(filled($wireSubmitHandler) ? 'form' : 'div'); ?>
<?php if($closeByEscaping): ?>
x-on:keydown.window.escape="<?php echo e($closeEventHandler); ?>"
<?php endif; ?>
x-show="isWindowVisible"
x-transition:enter="fi-transition-enter"
x-transition:leave="fi-transition-leave"
<?php if($width !== Width::Screen): ?>
x-transition:enter-start="fi-transition-enter-start"
x-transition:enter-end="fi-transition-enter-end"
x-transition:leave-start="fi-transition-leave-start"
x-transition:leave-end="fi-transition-leave-end"
<?php endif; ?>
<?php if(filled($wireSubmitHandler)): ?>
wire:submit.prevent="<?php echo $wireSubmitHandler; ?>"
<?php endif; ?>
<?php if(filled($id)): ?>
wire:key="<?php echo e(isset($this) ? "{$this->getId()}." : ''); ?>modal.<?php echo e($id); ?>.window"
<?php endif; ?>
<?php echo e(($extraModalWindowAttributeBag ?? new \Illuminate\View\ComponentAttributeBag)->class([
'fi-modal-window',
'fi-modal-window-has-close-btn' => $closeButton,
'fi-modal-window-has-content' => $hasContent,
'fi-modal-window-has-footer' => $hasFooter,
'fi-modal-window-has-icon' => $hasIcon,
'fi-modal-window-has-sticky-header' => $stickyHeader,
'fi-hidden' => ! $visible,
($alignment instanceof Alignment) ? "fi-align-{$alignment->value}" : null,
($width instanceof Width) ? "fi-width-{$width->value}" : (is_string($width) ? $width : null),
])); ?>
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($heading || $header): ?>
<div
<?php if(filled($id)): ?>
wire:key="<?php echo e(isset($this) ? "{$this->getId()}." : ''); ?>modal.<?php echo e($id); ?>.header"
<?php endif; ?>
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-modal-header',
'fi-sticky' => $stickyHeader,
'fi-vertical-align-center' => $hasIcon && $hasHeading && (! $hasDescription) && in_array($alignment, [Alignment::Start, Alignment::Left]),
]); ?>"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($closeButton): ?>
<?php if (isset($component)) { $__componentOriginalf0029cce6d19fd6d472097ff06a800a1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.icon-button','data' => ['color' => 'gray','icon' => \Filament\Support\Icons\Heroicon::OutlinedXMark,'iconAlias' => \Filament\Support\View\SupportIconAlias::MODAL_CLOSE_BUTTON,'iconSize' => 'lg','label' => __('filament::components/modal.actions.close.label'),'tabindex' => '-1','xOn:click' => $closeEventHandler,'class' => 'fi-modal-close-btn']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::icon-button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'gray','icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::OutlinedXMark),'icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\View\SupportIconAlias::MODAL_CLOSE_BUTTON),'icon-size' => 'lg','label' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(__('filament::components/modal.actions.close.label')),'tabindex' => '-1','x-on:click' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($closeEventHandler),'class' => 'fi-modal-close-btn']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $attributes = $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $component = $__componentOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($header): ?>
<?php echo e($header); ?>
<?php else: ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasIcon): ?>
<div class="fi-modal-icon-ctn">
<div
<?php echo e((new ComponentAttributeBag)->color(IconComponent::class, $iconColor)->class(['fi-modal-icon-bg'])); ?>
>
<?php echo e(\Filament\Support\generate_icon_html($icon, $iconAlias, size: \Filament\Support\Enums\IconSize::Large)); ?>
</div>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<div>
<h2 class="fi-modal-heading">
<?php echo e($heading); ?>
</h2>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasDescription): ?>
<p class="fi-modal-description">
<?php echo e($description); ?>
</p>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasContent): ?>
<div
<?php if(filled($id)): ?>
wire:key="<?php echo e(isset($this) ? "{$this->getId()}." : ''); ?>modal.<?php echo e($id); ?>.content"
<?php endif; ?>
class="fi-modal-content"
>
<?php echo e($slot); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasFooter): ?>
<div
<?php if(filled($id)): ?>
wire:key="<?php echo e(isset($this) ? "{$this->getId()}." : ''); ?>modal.<?php echo e($id); ?>.footer"
<?php endif; ?>
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-modal-footer',
'fi-sticky' => $stickyFooter,
($footerActionsAlignment instanceof Alignment) ? "fi-align-{$footerActionsAlignment->value}" : null,
]); ?>"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(! \Filament\Support\is_slot_empty($footer)): ?>
<?php echo e($footer); ?>
<?php else: ?>
<div class="fi-modal-footer-actions">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(is_array($footerActions)): ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $footerActions; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $action): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php echo e($action); ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php else: ?>
<?php echo e($footerActions); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</<?php echo e(filled($wireSubmitHandler) ? 'form' : 'div'); ?>>
</div>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($teleport)): ?>
<?php echo '</template>'; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($trigger): ?>
<?php echo '</div>'; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/modal/index.blade.php ENDPATH**/ ?>
@@ -0,0 +1,424 @@
<?php $__env->startSection('title', 'Order #' . $order->order_number . ' - Order Details'); ?>
<?php $__env->startSection('styles'); ?>
<style>
/* Page-specific typography overrides */
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.6rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
h3 {
font-family: var(--font-sans);
font-size: 1.1rem;
font-weight: 600;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.page-intro {
margin-bottom: var(--spacing-lg);
}
.page-intro p {
color: var(--text-secondary);
font-size: 1rem;
}
/* Card styles */
.card {
padding: var(--spacing-lg);
margin-bottom: var(--spacing-lg);
}
.card:hover {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.card-section {
margin-bottom: var(--spacing-lg);
padding-bottom: var(--spacing-lg);
border-bottom: 1px solid var(--border-color);
}
.card-section:last-child {
border-bottom: none;
margin-bottom: 0;
padding-bottom: 0;
}
.content-grid {
display: grid;
grid-template-columns: 2fr 1fr;
gap: var(--spacing-lg);
}
/* Order items styling */
.order-item {
padding: var(--spacing-md);
background-color: white;
border-radius: 20px;
margin-bottom: var(--spacing-md);
border: 1px solid var(--border-color);
transition: var(--transition);
}
.order-item:hover {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.item-header {
display: flex;
justify-content: space-between;
align-items: flex-start;
margin-bottom: var(--spacing-sm);
}
.item-name {
font-weight: 600;
color: var(--text-primary);
font-size: 1rem;
}
.item-price {
font-weight: 700;
color: var(--accent-dark);
font-size: 1.1rem;
}
.item-meta {
color: var(--text-secondary);
font-size: 0.9rem;
}
/* Payment action styling */
.payment-action-box {
padding: var(--spacing-lg);
border-radius: 20px;
margin-top: var(--spacing-lg);
display: flex;
justify-content: space-between;
align-items: center;
gap: var(--spacing-lg);
}
.payment-action-box.pending {
background-color: var(--accent-light);
border: 2px solid var(--accent-dark);
}
.payment-action-box.failed {
background-color: var(--accent-light);
border: 2px solid var(--accent-dark);
}
.payment-action-box.success {
background-color: var(--accent-light);
border: 2px solid var(--accent-dark);
}
.payment-amount {
text-align: right;
}
.payment-amount-label {
color: var(--text-secondary);
font-size: 0.9rem;
margin-bottom: 0.5rem;
}
.payment-amount-value {
font-size: 2rem;
font-weight: 700;
color: var(--accent-dark);
}
.pending .payment-amount-value {
color: var(--accent-dark);
}
.failed .payment-amount-value {
color: var(--accent-dark);
}
.success .payment-amount-value {
color: var(--accent-dark);
}
.btn {
display: inline-block;
padding: 1rem 2rem;
background-color: var(--accent-dark);
color: white;
text-decoration: none;
border-radius: 20px;
font-weight: 600;
transition: var(--transition);
border: none;
cursor: pointer;
font-size: 1rem;
}
.btn:hover {
background-color: var(--accent-pink);
transform: translateY(-2px);
}
.btn-pending {var(--accent-dark);
color: white;
}
.btn-failed {
background-color: var(--accent-dark)
background-color: #dc3545;
color: white;
}
.success-check {
font-sivar(--accent-dark)m;
color: #28a745;
}
.status-badge {
display: inline-block;
padding: 0.4rem 0.8rem;
border-radius: 20px;
font-size: 0.85rem;
font-weight: 600;
text-transform: capitalize;
}
.status-badge.paid {var(--accent-light);
color: var(--accent-dark);
}
.status-badge.pending {
background-color: var(--accent-light);
color: var(--accent-dark);
}
.status-badge.failed {
background-color: var(--accent-light);
color: var(--accent-dark);
}
.status-badge.processing {
background-color: var(--accent-light);
color: var(--accent-dark);
}
.status-badge.shipped {
background-color: var(--accent-light);
color: var(--accent-dark);
}
.status-badge.delivered {
background-color: var(--accent-light);
color: var(--accent-dark)or: #d4edda;
color: #155724;
}
@media (max-width: 768px) {
.content-grid {
grid-template-columns: 1fr;
}
h1 {
font-size: 1.8rem;
}
.payment-action-box {
flex-direction: column;
align-items: flex-start;
}
.payment-amount {
text-align: left;
}
}
</style>
<?php $__env->stopSection(); ?>
<?php $__env->startSection('content'); ?>
<div class="container">
<div class="page-intro">
<h1>Order Details</h1>
<p>Order #<?php echo e($order->order_number); ?></p>
</div>
<div class="content-grid">
<!-- Main Content -->
<div>
<!-- Order Status -->
<div class="card">
<h2>Order Status</h2>
<div class="card-section">
<span class="status-badge <?php echo e($order->status); ?>">
<?php echo e(str_replace('_', ' ', ucfirst($order->status))); ?>
</span>
<p style="margin-top: var(--spacing-sm); color: var(--text-secondary); font-size: 0.9rem;">
Ordered on <?php echo e($order->created_at->format('d M Y \a\t H:i')); ?>
</p>
</div>
</div>
<!-- Order Items -->
<div class="card">
<h2>Order Items</h2>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $order->items; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<div class="order-item">
<div class="item-header">
<div>
<div class="item-name"><?php echo e($item->product->name); ?></div>
<div class="item-meta"><?php echo e($item->type); ?></div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($item->length): ?>
<div class="item-meta">Length: <?php echo e($item->length); ?>m</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($item->width && $item->height): ?>
<div class="item-meta">Dimensions: <?php echo e($item->width); ?>m × <?php echo e($item->height); ?>m</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div>
<div class="item-price">R <?php echo e(number_format($item->price, 2)); ?></div>
<div class="item-meta" style="text-align: right;">Qty: <?php echo e($item->quantity); ?></div>
</div>
</div>
</div>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<!-- Shipping Details -->
<div class="card">
<h2>Delivery Details</h2>
<div class="card-section">
<h3>Customer Information</h3>
<dl style="color: var(--text-secondary);">
<div class="spec-group">
<dt>Name:</dt>
<dd><?php echo e($order->customer_name); ?></dd>
</div>
<div class="spec-group">
<dt>Email:</dt>
<dd><?php echo e($order->customer_email); ?></dd>
</div>
<div class="spec-group">
<dt>Phone:</dt>
<dd><?php echo e($order->customer_phone); ?></dd>
</div>
</dl>
</div>
<div class="card-section">
<h3>Shipping Address</h3>
<p style="color: var(--text-secondary); line-height: 1.6;"><?php echo e($order->shipping_address); ?></p>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($order->notes): ?>
<div class="card-section">
<h3>Order Notes</h3>
<p style="color: var(--text-secondary);"><?php echo e($order->notes); ?></p>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
</div>
<!-- Sidebar -->
<div>
<!-- Order Summary & Payment -->
<div class="card">
<h2>Order Summary</h2>
<div class="card-section">
<div class="payment-row" style="display: flex; justify-content: space-between; margin-bottom: var(--spacing-sm); color: var(--text-secondary);">
<span>Subtotal:</span>
<span>R <?php echo e(number_format($order->total, 2)); ?></span>
</div>
<div class="payment-row total" style="display: flex; justify-content: space-between; border-top: 2px solid var(--border-color); padding-top: var(--spacing-md); font-weight: 700; font-size: 1.2rem;">
<span>Total:</span>
<span>R <?php echo e(number_format($order->total, 2)); ?></span>
</div>
</div>
<h3 style="margin-top: var(--spacing-lg); margin-bottom: var(--spacing-md);">Payment Status</h3>
<div style="padding: var(--spacing-sm); background-color: var(--accent-light); border-radius: 20px; margin-bottom: var(--spacing-lg);">
<div style="display: flex; justify-content: space-between; align-items: center;">
<strong>Payment</strong>
<span class="status-badge <?php echo e($order->payment_status); ?>"><?php echo e(ucfirst($order->payment_status)); ?></span>
</div>
</div>
<!-- Payment Actions -->
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($order->payment_status === 'pending' && $order->yoco_redirect_url): ?>
<div class="payment-action-box pending">
<div>
<h3 style="margin-top: 0; color: var(--accent-dark);">Payment Required</h3>
<p style="color: var(--accent-dark); margin: var(--spacing-sm) 0 0 0;">Click below to complete your payment.</p>
<a href="<?php echo e($order->yoco_redirect_url); ?>"
target="_blank"
class="btn btn-pending"
style="margin-top: var(--spacing-md);">
Pay Now
</a>
</div>
<div class="payment-amount">
<div class="payment-amount-label">Amount Due</div>
<div class="payment-amount-value">R <?php echo e(number_format($order->total, 2)); ?></div>
</div>
</div>
<?php elseif($order->payment_status === 'failed' && $order->yoco_redirect_url): ?>
<div class="payment-action-box failed">
<div>
<h3 style="margin-top: 0; color: var(--accent-dark);">Payment Failed</h3>
<p style="color: var(--accent-dark); margin: var(--spacing-sm) 0 0 0;">Please try your payment again.</p>
<a href="<?php echo e($order->yoco_redirect_url); ?>"
target="_blank"
class="btn btn-failed"
style="margin-top: var(--spacing-md);">
Retry Payment
</a>
</div>
<div class="payment-amount">
<div class="payment-amount-label">Amount Due</div>
<div class="payment-amount-value">R <?php echo e(number_format($order->total, 2)); ?></div>
</div>
</div>
<?php elseif($order->payment_status === 'paid'): ?>
<div class="payment-action-box success">
<div style="display: flex; gap: var(--spacing-md); align-items: flex-start;">
<div class="success-check"></div>
<div>
<h3 style="margin-top: 0; color: var(--accent-dark);">Payment Received</h3>
<p style="color: var(--accent-dark); margin: var(--spacing-sm) 0 0 0; font-size: 0.9rem;">Thank you! Your order is being processed.</p>
</div>
</div>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<!-- Back Link -->
<div style="text-align: center; margin-top: var(--spacing-lg);">
<a href="<?php echo e(route('my-orders')); ?>" style="color: var(--accent-dark); text-decoration: none; font-weight: 600;">
Back to Orders
</a>
</div>
</div>
</div>
</div>
<?php $__env->stopSection(); ?>
<?php echo $__env->make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?><?php /**PATH /var/www/additional_design/resources/views/account/order-detail.blade.php ENDPATH**/ ?>
@@ -1,46 +0,0 @@
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'columnSpan' => [],
'columnStart' => [],
'height' => null,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'columnSpan' => [],
'columnStart' => [],
'height' => null,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<div
<?php echo e(($attributes ?? new \Illuminate\View\ComponentAttributeBag)
->gridColumn($columnSpan, $columnStart)
->class(['fi-section fi-loading-section'])
->style(['height: ' . ($height ?? '8rem')])); ?>
></div>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/loading-section.blade.php ENDPATH**/ ?>
@@ -1,147 +0,0 @@
<?php
use Filament\Support\Enums\Width;
$livewire ??= null;
$renderHookScopes = $livewire?->getRenderHookScopes();
$maxContentWidth ??= (filament()->getSimplePageMaxContentWidth() ?? Width::Large);
if (is_string($maxContentWidth)) {
$maxContentWidth = Width::tryFrom($maxContentWidth) ?? $maxContentWidth;
}
?>
<?php if (isset($component)) { $__componentOriginale960ae7ad1b1ce9e3596e483505fadc9 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginale960ae7ad1b1ce9e3596e483505fadc9 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.layout.base','data' => ['livewire' => $livewire]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::layout.base'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['livewire' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($livewire)]); ?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'after' => null,
'heading' => null,
'subheading' => null,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'after' => null,
'heading' => null,
'subheading' => null,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<div class="fi-simple-layout">
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SIMPLE_LAYOUT_START, scopes: $renderHookScopes)); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(($hasTopbar ?? true) && filament()->auth()->check()): ?>
<div class="fi-simple-layout-header">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filament()->hasDatabaseNotifications()): ?>
<?php
$__split = function ($name, $params = []) {
return [$name, $params];
};
[$__name, $__params] = $__split(Filament\Livewire\DatabaseNotifications::class, [
'lazy' => filament()->hasLazyLoadedDatabaseNotifications(),
'position' => \Filament\Enums\DatabaseNotificationsPosition::Topbar,
]);
$key = null;
$key ??= \Livewire\Features\SupportCompiledWireKeys\SupportCompiledWireKeys::generateKey('lw-3844726845-0', null);
$__html = app('livewire')->mount($__name, $__params, $key);
echo $__html;
unset($__html);
unset($__name);
unset($__params);
unset($__split);
if (isset($__slots)) unset($__slots);
?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(filament()->hasUserMenu()): ?>
<?php
$__split = function ($name, $params = []) {
return [$name, $params];
};
[$__name, $__params] = $__split(Filament\Livewire\SimpleUserMenu::class);
$key = null;
$key ??= \Livewire\Features\SupportCompiledWireKeys\SupportCompiledWireKeys::generateKey('lw-3844726845-1', null);
$__html = app('livewire')->mount($__name, $__params, $key);
echo $__html;
unset($__html);
unset($__name);
unset($__params);
unset($__split);
if (isset($__slots)) unset($__slots);
?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<div class="fi-simple-main-ctn">
<main
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-simple-main',
($maxContentWidth instanceof Width) ? "fi-width-{$maxContentWidth->value}" : $maxContentWidth,
]); ?>"
>
<?php echo e($slot); ?>
</main>
</div>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::FOOTER, scopes: $renderHookScopes)); ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SIMPLE_LAYOUT_END, scopes: $renderHookScopes)); ?>
</div>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginale960ae7ad1b1ce9e3596e483505fadc9)): ?>
<?php $attributes = $__attributesOriginale960ae7ad1b1ce9e3596e483505fadc9; ?>
<?php unset($__attributesOriginale960ae7ad1b1ce9e3596e483505fadc9); ?>
<?php endif; ?>
<?php if (isset($__componentOriginale960ae7ad1b1ce9e3596e483505fadc9)): ?>
<?php $component = $__componentOriginale960ae7ad1b1ce9e3596e483505fadc9; ?>
<?php unset($__componentOriginale960ae7ad1b1ce9e3596e483505fadc9); ?>
<?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/components/layout/simple.blade.php ENDPATH**/ ?>
@@ -1,53 +0,0 @@
<?php extract((new \Illuminate\Support\Collection($attributes->getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames((['field','labelTag']));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter((['field','labelTag']), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php if (isset($component)) { $__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-forms::components.field-wrapper','data' => ['field' => $field,'labelTag' => $labelTag]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-forms::field-wrapper'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['field' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($field),'label-tag' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($labelTag)]); ?>
<?php echo e($slot ?? ""); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28)): ?>
<?php $attributes = $__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28; ?>
<?php unset($__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28); ?>
<?php endif; ?>
<?php if (isset($__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28)): ?>
<?php $component = $__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28; ?>
<?php unset($__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28); ?>
<?php endif; ?><?php /**PATH /var/www/additional_design/storage/framework/views/723528cd4a5a6edc2403dddc15fad8ce.blade.php ENDPATH**/ ?>
@@ -1,5 +0,0 @@
<div <?php echo e($attributes->class(['fi-dropdown-list'])); ?>>
<?php echo e($slot); ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/dropdown/list/index.blade.php ENDPATH**/ ?>
@@ -1,17 +0,0 @@
<?php $layout->viewContext->mergeIntoNewEnvironment($__env); ?>
<?php $__env->startComponent($layout->view, $layout->params); ?>
<?php $__env->slot($layout->slotOrSection); ?>
<?php echo $content; ?>
<?php $__env->endSlot(); ?>
<?php
// Manually forward slots defined in the Livewire template into the layout component...
foreach ($layout->viewContext->slots[-1] ?? [] as $name => $slot) {
$__env->slot($name, attributes: $slot->attributes->getAttributes());
echo $slot->toHtml();
$__env->endSlot();
}
?>
<?php echo $__env->renderComponent(); ?><?php /**PATH /var/www/additional_design/storage/framework/views/f7c29b22c1a51c7cd7168f60bd430f61.blade.php ENDPATH**/ ?>
@@ -1,135 +0,0 @@
<?php
use Filament\Forms\Components\TextInput\Actions\HidePasswordAction;
use Filament\Forms\Components\TextInput\Actions\ShowPasswordAction;
$fieldWrapperView = $getFieldWrapperView();
$datalistOptions = $getDatalistOptions();
$extraAlpineAttributes = $getExtraAlpineAttributes();
$extraAttributeBag = $getExtraAttributeBag();
$id = $getId();
$isConcealed = $isConcealed();
$isDisabled = $isDisabled();
$isPasswordRevealable = $isPasswordRevealable();
$isPrefixInline = $isPrefixInline();
$isSuffixInline = $isSuffixInline();
$mask = $getMask();
$prefixActions = $getPrefixActions();
$prefixIcon = $getPrefixIcon();
$prefixIconColor = $getPrefixIconColor();
$prefixLabel = $getPrefixLabel();
$suffixActions = $getSuffixActions();
$suffixIcon = $getSuffixIcon();
$suffixIconColor = $getSuffixIconColor();
$suffixLabel = $getSuffixLabel();
$statePath = $getStatePath();
$placeholder = $getPlaceholder();
if ($isPasswordRevealable) {
$xData = '{ isPasswordRevealed: false }';
} elseif (count($extraAlpineAttributes) || filled($mask)) {
$xData = '{}';
} else {
$xData = null;
}
if ($isPasswordRevealable) {
$type = null;
} elseif (filled($mask)) {
$type = 'text';
} else {
$type = $getType();
}
$inputAttributes = $getExtraInputAttributeBag()
->merge($extraAlpineAttributes, escape: false)
->merge([
'autocapitalize' => $getAutocapitalize(),
'autocomplete' => $getAutocomplete(),
'autofocus' => $isAutofocused(),
'disabled' => $isDisabled,
'id' => $id,
'inlinePrefix' => $isPrefixInline && (count($prefixActions) || $prefixIcon || filled($prefixLabel)),
'inlineSuffix' => $isSuffixInline && (count($suffixActions) || $suffixIcon || filled($suffixLabel)),
'inputmode' => $getInputMode(),
'list' => $datalistOptions ? $id . '-list' : null,
'max' => (! $isConcealed) ? $getMaxValue() : null,
'maxlength' => (! $isConcealed) ? $getMaxLength() : null,
'min' => (! $isConcealed) ? $getMinValue() : null,
'minlength' => (! $isConcealed) ? $getMinLength() : null,
'placeholder' => filled($placeholder) ? e($placeholder) : null,
'readonly' => $isReadOnly(),
'required' => $isRequired() && (! $isConcealed),
'step' => $getStep(),
'type' => $type,
$applyStateBindingModifiers('wire:model') => $statePath,
'x-bind:type' => $isPasswordRevealable ? 'isPasswordRevealed ? \'text\' : \'password\'' : null,
'x-mask' . ($mask instanceof \Filament\Support\RawJs ? ':dynamic' : '') => filled($mask) ? $mask : null,
], escape: false)
->class([
'fi-revealable' => $isPasswordRevealable,
]);
?>
<?php if (isset($component)) { $__componentOriginal511d4862ff04963c3c16115c05a86a9d = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal511d4862ff04963c3c16115c05a86a9d = $attributes; } ?>
<?php $component = Illuminate\View\DynamicComponent::resolve(['component' => $fieldWrapperView] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('dynamic-component'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\DynamicComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['field' => $field,'inline-label-vertical-alignment' => \Filament\Support\Enums\VerticalAlignment::Center]); ?>
<?php if (isset($component)) { $__componentOriginal505efd9768415fdb4543e8c564dad437 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal505efd9768415fdb4543e8c564dad437 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.input.wrapper','data' => ['disabled' => $isDisabled,'inlinePrefix' => $isPrefixInline,'inlineSuffix' => $isSuffixInline,'prefix' => $prefixLabel,'prefixActions' => $prefixActions,'prefixIcon' => $prefixIcon,'prefixIconColor' => $prefixIconColor,'suffix' => $suffixLabel,'suffixActions' => $suffixActions,'suffixIcon' => $suffixIcon,'suffixIconColor' => $suffixIconColor,'valid' => ! $errors->has($statePath),'xData' => $xData,'attributes' =>
\Filament\Support\prepare_inherited_attributes($extraAttributeBag)
->class(['fi-fo-text-input'])
]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::input.wrapper'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['disabled' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isDisabled),'inline-prefix' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isPrefixInline),'inline-suffix' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isSuffixInline),'prefix' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($prefixLabel),'prefix-actions' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($prefixActions),'prefix-icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($prefixIcon),'prefix-icon-color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($prefixIconColor),'suffix' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($suffixLabel),'suffix-actions' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($suffixActions),'suffix-icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($suffixIcon),'suffix-icon-color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($suffixIconColor),'valid' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(! $errors->has($statePath)),'x-data' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($xData),'attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
\Filament\Support\prepare_inherited_attributes($extraAttributeBag)
->class(['fi-fo-text-input'])
)]); ?>
<input
<?php echo e($inputAttributes->class([
'fi-input',
'fi-input-has-inline-prefix' => $isPrefixInline && (count($prefixActions) || $prefixIcon || filled($prefixLabel)),
'fi-input-has-inline-suffix' => $isSuffixInline && (count($suffixActions) || $suffixIcon || filled($suffixLabel)),
])); ?>
/>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal505efd9768415fdb4543e8c564dad437)): ?>
<?php $attributes = $__attributesOriginal505efd9768415fdb4543e8c564dad437; ?>
<?php unset($__attributesOriginal505efd9768415fdb4543e8c564dad437); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal505efd9768415fdb4543e8c564dad437)): ?>
<?php $component = $__componentOriginal505efd9768415fdb4543e8c564dad437; ?>
<?php unset($__componentOriginal505efd9768415fdb4543e8c564dad437); ?>
<?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($datalistOptions): ?>
<datalist id="<?php echo e($id); ?>-list">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $datalistOptions; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $option): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<option value="<?php echo e($option); ?>"></option>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</datalist>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal511d4862ff04963c3c16115c05a86a9d)): ?>
<?php $attributes = $__attributesOriginal511d4862ff04963c3c16115c05a86a9d; ?>
<?php unset($__attributesOriginal511d4862ff04963c3c16115c05a86a9d); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal511d4862ff04963c3c16115c05a86a9d)): ?>
<?php $component = $__componentOriginal511d4862ff04963c3c16115c05a86a9d; ?>
<?php unset($__componentOriginal511d4862ff04963c3c16115c05a86a9d); ?>
<?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/forms/resources/views/components/text-input.blade.php ENDPATH**/ ?>
@@ -1,124 +0,0 @@
<?php
use Illuminate\View\ComponentAttributeBag;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'debounce' => '500ms',
'onBlur' => false,
'placeholder' => __('filament-tables::table.fields.search.placeholder'),
'wireModel' => 'tableSearch',
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'debounce' => '500ms',
'onBlur' => false,
'placeholder' => __('filament-tables::table.fields.search.placeholder'),
'wireModel' => 'tableSearch',
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
$wireModelAttribute = $onBlur ? 'wire:model.blur' : "wire:model.live.debounce.{$debounce}";
?>
<div
x-id="['input']"
<?php echo e($attributes->class(['fi-ta-search-field'])); ?>
>
<label x-bind:for="$id('input')" class="fi-sr-only">
<?php echo e(__('filament-tables::table.fields.search.label')); ?>
</label>
<?php if (isset($component)) { $__componentOriginal505efd9768415fdb4543e8c564dad437 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal505efd9768415fdb4543e8c564dad437 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.input.wrapper','data' => ['inlinePrefix' => true,'prefixIcon' => \Filament\Support\Icons\Heroicon::MagnifyingGlass,'prefixIconAlias' => \Filament\Tables\View\TablesIconAlias::SEARCH_FIELD,'wire:target' => $wireModel]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::input.wrapper'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['inline-prefix' => true,'prefix-icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::MagnifyingGlass),'prefix-icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Tables\View\TablesIconAlias::SEARCH_FIELD),'wire:target' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($wireModel)]); ?>
<?php if (isset($component)) { $__componentOriginal9ad6b66c56a2379ee0ba04e1e358c61e = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal9ad6b66c56a2379ee0ba04e1e358c61e = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.input.index','data' => ['attributes' =>
(new ComponentAttributeBag)->merge([
'autocomplete' => 'off',
'inlinePrefix' => true,
'maxlength' => 1000,
'placeholder' => $placeholder,
'type' => 'search',
'wire:key' => $this->getId() . '.table.' . $wireModel . '.field.input',
$wireModelAttribute => $wireModel,
'x-bind:id' => '$id(\'input\')',
'x-on:keyup' => 'if ($event.key === \'Enter\') { $wire.$refresh() }',
], escape: false)
]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::input'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
(new ComponentAttributeBag)->merge([
'autocomplete' => 'off',
'inlinePrefix' => true,
'maxlength' => 1000,
'placeholder' => $placeholder,
'type' => 'search',
'wire:key' => $this->getId() . '.table.' . $wireModel . '.field.input',
$wireModelAttribute => $wireModel,
'x-bind:id' => '$id(\'input\')',
'x-on:keyup' => 'if ($event.key === \'Enter\') { $wire.$refresh() }',
], escape: false)
)]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal9ad6b66c56a2379ee0ba04e1e358c61e)): ?>
<?php $attributes = $__attributesOriginal9ad6b66c56a2379ee0ba04e1e358c61e; ?>
<?php unset($__attributesOriginal9ad6b66c56a2379ee0ba04e1e358c61e); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal9ad6b66c56a2379ee0ba04e1e358c61e)): ?>
<?php $component = $__componentOriginal9ad6b66c56a2379ee0ba04e1e358c61e; ?>
<?php unset($__componentOriginal9ad6b66c56a2379ee0ba04e1e358c61e); ?>
<?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal505efd9768415fdb4543e8c564dad437)): ?>
<?php $attributes = $__attributesOriginal505efd9768415fdb4543e8c564dad437; ?>
<?php unset($__attributesOriginal505efd9768415fdb4543e8c564dad437); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal505efd9768415fdb4543e8c564dad437)): ?>
<?php $component = $__componentOriginal505efd9768415fdb4543e8c564dad437; ?>
<?php unset($__componentOriginal505efd9768415fdb4543e8c564dad437); ?>
<?php endif; ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/tables/resources/views/components/search-field.blade.php ENDPATH**/ ?>
@@ -1,76 +0,0 @@
<?php
use Illuminate\View\ComponentAttributeBag;
use function Filament\Support\generate_icon_html;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'breadcrumbs' => [],
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'breadcrumbs' => [],
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<nav <?php echo e($attributes->class(['fi-breadcrumbs'])); ?>>
<ol class="fi-breadcrumbs-list">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $breadcrumbs; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $url => $label): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<li class="fi-breadcrumbs-item">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(! $loop->first): ?>
<?php echo e(generate_icon_html(\Filament\Support\Icons\Heroicon::ChevronRight, alias: \Filament\Support\View\SupportIconAlias::BREADCRUMBS_SEPARATOR, attributes: (new ComponentAttributeBag)->class([
'fi-breadcrumbs-item-separator fi-ltr',
]))); ?>
<?php echo e(generate_icon_html(\Filament\Support\Icons\Heroicon::ChevronLeft, alias: \Filament\Support\View\SupportIconAlias::BREADCRUMBS_SEPARATOR_RTL, attributes: (new ComponentAttributeBag)->class([
'fi-breadcrumbs-item-separator fi-rtl',
]))); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(is_int($url)): ?>
<span class="fi-breadcrumbs-item-label">
<?php echo e($label); ?>
</span>
<?php else: ?>
<a
<?php echo e(\Filament\Support\generate_href_html($url)); ?>
class="fi-breadcrumbs-item-label"
>
<?php echo e($label); ?>
</a>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</li>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</ol>
</nav>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/breadcrumbs.blade.php ENDPATH**/ ?>
@@ -1,53 +0,0 @@
<?php extract((new \Illuminate\Support\Collection($attributes->getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames((['field','inlineLabelVerticalAlignment']));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter((['field','inlineLabelVerticalAlignment']), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php if (isset($component)) { $__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-forms::components.field-wrapper','data' => ['field' => $field,'inlineLabelVerticalAlignment' => $inlineLabelVerticalAlignment]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-forms::field-wrapper'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['field' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($field),'inline-label-vertical-alignment' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($inlineLabelVerticalAlignment)]); ?>
<?php $__env->slot('labelPrefix', null, []); ?> <?php echo e($labelPrefix); ?> <?php $__env->endSlot(); ?>
<?php echo e($slot ?? ""); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28)): ?>
<?php $attributes = $__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28; ?>
<?php unset($__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28); ?>
<?php endif; ?>
<?php if (isset($__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28)): ?>
<?php $component = $__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28; ?>
<?php unset($__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28); ?>
<?php endif; ?><?php /**PATH /var/www/additional_design/storage/framework/views/0b43769f58139770b64ab9dccb89db6a.blade.php ENDPATH**/ ?>
@@ -1,23 +0,0 @@
<?php if (isset($component)) { $__componentOriginalf45da69382bf4ac45a50b496dc82aa9a = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf45da69382bf4ac45a50b496dc82aa9a = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.page.simple','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::page.simple'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo e($this->content); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf45da69382bf4ac45a50b496dc82aa9a)): ?>
<?php $attributes = $__attributesOriginalf45da69382bf4ac45a50b496dc82aa9a; ?>
<?php unset($__attributesOriginalf45da69382bf4ac45a50b496dc82aa9a); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf45da69382bf4ac45a50b496dc82aa9a)): ?>
<?php $component = $__componentOriginalf45da69382bf4ac45a50b496dc82aa9a; ?>
<?php unset($__componentOriginalf45da69382bf4ac45a50b496dc82aa9a); ?>
<?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/pages/simple.blade.php ENDPATH**/ ?>
File diff suppressed because it is too large Load Diff
@@ -1,137 +0,0 @@
<?php
use Filament\Tables\Enums\FiltersResetActionPosition;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'applyAction',
'form',
'headingTag' => 'h3',
'resetActionPosition' => FiltersResetActionPosition::Header,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'applyAction',
'form',
'headingTag' => 'h3',
'resetActionPosition' => FiltersResetActionPosition::Header,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<div <?php echo e($attributes->class(['fi-ta-filters'])); ?>>
<div class="fi-ta-filters-header">
<<?php echo e($headingTag); ?> class="fi-ta-filters-heading">
<?php echo e(__('filament-tables::table.filters.heading')); ?>
</<?php echo e($headingTag); ?>>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($resetActionPosition === FiltersResetActionPosition::Header): ?>
<div>
<?php if (isset($component)) { $__componentOriginal549c94d872270b69c72bdf48cb183bc9 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal549c94d872270b69c72bdf48cb183bc9 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.link','data' => ['attributes' =>
\Filament\Support\prepare_inherited_attributes(
new \Illuminate\View\ComponentAttributeBag([
'color' => 'danger',
'tag' => 'button',
'wire:click' => 'resetTableFiltersForm',
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => '',
'wire:target' => 'resetTableFiltersForm',
])
)
]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::link'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
\Filament\Support\prepare_inherited_attributes(
new \Illuminate\View\ComponentAttributeBag([
'color' => 'danger',
'tag' => 'button',
'wire:click' => 'resetTableFiltersForm',
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => '',
'wire:target' => 'resetTableFiltersForm',
])
)
)]); ?>
<?php echo e(__('filament-tables::table.filters.actions.reset.label')); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal549c94d872270b69c72bdf48cb183bc9)): ?>
<?php $attributes = $__attributesOriginal549c94d872270b69c72bdf48cb183bc9; ?>
<?php unset($__attributesOriginal549c94d872270b69c72bdf48cb183bc9); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal549c94d872270b69c72bdf48cb183bc9)): ?>
<?php $component = $__componentOriginal549c94d872270b69c72bdf48cb183bc9; ?>
<?php unset($__componentOriginal549c94d872270b69c72bdf48cb183bc9); ?>
<?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php echo e($form); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($applyAction->isVisible() || $resetActionPosition === FiltersResetActionPosition::Footer): ?>
<div class="fi-ta-filters-actions-ctn">
<?php if($applyAction->isVisible()): ?>
<?php echo e($applyAction); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($resetActionPosition === FiltersResetActionPosition::Footer): ?>
<?php if (isset($component)) { $__componentOriginal6330f08526bbb3ce2a0da37da512a11f = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal6330f08526bbb3ce2a0da37da512a11f = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.button.index','data' => ['color' => 'danger','wire:click' => 'resetTableFiltersForm']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'danger','wire:click' => 'resetTableFiltersForm']); ?>
<?php echo e(__('filament-tables::table.filters.actions.reset.label')); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal6330f08526bbb3ce2a0da37da512a11f)): ?>
<?php $attributes = $__attributesOriginal6330f08526bbb3ce2a0da37da512a11f; ?>
<?php unset($__attributesOriginal6330f08526bbb3ce2a0da37da512a11f); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal6330f08526bbb3ce2a0da37da512a11f)): ?>
<?php $component = $__componentOriginal6330f08526bbb3ce2a0da37da512a11f; ?>
<?php unset($__componentOriginal6330f08526bbb3ce2a0da37da512a11f); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/tables/resources/views/components/filters.blade.php ENDPATH**/ ?>
@@ -1,221 +0,0 @@
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'livewire' => null,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'livewire' => null,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
$renderHookScopes = $livewire?->getRenderHookScopes();
?>
<!DOCTYPE html>
<html
lang="<?php echo e(str_replace('_', '-', app()->getLocale())); ?>"
dir="<?php echo e(__('filament-panels::layout.direction') ?? 'ltr'); ?>"
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi',
'dark' => filament()->hasDarkModeForced(),
]); ?>"
>
<head>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::HEAD_START, scopes: $renderHookScopes)); ?>
<meta charset="utf-8" />
<meta name="csrf-token" content="<?php echo e(csrf_token()); ?>" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($favicon = filament()->getFavicon()): ?>
<link rel="icon" href="<?php echo e($favicon); ?>" />
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php
$title = trim(strip_tags($livewire?->getTitle() ?? ''));
$brandName = trim(strip_tags(filament()->getBrandName()));
?>
<title>
<?php echo e(filled($title) ? "{$title} - " : null); ?> <?php echo e($brandName); ?>
</title>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::STYLES_BEFORE, scopes: $renderHookScopes)); ?>
<style>
[x-cloak=''],
[x-cloak='x-cloak'],
[x-cloak='1'] {
display: none !important;
}
[x-cloak='inline-flex'] {
display: inline-flex !important;
}
@media (max-width: 1023px) {
[x-cloak='-lg'] {
display: none !important;
}
}
@media (min-width: 1024px) {
[x-cloak='lg'] {
display: none !important;
}
}
</style>
<?php echo \Filament\Support\Facades\FilamentAsset::renderStyles() ?>
<?php echo e(filament()->getTheme()->getHtml()); ?>
<?php echo e(filament()->getFontHtml()); ?>
<?php echo e(filament()->getMonoFontHtml()); ?>
<?php echo e(filament()->getSerifFontHtml()); ?>
<style>
:root {
--font-family: '<?php echo filament()->getFontFamily(); ?>';
--mono-font-family: '<?php echo filament()->getMonoFontFamily(); ?>';
--serif-font-family: '<?php echo filament()->getSerifFontFamily(); ?>';
--sidebar-width: <?php echo e(filament()->getSidebarWidth()); ?>;
--collapsed-sidebar-width: <?php echo e(filament()->getCollapsedSidebarWidth()); ?>;
--default-theme-mode: <?php echo e(filament()->getDefaultThemeMode()->value); ?>;
}
</style>
<?php echo $__env->yieldPushContent('styles'); ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::STYLES_AFTER, scopes: $renderHookScopes)); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(! filament()->hasDarkMode()): ?>
<script>
localStorage.setItem('theme', 'light')
</script>
<?php elseif(filament()->hasDarkModeForced()): ?>
<script>
localStorage.setItem('theme', 'dark')
</script>
<?php else: ?>
<script>
const loadDarkMode = () => {
window.theme = localStorage.getItem('theme') ?? <?php echo \Illuminate\Support\Js::from(filament()->getDefaultThemeMode()->value)->toHtml() ?>
if (
window.theme === 'dark' ||
(window.theme === 'system' &&
window.matchMedia('(prefers-color-scheme: dark)')
.matches)
) {
document.documentElement.classList.add('dark')
}
}
loadDarkMode()
document.addEventListener('livewire:navigated', loadDarkMode)
</script>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::HEAD_END, scopes: $renderHookScopes)); ?>
</head>
<body
<?php echo e($attributes
->merge($livewire?->getExtraBodyAttributes() ?? [], escape: false)
->class([
'fi-body',
'fi-panel-' . filament()->getId(),
])); ?>
>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::BODY_START, scopes: $renderHookScopes)); ?>
<?php echo e($slot); ?>
<?php
$__split = function ($name, $params = []) {
return [$name, $params];
};
[$__name, $__params] = $__split(Filament\Livewire\Notifications::class);
$key = null;
$key ??= \Livewire\Features\SupportCompiledWireKeys\SupportCompiledWireKeys::generateKey('lw-3970403317-0', null);
$__html = app('livewire')->mount($__name, $__params, $key);
echo $__html;
unset($__html);
unset($__name);
unset($__params);
unset($__split);
if (isset($__slots)) unset($__slots);
?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SCRIPTS_BEFORE, scopes: $renderHookScopes)); ?>
<?php echo \Filament\Support\Facades\FilamentAsset::renderScripts(withCore: true) ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filament()->hasBroadcasting() && config('filament.broadcasting.echo')): ?>
<script data-navigate-once>
window.Echo = new window.EchoFactory(<?php echo \Illuminate\Support\Js::from(config('filament.broadcasting.echo'))->toHtml() ?>)
window.dispatchEvent(new CustomEvent('EchoLoaded'))
</script>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(filament()->hasDarkMode() && (! filament()->hasDarkModeForced())): ?>
<script>
loadDarkMode()
</script>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->yieldPushContent('scripts'); ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SCRIPTS_AFTER, scopes: $renderHookScopes)); ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::BODY_END, scopes: $renderHookScopes)); ?>
</body>
</html>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/components/layout/base.blade.php ENDPATH**/ ?>
@@ -1,104 +0,0 @@
<?php
use Filament\Support\View\Components\ToggleComponent;
use Illuminate\Support\Arr;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'state',
'offColor' => 'gray',
'offIcon' => null,
'onColor' => 'primary',
'onIcon' => null,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'state',
'offColor' => 'gray',
'offIcon' => null,
'onColor' => 'primary',
'onIcon' => null,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<button
x-data="{ state: <?php echo e($state); ?> }"
x-bind:aria-checked="state?.toString()"
x-on:click="state = ! state"
x-bind:class="
state ? <?php echo \Illuminate\Support\Js::from(Arr::toCssClasses([
'fi-toggle-on',
...\Filament\Support\get_component_color_classes(ToggleComponent::class, $onColor),
]))->toHtml() ?> : <?php echo \Illuminate\Support\Js::from(Arr::toCssClasses([
'fi-toggle-off',
...\Filament\Support\get_component_color_classes(ToggleComponent::class, $offColor),
]))->toHtml() ?>
"
<?php if($state): ?>
x-cloak
<?php endif; ?>
<?php echo e($attributes
->merge([
'role' => 'switch',
'type' => 'button',
], escape: false)
->class(['fi-toggle'])); ?>
>
<div>
<div aria-hidden="true">
<?php echo e(\Filament\Support\generate_icon_html($offIcon, size: \Filament\Support\Enums\IconSize::ExtraSmall)); ?>
</div>
<div aria-hidden="true">
<?php echo e(\Filament\Support\generate_icon_html($onIcon, size: \Filament\Support\Enums\IconSize::ExtraSmall)); ?>
</div>
</div>
</button>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($state): ?>
<div
x-cloak="inline-flex"
wire:ignore
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-toggle fi-toggle-on fi-hidden',
...\Filament\Support\get_component_color_classes(ToggleComponent::class, $onColor),
]); ?>"
>
<div>
<div aria-hidden="true"></div>
<div aria-hidden="true">
<?php echo e(\Filament\Support\generate_icon_html($onIcon, size: \Filament\Support\Enums\IconSize::ExtraSmall)); ?>
</div>
</div>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/toggle.blade.php ENDPATH**/ ?>
@@ -0,0 +1,191 @@
<?php $__env->startSection('title', 'Sign In - Additional Design'); ?>
<?php $__env->startSection('styles'); ?>
<style>
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
text-align: center;
}
.login-container {
display: flex;
align-items: center;
justify-content: center;
min-height: 70vh;
padding: var(--spacing-lg) 0;
}
.login-card {
background: white;
padding: 3rem;
border-radius: 20px;
max-width: 400px;
width: 100%;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.login-card p {
text-align: center;
margin-bottom: var(--spacing-lg);
color: var(--text-secondary);
}
.btn-google {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
gap: var(--spacing-sm);
padding: var(--spacing-sm) var(--spacing-md);
background-color: white;
border: 2px solid var(--border-color);
color: var(--text-primary);
border-radius: 50px;
font-weight: 600;
font-size: 1rem;
cursor: pointer;
transition: var(--transition);
margin-bottom: var(--spacing-md);
}
.btn-google:hover {
background-color: var(--bg-secondary);
border-color: var(--text-primary);
}
.btn-google svg {
width: 20px;
height: 20px;
}
.divider {
display: flex;
align-items: center;
gap: var(--spacing-sm);
margin: var(--spacing-lg) 0;
}
.divider-line {
flex: 1;
height: 1px;
background-color: var(--border-color);
}
.divider-text {
font-size: 0.85rem;
color: var(--text-secondary);
}
.btn-guest {
width: 100%;
display: block;
text-align: center;
padding: var(--spacing-sm) var(--spacing-md);
background-color: var(--bg-secondary);
color: var(--text-primary);
border: none;
border-radius: 50px;
font-weight: 600;
font-size: 1rem;
cursor: pointer;
transition: var(--transition);
text-decoration: none;
}
.btn-guest:hover {
background-color: var(--border-color);
}
.terms {
margin-top: var(--spacing-lg);
padding-top: var(--spacing-lg);
border-top: 1px solid var(--border-color);
text-align: center;
font-size: 0.85rem;
color: var(--text-secondary);
}
.terms a {
color: var(--accent-dark);
font-weight: 600;
}
.alert {
padding: var(--spacing-sm);
border-radius: 4px;
margin-bottom: var(--spacing-md);
font-size: 0.9rem;
}
.alert-error {
background-color: #fce8e8;
border: 1px solid #f5c6cb;
color: #721c24;
}
@media (max-width: 768px) {
.login-card {
padding: 2rem;
margin: 0 var(--spacing-md);
}
h1 {
font-size: 2rem;
}
}
</style>
<?php $__env->stopSection(); ?>
<?php $__env->startSection('content'); ?>
<div class="login-container">
<div class="login-card">
<h1>Sign In</h1>
<p>Create an account or continue as guest to access your orders and custom designs</p>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(session('error')): ?>
<div class="alert alert-error">
<?php echo e(session('error')); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($errors->any()): ?>
<div class="alert alert-error">
<?php echo e($errors->first()); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<a href="<?php echo e(route('auth.google')); ?>" class="btn-google">
<svg viewBox="0 0 24 24" fill="currentColor">
<path d="M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z"/>
<path d="M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z"/>
<path d="M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z"/>
<path d="M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z"/>
</svg>
Sign in with Google
</a>
<div class="divider">
<div class="divider-line"></div>
<span class="divider-text">or</span>
<div class="divider-line"></div>
</div>
<a href="<?php echo e(route('home')); ?>" class="btn-guest">
Continue as Guest
</a>
<div class="terms">
By signing in, you agree to our <a href="#">Terms of Service</a> and <a href="#">Privacy Policy</a>
</div>
</div>
</div>
<?php $__env->stopSection(); ?>
<?php echo $__env->make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?><?php /**PATH /var/www/additional_design/resources/views/auth/login.blade.php ENDPATH**/ ?>
@@ -1,96 +0,0 @@
<?php
use Filament\Support\Enums\IconPosition;
use Filament\Widgets\View\Components\StatsOverviewWidgetComponent\StatComponent\DescriptionComponent;
use Filament\Widgets\View\Components\StatsOverviewWidgetComponent\StatComponent\StatsOverviewWidgetStatChartComponent;
use Illuminate\View\ComponentAttributeBag;
$chartColor = $getChartColor() ?? 'gray';
$descriptionColor = $getDescriptionColor() ?? 'gray';
$descriptionIcon = $getDescriptionIcon();
$descriptionIconPosition = $getDescriptionIconPosition();
$url = $getUrl();
$tag = $url ? 'a' : 'div';
$chartDataChecksum = $generateChartDataChecksum();
?>
<<?php echo $tag; ?>
<?php if($url): ?>
<?php echo e(\Filament\Support\generate_href_html($url, $shouldOpenUrlInNewTab())); ?>
<?php endif; ?>
<?php echo e($getExtraAttributeBag()
->class([
'fi-wi-stats-overview-stat',
])); ?>
>
<div class="fi-wi-stats-overview-stat-content">
<div class="fi-wi-stats-overview-stat-label-ctn">
<?php echo e(\Filament\Support\generate_icon_html($getIcon())); ?>
<span class="fi-wi-stats-overview-stat-label">
<?php echo e($getLabel()); ?>
</span>
</div>
<div class="fi-wi-stats-overview-stat-value">
<?php echo e($getValue()); ?>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($description = $getDescription()): ?>
<div
<?php echo e((new ComponentAttributeBag)->color(DescriptionComponent::class, $descriptionColor)->class(['fi-wi-stats-overview-stat-description'])); ?>
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($descriptionIcon && in_array($descriptionIconPosition, [IconPosition::Before, 'before'])): ?>
<?php echo e(\Filament\Support\generate_icon_html($descriptionIcon, attributes: (new \Illuminate\View\ComponentAttributeBag))); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<span>
<?php echo e($description); ?>
</span>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($descriptionIcon && in_array($descriptionIconPosition, [IconPosition::After, 'after'])): ?>
<?php echo e(\Filament\Support\generate_icon_html($descriptionIcon, attributes: (new \Illuminate\View\ComponentAttributeBag))); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($chart = $getChart()): ?>
<div x-data="{ statsOverviewStatChart() {} }">
<div
x-load
x-load-src="<?php echo e(\Filament\Support\Facades\FilamentAsset::getAlpineComponentSrc('stats-overview/stat/chart', 'filament/widgets')); ?>"
x-data="statsOverviewStatChart({
dataChecksum: <?php echo \Illuminate\Support\Js::from($chartDataChecksum)->toHtml() ?>,
labels: <?php echo \Illuminate\Support\Js::from(array_keys($chart))->toHtml() ?>,
values: <?php echo \Illuminate\Support\Js::from(array_values($chart))->toHtml() ?>,
})"
<?php echo e((new ComponentAttributeBag)->color(StatsOverviewWidgetStatChartComponent::class, $chartColor)->class(['fi-wi-stats-overview-stat-chart'])); ?>
>
<canvas x-ref="canvas"></canvas>
<span
x-ref="backgroundColorElement"
class="fi-wi-stats-overview-stat-chart-bg-color"
></span>
<span
x-ref="borderColorElement"
class="fi-wi-stats-overview-stat-chart-border-color"
></span>
</div>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</<?php echo $tag; ?>>
<?php /**PATH /var/www/additional_design/vendor/filament/widgets/resources/views/stats-overview-widget/stat.blade.php ENDPATH**/ ?>
@@ -0,0 +1,439 @@
<?php $__env->startSection('title', 'Order #' . $customOrder->order_number . ' - Custom Order Details'); ?>
<?php $__env->startSection('styles'); ?>
<style>
/* Page-specific typography overrides */
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.6rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
h3 {
font-family: var(--font-sans);
font-size: 1.1rem;
font-weight: 600;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.page-intro {
margin-bottom: var(--spacing-lg);
}
.page-intro p {
color: var(--text-secondary);
font-size: 1rem;
}
/* Timeline-specific styles */
.card {
padding: var(--spacing-lg);
margin-bottom: var(--spacing-lg);
}
.card:hover {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.timeline-container {
background: white;
padding: var(--spacing-lg);
border-radius: 20px;
margin-bottom: var(--spacing-lg);
transition: var(--transition);
}
.timeline-container:hover {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.timeline-title {
font-family: var(--font-serif);
font-size: 1.3rem;
color: var(--text-primary);
margin-bottom: var(--spacing-lg);
text-align: center;
}
.timeline {
display: flex;
align-items: center;
gap: 0;
position: relative;
overflow-x: auto;
padding: var(--spacing-md) 0;
}
.timeline::before {
content: '';
position: absolute;
top: 50%;
left: 0;
right: 0;
height: 2px;
background-color: var(--border-color);
z-index: 1;
transform: translateY(-50%);
}
.timeline-item {
flex: 1;
min-width: 140px;
display: flex;
flex-direction: column;
align-items: center;
position: relative;
z-index: 2;
}
.timeline-circle {
width: 40px;
height: 40px;
border-radius: 50%;
background-color: white;
border: 3px solid var(--border-color);
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
font-weight: 900;
font-size: 1.2rem;
color: var(--text-primary);
flex-shrink: 0;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
margin: 0;
}
.timeline-item.completed .timeline-circle {
background-color: var(--accent-pink);
border-color: var(--accent-pink);
color: white;
}
.timeline-item.active .timeline-circle {
background-color: var(--accent-light);
border-color: var(--accent-dark);
box-shadow: 0 0 0 4px var(--accent-light);
}
.timeline-label {
text-align: center;
font-size: 0.85rem;
font-weight: 600;
color: var(--text-primary);
line-height: 1.3;
max-width: 120px;
margin-top: 60px;
}
.timeline-item.completed .timeline-label {
color: var(--accent-pink);
}
.timeline-item.active .timeline-label {
color: var(--accent-dark);
font-weight: 700;
}
@media (max-width: 768px) {
.content-grid {
grid-template-columns: 1fr;
}
h1 {
font-size: 1.8rem;
}
.image-gallery {
grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
}
}
</style>
<?php $__env->stopSection(); ?>
<?php $__env->startSection('content'); ?>
<div class="container">
<div class="page-intro">
<h1>Custom Order Details</h1>
<p>Order #<?php echo e($customOrder->order_number); ?></p>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(session('success')): ?>
<div class="alert alert-success">
<?php echo e(session('success')); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(session('info')): ?>
<div class="alert alert-info">
<?php echo e(session('info')); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<!-- Timeline -->
<div class="timeline-container">
<h2 class="timeline-title">Order Progress</h2>
<div class="timeline">
<?php
$timelineSteps = [
['status' => 'submitted', 'label' => 'Order\nSubmitted', 'completed' => $customOrder->status !== null],
['status' => 'deposit_paid', 'label' => 'Deposit\nPaid', 'completed' => $customOrder->deposit_status === 'paid'],
['status' => 'proof_sent', 'label' => 'Proofs\nSent', 'completed' => $customOrder->proofs()->exists()],
['status' => 'proof_approved', 'label' => 'Proofs\nApproved', 'completed' => $customOrder->proofs()->where('status', 'approved')->exists()],
['status' => 'processing', 'label' => 'Processing', 'completed' => $customOrder->status === 'processing'],
['status' => 'shipped', 'label' => 'Order\nShipped', 'completed' => $customOrder->status === 'completed'],
];
// Determine current step
$currentStep = 0;
if ($customOrder->status === 'completed') $currentStep = 5;
elseif ($customOrder->status === 'processing') $currentStep = 4;
elseif ($customOrder->proofs()->where('status', 'approved')->exists()) $currentStep = 3;
elseif ($customOrder->proofs()->exists()) $currentStep = 2;
elseif ($customOrder->deposit_status === 'paid') $currentStep = 1;
?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $timelineSteps; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $index => $step): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<div class="timeline-item <?php if($index < $currentStep): ?> completed <?php elseif($index === $currentStep): ?> active <?php endif; ?>">
<div class="timeline-circle">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($index < $currentStep): ?>
<?php else: ?>
<?php echo e($index + 1); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div class="timeline-label"><?php echo e($step['label']); ?></div>
</div>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
</div>
<div class="content-grid">
<!-- Main Content -->
<div>
<!-- Order Status -->
<div class="card">
<h2>Order Status</h2>
<div class="card-section">
<span class="status-badge <?php echo e($customOrder->status); ?>">
<?php echo e(str_replace('_', ' ', ucfirst($customOrder->status))); ?>
</span>
<p style="margin-top: var(--spacing-sm); color: var(--text-secondary); font-size: 0.9rem;">
Submitted on <?php echo e($customOrder->created_at->format('d M Y \a\t H:i')); ?>
</p>
</div>
</div>
<!-- Design Requirements -->
<div class="card">
<h2>Design Requirements</h2>
<div class="card-section">
<h3>Order Type</h3>
<p style="color: var(--text-secondary); text-transform: capitalize;"><?php echo e($customOrder->type); ?></p>
</div>
<div class="card-section">
<h3>Dimensions</h3>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrder->specifications): ?>
<dl style="color: var(--text-secondary);">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrder->specifications->length): ?>
<div class="spec-group">
<dt>Length:</dt>
<dd><?php echo e($customOrder->specifications->length); ?>m</dd>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrder->specifications->width): ?>
<div class="spec-group">
<dt>Width:</dt>
<dd><?php echo e($customOrder->specifications->width); ?>m</dd>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrder->specifications->height): ?>
<div class="spec-group">
<dt>Height:</dt>
<dd><?php echo e($customOrder->specifications->height); ?>m</dd>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<div class="spec-group">
<dt>Quantity:</dt>
<dd><?php echo e($customOrder->specifications->quantity); ?></dd>
</div>
</dl>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div class="card-section">
<h3>Print Material</h3>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrder->specifications->printStock): ?>
<p style="color: var(--text-secondary);"><?php echo e($customOrder->specifications->printStock->name); ?></p>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div class="card-section">
<h3>Design Brief</h3>
<p style="color: var(--text-secondary);"><?php echo e($customOrder->customer_brief); ?></p>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrder->specifications->special_instructions): ?>
<div class="card-section">
<h3>Special Instructions</h3>
<p style="color: var(--text-secondary);"><?php echo e($customOrder->specifications->special_instructions); ?></p>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<!-- Reference Images -->
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrder->files->count() > 0): ?>
<div class="card">
<h2>Reference Images</h2>
<div class="image-gallery">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $customOrder->files; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $file): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<a href="<?php echo e(Storage::url($file->file_path)); ?>" target="_blank" title="<?php echo e($file->original_filename); ?>">
<img src="<?php echo e(Storage::url($file->file_path)); ?>" alt="<?php echo e($file->original_filename); ?>">
</a>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<!-- Design Proofs -->
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrder->proofs->count() > 0): ?>
<div class="card">
<h2>Design Proofs</h2>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $customOrder->proofs; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $proof): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<div class="proof-item <?php echo e($proof->status === 'approved' ? 'approved' : ''); ?>">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: var(--spacing-sm);">
<h3>Proof <?php echo e($loop->iteration); ?></h3>
<span class="status-badge <?php echo e($proof->status); ?>">
<?php echo e(ucfirst($proof->status)); ?>
</span>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($proof->file_path): ?>
<a href="<?php echo e(Storage::url($proof->file_path)); ?>" target="_blank" style="color: var(--accent-dark); text-decoration: underline; font-size: 0.9rem;">
View Proof File
</a>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($proof->feedback): ?>
<div style="margin-top: var(--spacing-sm); padding: var(--spacing-sm); background: white; border-radius: 4px; border-left: 3px solid var(--accent-dark);">
<strong style="color: var(--text-primary); font-size: 0.9rem;">Feedback:</strong>
<p style="color: var(--text-secondary); font-size: 0.85rem; margin: var(--spacing-xs) 0 0 0;"><?php echo e($proof->feedback); ?></p>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<!-- Sidebar -->
<div>
<!-- Cost & Payment Summary -->
<div class="card">
<h2>Order Summary</h2>
<!-- Cost Summary -->
<div class="payment-section">
<div class="payment-row">
<span>Design Fee:</span>
<span>R<?php echo e(number_format($customOrder->design_fee, 2)); ?></span>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrder->material_cost > 0): ?>
<div class="payment-row">
<span>Material Cost:</span>
<span>R<?php echo e(number_format($customOrder->material_cost, 2)); ?></span>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<div class="payment-row total">
<span>Total:</span>
<span>R<?php echo e(number_format($customOrder->total_cost, 2)); ?></span>
</div>
</div>
<!-- Payment Status -->
<h3 style="margin-top: var(--spacing-lg); margin-bottom: var(--spacing-md);">Payment Status</h3>
<div style="padding: var(--spacing-sm); background-color: var(--accent-light); border-radius: 20px; margin-bottom: var(--spacing-md);">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: var(--spacing-xs);">
<strong>Deposit (20%)</strong>
<span class="status-badge <?php echo e($customOrder->deposit_status); ?>"><?php echo e(ucfirst($customOrder->deposit_status)); ?></span>
</div>
<p style="color: var(--text-secondary); margin: 0; font-size: 0.9rem;">R<?php echo e(number_format($customOrder->deposit_amount, 2)); ?></p>
</div>
<div style="padding: var(--spacing-sm); background-color: var(--accent-light); border-radius: 20px; margin-bottom: var(--spacing-lg);">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: var(--spacing-xs);">
<strong>Balance (80%)</strong>
<span class="status-badge <?php echo e($customOrder->balance_status); ?>"><?php echo e(ucfirst($customOrder->balance_status)); ?></span>
</div>
<p style="color: var(--text-secondary); margin: 0; font-size: 0.9rem;">R<?php echo e(number_format($customOrder->balance_amount, 2)); ?></p>
</div>
<!-- Payment Buttons -->
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrder->deposit_status !== 'paid'): ?>
<form method="POST" action="<?php echo e(route('yoco-custom-deposit')); ?>">
<?php echo csrf_field(); ?>
<input type="hidden" name="custom_order_id" value="<?php echo e($customOrder->id); ?>">
<button type="submit" class="btn">Pay Deposit (R<?php echo e(number_format($customOrder->deposit_amount, 2)); ?>)</button>
</form>
<?php elseif($customOrder->deposit_status === 'paid' && $customOrder->proofs->where('status', 'approved')->count() > 0 && $customOrder->balance_status !== 'paid'): ?>
<button class="btn" onclick="alert('Balance payment coming soon')">Pay Balance (R<?php echo e(number_format($customOrder->balance_amount, 2)); ?>)</button>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<!-- Terms -->
<div class="terms-box">
<h3 style="color: var(--text-primary); margin-top: 0;">Payment Terms</h3>
<ul>
<li>The 20% deposit is non-refundable</li>
<li>Balance of 80% must be paid before printing begins</li>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrder->library_discount_applied): ?>
<li>Design may be added to our library</li>
<?php else: ?>
<li>Bespoke, exclusive design</li>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</ul>
</div>
</div>
</div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const paymentForm = document.querySelector('form[action*="payment"]');
if (paymentForm) {
console.log('Payment form found:', paymentForm);
console.log('Form action:', paymentForm.action);
paymentForm.addEventListener('submit', function(e) {
console.log('Payment form submitted!');
console.log('Form data:', new FormData(this));
});
} else {
console.log('Payment form NOT found');
console.log('All forms on page:', document.querySelectorAll('form'));
}
});
</script>
<?php $__env->stopSection(); ?>
<?php echo $__env->make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?><?php /**PATH /var/www/additional_design/resources/views/custom-orders/show.blade.php ENDPATH**/ ?>
@@ -1,106 +0,0 @@
<?php
$fieldWrapperView = $getFieldWrapperView();
$extraAttributeBag = $getExtraAttributeBag();
$isConcealed = $isConcealed();
$isDisabled = $isDisabled();
$rows = $getRows();
$placeholder = $getPlaceholder();
$shouldAutosize = $shouldAutosize();
$placeholder = $getPlaceholder();
$statePath = $getStatePath();
$initialHeight = (($rows ?? 2) * 1.5) + 0.75;
?>
<?php if (isset($component)) { $__componentOriginal511d4862ff04963c3c16115c05a86a9d = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal511d4862ff04963c3c16115c05a86a9d = $attributes; } ?>
<?php $component = Illuminate\View\DynamicComponent::resolve(['component' => $fieldWrapperView] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('dynamic-component'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\DynamicComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['field' => $field,'class' => 'fi-fo-textarea-wrp']); ?>
<?php if (isset($component)) { $__componentOriginal505efd9768415fdb4543e8c564dad437 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal505efd9768415fdb4543e8c564dad437 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.input.wrapper','data' => ['disabled' => $isDisabled,'valid' => ! $errors->has($statePath),'attributes' =>
\Filament\Support\prepare_inherited_attributes($extraAttributeBag)
->class([
'fi-fo-textarea',
'fi-autosizable' => $shouldAutosize,
])
]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::input.wrapper'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['disabled' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isDisabled),'valid' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(! $errors->has($statePath)),'attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
\Filament\Support\prepare_inherited_attributes($extraAttributeBag)
->class([
'fi-fo-textarea',
'fi-autosizable' => $shouldAutosize,
])
)]); ?>
<div wire:ignore.self style="height: '<?php echo e($initialHeight . 'rem'); ?>'">
<textarea
x-load
x-load-src="<?php echo e(\Filament\Support\Facades\FilamentAsset::getAlpineComponentSrc('textarea', 'filament/forms')); ?>"
x-data="textareaFormComponent({
initialHeight: <?php echo \Illuminate\Support\Js::from($initialHeight)->toHtml() ?>,
shouldAutosize: <?php echo \Illuminate\Support\Js::from($shouldAutosize)->toHtml() ?>,
state: $wire.$entangle('<?php echo e($statePath); ?>'),
})"
<?php if($shouldAutosize): ?>
x-intersect.once="resize()"
x-on:resize.window="resize()"
<?php endif; ?>
x-model="state"
<?php if($isGrammarlyDisabled()): ?>
data-gramm="false"
data-gramm_editor="false"
data-enable-grammarly="false"
<?php endif; ?>
<?php echo e($getExtraAlpineAttributeBag()); ?>
<?php echo e($getExtraInputAttributeBag()
->merge([
'autocomplete' => $getAutocomplete(),
'autofocus' => $isAutofocused(),
'cols' => $getCols(),
'disabled' => $isDisabled,
'id' => $getId(),
'maxlength' => (! $isConcealed) ? $getMaxLength() : null,
'minlength' => (! $isConcealed) ? $getMinLength() : null,
'placeholder' => filled($placeholder) ? e($placeholder) : null,
'readonly' => $isReadOnly(),
'required' => $isRequired() && (! $isConcealed),
'rows' => $rows,
$applyStateBindingModifiers('wire:model') => $statePath,
], escape: false)); ?>
></textarea>
</div>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal505efd9768415fdb4543e8c564dad437)): ?>
<?php $attributes = $__attributesOriginal505efd9768415fdb4543e8c564dad437; ?>
<?php unset($__attributesOriginal505efd9768415fdb4543e8c564dad437); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal505efd9768415fdb4543e8c564dad437)): ?>
<?php $component = $__componentOriginal505efd9768415fdb4543e8c564dad437; ?>
<?php unset($__componentOriginal505efd9768415fdb4543e8c564dad437); ?>
<?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal511d4862ff04963c3c16115c05a86a9d)): ?>
<?php $attributes = $__attributesOriginal511d4862ff04963c3c16115c05a86a9d; ?>
<?php unset($__attributesOriginal511d4862ff04963c3c16115c05a86a9d); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal511d4862ff04963c3c16115c05a86a9d)): ?>
<?php $component = $__componentOriginal511d4862ff04963c3c16115c05a86a9d; ?>
<?php unset($__componentOriginal511d4862ff04963c3c16115c05a86a9d); ?>
<?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/forms/resources/views/components/textarea.blade.php ENDPATH**/ ?>
@@ -1,229 +0,0 @@
<?php
$fieldWrapperView = $getFieldWrapperView();
$extraInputAttributeBag = $getExtraInputAttributeBag();
$canSelectPlaceholder = $canSelectPlaceholder();
$isAutofocused = $isAutofocused();
$isDisabled = $isDisabled();
$isMultiple = $isMultiple();
$isReorderable = $isReorderable();
$isSearchable = $isSearchable();
$canOptionLabelsWrap = $canOptionLabelsWrap();
$isRequired = $isRequired();
$isConcealed = $isConcealed();
$isHtmlAllowed = $isHtmlAllowed();
$isNative = (! ($isSearchable || $isMultiple) && $isNative());
$isPrefixInline = $isPrefixInline();
$isSuffixInline = $isSuffixInline();
$key = $getKey();
$id = $getId();
$prefixActions = $getPrefixActions();
$prefixIcon = $getPrefixIcon();
$prefixIconColor = $getPrefixIconColor();
$prefixLabel = $getPrefixLabel();
$suffixActions = $getSuffixActions();
$suffixIcon = $getSuffixIcon();
$suffixIconColor = $getSuffixIconColor();
$suffixLabel = $getSuffixLabel();
$statePath = $getStatePath();
$state = $getState();
$livewireKey = $getLivewireKey();
?>
<?php if (isset($component)) { $__componentOriginal511d4862ff04963c3c16115c05a86a9d = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal511d4862ff04963c3c16115c05a86a9d = $attributes; } ?>
<?php $component = Illuminate\View\DynamicComponent::resolve(['component' => $fieldWrapperView] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('dynamic-component'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\DynamicComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['field' => $field,'class' => 'fi-fo-select-wrp']); ?>
<?php if (isset($component)) { $__componentOriginal505efd9768415fdb4543e8c564dad437 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal505efd9768415fdb4543e8c564dad437 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.input.wrapper','data' => ['disabled' => $isDisabled,'inlinePrefix' => $isPrefixInline,'inlineSuffix' => $isSuffixInline,'prefix' => $prefixLabel,'prefixActions' => $prefixActions,'prefixIcon' => $prefixIcon,'prefixIconColor' => $prefixIconColor,'suffix' => $suffixLabel,'suffixActions' => $suffixActions,'suffixIcon' => $suffixIcon,'suffixIconColor' => $suffixIconColor,'valid' => ! $errors->has($statePath),'attributes' =>
\Filament\Support\prepare_inherited_attributes($getExtraAttributeBag())
->class([
'fi-fo-select',
'fi-fo-select-has-inline-prefix' => $isPrefixInline && (count($prefixActions) || $prefixIcon || filled($prefixLabel)),
'fi-fo-select-native' => $isNative,
])
]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::input.wrapper'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['disabled' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isDisabled),'inline-prefix' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isPrefixInline),'inline-suffix' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isSuffixInline),'prefix' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($prefixLabel),'prefix-actions' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($prefixActions),'prefix-icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($prefixIcon),'prefix-icon-color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($prefixIconColor),'suffix' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($suffixLabel),'suffix-actions' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($suffixActions),'suffix-icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($suffixIcon),'suffix-icon-color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($suffixIconColor),'valid' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(! $errors->has($statePath)),'attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
\Filament\Support\prepare_inherited_attributes($getExtraAttributeBag())
->class([
'fi-fo-select',
'fi-fo-select-has-inline-prefix' => $isPrefixInline && (count($prefixActions) || $prefixIcon || filled($prefixLabel)),
'fi-fo-select-native' => $isNative,
])
)]); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($isNative): ?>
<select
<?php echo e($extraInputAttributeBag
->merge([
'autofocus' => $isAutofocused,
'disabled' => $isDisabled,
'id' => $id,
'required' => $isRequired && (! $isConcealed),
$applyStateBindingModifiers('wire:model') => $statePath,
], escape: false)
->class([
'fi-select-input',
'fi-select-input-has-inline-prefix' => $isPrefixInline && (count($prefixActions) || $prefixIcon || filled($prefixLabel)),
])); ?>
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($canSelectPlaceholder): ?>
<option value="">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(! $isDisabled): ?>
<?php echo e($getPlaceholder()); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</option>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $getOptions(); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $value => $label): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(is_array($label)): ?>
<optgroup label="<?php echo e($value); ?>">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $label; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $groupedValue => $groupedLabel): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<option
<?php if($isOptionDisabled($groupedValue, $groupedLabel)): echo 'disabled'; endif; ?>
value="<?php echo e($groupedValue); ?>"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($isHtmlAllowed): ?>
<?php echo $groupedLabel; ?>
<?php else: ?>
<?php echo e($groupedLabel); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</option>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</optgroup>
<?php else: ?>
<option
<?php if($isOptionDisabled($value, $label)): echo 'disabled'; endif; ?>
value="<?php echo e($value); ?>"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($isHtmlAllowed): ?>
<?php echo $label; ?>
<?php else: ?>
<?php echo e($label); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</option>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</select>
<?php else: ?>
<div
class="fi-hidden"
x-data="{
isDisabled: <?php echo \Illuminate\Support\Js::from($isDisabled)->toHtml() ?>,
init() {
const container = $el.nextElementSibling
container.dispatchEvent(
new CustomEvent('set-select-property', {
detail: { isDisabled: this.isDisabled },
}),
)
},
}"
></div>
<div
x-load
x-load-src="<?php echo e(\Filament\Support\Facades\FilamentAsset::getAlpineComponentSrc('select', 'filament/forms')); ?>"
x-data="selectFormComponent({
canOptionLabelsWrap: <?php echo \Illuminate\Support\Js::from($canOptionLabelsWrap)->toHtml() ?>,
canSelectPlaceholder: <?php echo \Illuminate\Support\Js::from($canSelectPlaceholder)->toHtml() ?>,
isHtmlAllowed: <?php echo \Illuminate\Support\Js::from($isHtmlAllowed)->toHtml() ?>,
getOptionLabelUsing: async () => {
return await $wire.callSchemaComponentMethod(<?php echo \Illuminate\Support\Js::from($key)->toHtml() ?>, 'getOptionLabel')
},
getOptionLabelsUsing: async () => {
return await $wire.callSchemaComponentMethod(
<?php echo \Illuminate\Support\Js::from($key)->toHtml() ?>,
'getOptionLabelsForJs',
)
},
getOptionsUsing: async () => {
return await $wire.callSchemaComponentMethod(
<?php echo \Illuminate\Support\Js::from($key)->toHtml() ?>,
'getOptionsForJs',
)
},
getSearchResultsUsing: async (search) => {
return await $wire.callSchemaComponentMethod(
<?php echo \Illuminate\Support\Js::from($key)->toHtml() ?>,
'getSearchResultsForJs',
{ search },
)
},
initialOptionLabel: <?php echo \Illuminate\Support\Js::from((blank($state) || $isMultiple) ? null : $getOptionLabel())->toHtml() ?>,
initialOptionLabels: <?php echo \Illuminate\Support\Js::from((filled($state) && $isMultiple) ? $getOptionLabelsForJs() : [])->toHtml() ?>,
initialState: <?php echo \Illuminate\Support\Js::from($state)->toHtml() ?>,
isAutofocused: <?php echo \Illuminate\Support\Js::from($isAutofocused)->toHtml() ?>,
isDisabled: <?php echo \Illuminate\Support\Js::from($isDisabled)->toHtml() ?>,
isMultiple: <?php echo \Illuminate\Support\Js::from($isMultiple)->toHtml() ?>,
isReorderable: <?php echo \Illuminate\Support\Js::from($isReorderable)->toHtml() ?>,
isSearchable: <?php echo \Illuminate\Support\Js::from($isSearchable)->toHtml() ?>,
livewireId: <?php echo \Illuminate\Support\Js::from($this->getId())->toHtml() ?>,
hasDynamicOptions: <?php echo \Illuminate\Support\Js::from($hasDynamicOptions())->toHtml() ?>,
hasDynamicSearchResults: <?php echo \Illuminate\Support\Js::from($hasDynamicSearchResults())->toHtml() ?>,
loadingMessage: <?php echo \Illuminate\Support\Js::from($getLoadingMessage())->toHtml() ?>,
maxItems: <?php echo \Illuminate\Support\Js::from($getMaxItems())->toHtml() ?>,
maxItemsMessage: <?php echo \Illuminate\Support\Js::from($getMaxItemsMessage())->toHtml() ?>,
noSearchResultsMessage: <?php echo \Illuminate\Support\Js::from($getNoSearchResultsMessage())->toHtml() ?>,
options: <?php echo \Illuminate\Support\Js::from($getOptionsForJs())->toHtml() ?>,
optionsLimit: <?php echo \Illuminate\Support\Js::from($getOptionsLimit())->toHtml() ?>,
placeholder: <?php echo \Illuminate\Support\Js::from($getPlaceholder())->toHtml() ?>,
position: <?php echo \Illuminate\Support\Js::from($getPosition())->toHtml() ?>,
searchDebounce: <?php echo \Illuminate\Support\Js::from($getSearchDebounce())->toHtml() ?>,
searchingMessage: <?php echo \Illuminate\Support\Js::from($getSearchingMessage())->toHtml() ?>,
searchPrompt: <?php echo \Illuminate\Support\Js::from($getSearchPrompt())->toHtml() ?>,
searchableOptionFields: <?php echo \Illuminate\Support\Js::from($getSearchableOptionFields())->toHtml() ?>,
state: $wire.<?php echo e($applyStateBindingModifiers("\$entangle('{$statePath}')")); ?>,
statePath: <?php echo \Illuminate\Support\Js::from($statePath)->toHtml() ?>,
})"
wire:ignore
wire:key="<?php echo e($livewireKey); ?>.<?php echo e(substr(md5(serialize([
$isDisabled,
])), 0, 64)); ?>"
x-on:keydown.esc="select.dropdown.isActive && $event.stopPropagation()"
x-on:set-select-property="$event.detail.isDisabled ? select.disable() : select.enable()"
<?php echo e($attributes
->merge($getExtraAlpineAttributes(), escape: false)
->class(['fi-select-input'])); ?>
>
<div x-ref="select"></div>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal505efd9768415fdb4543e8c564dad437)): ?>
<?php $attributes = $__attributesOriginal505efd9768415fdb4543e8c564dad437; ?>
<?php unset($__attributesOriginal505efd9768415fdb4543e8c564dad437); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal505efd9768415fdb4543e8c564dad437)): ?>
<?php $component = $__componentOriginal505efd9768415fdb4543e8c564dad437; ?>
<?php unset($__componentOriginal505efd9768415fdb4543e8c564dad437); ?>
<?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal511d4862ff04963c3c16115c05a86a9d)): ?>
<?php $attributes = $__attributesOriginal511d4862ff04963c3c16115c05a86a9d; ?>
<?php unset($__attributesOriginal511d4862ff04963c3c16115c05a86a9d); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal511d4862ff04963c3c16115c05a86a9d)): ?>
<?php $component = $__componentOriginal511d4862ff04963c3c16115c05a86a9d; ?>
<?php unset($__componentOriginal511d4862ff04963c3c16115c05a86a9d); ?>
<?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/forms/resources/views/components/select.blade.php ENDPATH**/ ?>
@@ -0,0 +1,292 @@
<?php $__env->startSection('title', 'My Account - Additional Design'); ?>
<?php $__env->startSection('styles'); ?>
<style>
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.page-intro {
margin-bottom: var(--spacing-lg);
}
.page-intro p {
color: var(--text-secondary);
font-size: 1.1rem;
}
.account-grid {
display: grid;
grid-template-columns: 2fr 1fr;
gap: var(--spacing-lg);
margin-bottom: var(--spacing-lg);
}
.card {
background: white;
padding: var(--spacing-lg);
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.card h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.8rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
.card h3 {
font-family: var(--font-sans);
font-size: 1.3rem;
font-weight: 600;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
.form-group {
margin-bottom: var(--spacing-md);
}
.form-group label {
display: block;
font-weight: 600;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.form-group input,
.form-group textarea {
width: 100%;
padding: 0.75rem;
border: 1px solid var(--border-color);
border-radius: 4px;
font-size: 1rem;
font-family: inherit;
background-color: var(--bg-primary);
}
.form-group input:focus,
.form-group textarea:focus {
outline: none;
border-color: var(--text-primary);
box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05);
}
.account-type {
padding: var(--spacing-sm) 0;
}
.badge {
display: inline-block;
padding: 0.4rem 1rem;
border-radius: 20px;
font-size: 0.85rem;
font-weight: 600;
}
.badge-admin {
background-color: var(--accent-pink);
color: white;
}
.badge-customer {
background-color: var(--accent-light);
color: var(--text-primary);
}
.sidebar-card {
margin-bottom: var(--spacing-lg);
}
.sidebar-card ul {
list-style: none;
padding: 0;
}
.sidebar-card li {
padding: 0.75rem 0;
border-bottom: 1px solid var(--border-color);
}
.sidebar-card li:last-child {
border-bottom: none;
}
.sidebar-card a {
color: var(--text-primary);
font-weight: 500;
transition: var(--transition);
}
.sidebar-card a:hover {
color: var(--accent-dark);
}
.help-box {
background-color: var(--accent-light);
padding: var(--spacing-lg);
border-radius: 8px;
}
.help-box h3 {
margin-bottom: 0.5rem;
}
.help-box p {
font-size: 0.95rem;
margin-bottom: var(--spacing-sm);
}
.help-box a {
font-weight: 600;
color: var(--accent-dark);
}
.alert {
padding: var(--spacing-sm);
border-radius: 4px;
margin-bottom: var(--spacing-lg);
font-size: 0.9rem;
}
.alert-success {
background-color: #e8f5e9;
border: 1px solid #c8e6c9;
color: #2e7d32;
}
.btn-logout {
color: #c53030;
font-weight: 600;
cursor: pointer;
padding: 0;
border: none;
background: none;
transition: var(--transition);
}
.btn-logout:hover {
color: #a02424;
}
@media (max-width: 768px) {
.account-grid {
grid-template-columns: 1fr;
}
h1 {
font-size: 2rem;
}
.card h2 {
font-size: 1.5rem;
}
}
</style>
<?php $__env->stopSection(); ?>
<?php $__env->startSection('content'); ?>
<div class="container">
<div class="page-intro">
<h1>My Account</h1>
<p>Manage your profile and view your orders</p>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(session('success')): ?>
<div class="alert alert-success">
<?php echo e(session('success')); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<div class="account-grid">
<!-- Profile Section -->
<div>
<div class="card">
<h2>Profile Information</h2>
<form action="<?php echo e(route('my-account.update')); ?>" method="POST">
<?php echo csrf_field(); ?>
<div class="form-group">
<label for="name">Name</label>
<input type="text" id="name" name="name" value="<?php echo e(auth()->user()->name); ?>" required>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__errorArgs = ['name'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<p style="color: #c53030; font-size: 0.9rem; margin-top: 0.25rem;"><?php echo e($message); ?></p>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div class="form-group">
<label for="email">Email</label>
<input type="email" id="email" name="email" value="<?php echo e(auth()->user()->email); ?>" required>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__errorArgs = ['email'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<p style="color: #c53030; font-size: 0.9rem; margin-top: 0.25rem;"><?php echo e($message); ?></p>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div class="form-group account-type">
<label>Account Type</label>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(auth()->user()->is_admin): ?>
<span class="badge badge-admin">Admin</span>
<?php else: ?>
<span class="badge badge-customer">Customer</span>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<button type="submit" class="btn">Update Profile</button>
</form>
</div>
</div>
<!-- Sidebar -->
<div>
<div class="card sidebar-card">
<h3>Quick Links</h3>
<ul>
<li>
<a href="<?php echo e(route('my-orders')); ?>">📦 My Orders</a>
</li>
<li>
<a href="<?php echo e(route('custom-orders.create')); ?>"> New Custom Order</a>
</li>
</ul>
</div>
<div class="help-box">
<h3>Need Help?</h3>
<p>Contact us for assistance with your account or orders.</p>
<a href="mailto:support@example.com">support@example.com</a>
</div>
</div>
</div>
<div style="text-align: center; padding: var(--spacing-lg) 0; border-top: 1px solid var(--border-color);">
<form action="<?php echo e(route('logout')); ?>" method="POST" style="display: inline;">
<?php echo csrf_field(); ?>
<button type="submit" class="btn-logout">Sign Out</button>
</form>
</div>
</div>
<?php $__env->stopSection(); ?>
<?php echo $__env->make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?><?php /**PATH /var/www/additional_design/resources/views/account/profile.blade.php ENDPATH**/ ?>
@@ -1,198 +0,0 @@
<?php
use Filament\Support\Enums\Width;
$livewire ??= null;
$hasTopbar = filament()->hasTopbar();
$isSidebarCollapsibleOnDesktop = filament()->isSidebarCollapsibleOnDesktop();
$isSidebarFullyCollapsibleOnDesktop = filament()->isSidebarFullyCollapsibleOnDesktop();
$hasTopNavigation = filament()->hasTopNavigation();
$hasNavigation = filament()->hasNavigation();
$renderHookScopes = $livewire?->getRenderHookScopes();
$maxContentWidth ??= (filament()->getMaxContentWidth() ?? Width::SevenExtraLarge);
if (is_string($maxContentWidth)) {
$maxContentWidth = Width::tryFrom($maxContentWidth) ?? $maxContentWidth;
}
?>
<?php if (isset($component)) { $__componentOriginale960ae7ad1b1ce9e3596e483505fadc9 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginale960ae7ad1b1ce9e3596e483505fadc9 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.layout.base','data' => ['livewire' => $livewire,'class' => \Illuminate\Support\Arr::toCssClasses([
'fi-body-has-navigation' => $hasNavigation,
'fi-body-has-sidebar-collapsible-on-desktop' => $isSidebarCollapsibleOnDesktop,
'fi-body-has-sidebar-fully-collapsible-on-desktop' => $isSidebarFullyCollapsibleOnDesktop,
'fi-body-has-topbar' => $hasTopbar,
'fi-body-has-top-navigation' => $hasTopNavigation,
])]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::layout.base'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['livewire' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($livewire),'class' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Illuminate\Support\Arr::toCssClasses([
'fi-body-has-navigation' => $hasNavigation,
'fi-body-has-sidebar-collapsible-on-desktop' => $isSidebarCollapsibleOnDesktop,
'fi-body-has-sidebar-fully-collapsible-on-desktop' => $isSidebarFullyCollapsibleOnDesktop,
'fi-body-has-topbar' => $hasTopbar,
'fi-body-has-top-navigation' => $hasTopNavigation,
]))]); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasTopbar): ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::TOPBAR_BEFORE, scopes: $renderHookScopes)); ?>
<?php
$__split = function ($name, $params = []) {
return [$name, $params];
};
[$__name, $__params] = $__split(filament()->getTopbarLivewireComponent());
$key = null;
$key ??= \Livewire\Features\SupportCompiledWireKeys\SupportCompiledWireKeys::generateKey('lw-1155085427-0', null);
$__html = app('livewire')->mount($__name, $__params, $key);
echo $__html;
unset($__html);
unset($__name);
unset($__params);
unset($__split);
if (isset($__slots)) unset($__slots);
?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::TOPBAR_AFTER, scopes: $renderHookScopes)); ?>
<?php elseif($hasNavigation): ?>
<div
<?php if($isSidebarFullyCollapsibleOnDesktop): ?>
x-data="{}"
x-bind:class="{ 'lg:fi-hidden': $store.sidebar.isOpen }"
<?php endif; ?>
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-layout-sidebar-toggle-btn-ctn',
'lg:fi-hidden' => ! $isSidebarFullyCollapsibleOnDesktop,
]); ?>"
>
<?php if (isset($component)) { $__componentOriginalf0029cce6d19fd6d472097ff06a800a1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.icon-button','data' => ['color' => 'gray','icon' => \Filament\Support\Icons\Heroicon::OutlinedBars3,'iconAlias' => \Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON,'iconSize' => 'lg','label' => __('filament-panels::layout.actions.sidebar.expand.label'),'xCloak' => true,'xData' => '{}','xOn:click' => '$store.sidebar.open()','class' => 'fi-layout-sidebar-toggle-btn']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::icon-button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'gray','icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::OutlinedBars3),'icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON),'icon-size' => 'lg','label' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(__('filament-panels::layout.actions.sidebar.expand.label')),'x-cloak' => true,'x-data' => '{}','x-on:click' => '$store.sidebar.open()','class' => 'fi-layout-sidebar-toggle-btn']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $attributes = $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $component = $__componentOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<div class="fi-layout">
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::LAYOUT_START, scopes: $renderHookScopes)); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasNavigation): ?>
<div
x-cloak
x-data="{}"
x-on:click="$store.sidebar.close()"
x-show="$store.sidebar.isOpen"
x-transition.opacity.300ms
class="fi-sidebar-close-overlay"
></div>
<?php
$__split = function ($name, $params = []) {
return [$name, $params];
};
[$__name, $__params] = $__split(filament()->getSidebarLivewireComponent());
$key = null;
$key ??= \Livewire\Features\SupportCompiledWireKeys\SupportCompiledWireKeys::generateKey('lw-1155085427-1', null);
$__html = app('livewire')->mount($__name, $__params, $key);
echo $__html;
unset($__html);
unset($__name);
unset($__params);
unset($__split);
if (isset($__slots)) unset($__slots);
?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<div
<?php if($isSidebarCollapsibleOnDesktop): ?>
x-data="{}"
x-bind:class="{
'fi-main-ctn-sidebar-open': $store.sidebar.isOpen,
}"
x-bind:style="'display: flex; opacity:1;'"
<?php elseif($isSidebarFullyCollapsibleOnDesktop): ?>
x-data="{}"
x-bind:class="{
'fi-main-ctn-sidebar-open': $store.sidebar.isOpen,
}"
x-bind:style="'display: flex; opacity:1;'"
<?php elseif(! ($isSidebarCollapsibleOnDesktop || $isSidebarFullyCollapsibleOnDesktop || $hasTopNavigation || (! $hasNavigation))): ?>
x-data="{}"
x-bind:style="'display: flex; opacity:1;'"
<?php endif; ?>
class="fi-main-ctn"
>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::CONTENT_BEFORE, scopes: $renderHookScopes)); ?>
<main
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-main',
($maxContentWidth instanceof Width) ? "fi-width-{$maxContentWidth->value}" : $maxContentWidth,
]); ?>"
>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::CONTENT_START, scopes: $renderHookScopes)); ?>
<?php echo e($slot); ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::CONTENT_END, scopes: $renderHookScopes)); ?>
</main>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::CONTENT_AFTER, scopes: $renderHookScopes)); ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::FOOTER, scopes: $renderHookScopes)); ?>
</div>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::LAYOUT_END, scopes: $renderHookScopes)); ?>
</div>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginale960ae7ad1b1ce9e3596e483505fadc9)): ?>
<?php $attributes = $__attributesOriginale960ae7ad1b1ce9e3596e483505fadc9; ?>
<?php unset($__attributesOriginale960ae7ad1b1ce9e3596e483505fadc9); ?>
<?php endif; ?>
<?php if (isset($__componentOriginale960ae7ad1b1ce9e3596e483505fadc9)): ?>
<?php $component = $__componentOriginale960ae7ad1b1ce9e3596e483505fadc9; ?>
<?php unset($__componentOriginale960ae7ad1b1ce9e3596e483505fadc9); ?>
<?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/components/layout/index.blade.php ENDPATH**/ ?>
@@ -1,65 +0,0 @@
<?php
$brandName = filament()->getBrandName();
$brandLogo = filament()->getBrandLogo();
$brandLogoHeight = filament()->getBrandLogoHeight() ?? '1.5rem';
$darkModeBrandLogo = filament()->getDarkModeBrandLogo();
$hasDarkModeBrandLogo = filled($darkModeBrandLogo);
$getLogoClasses = fn (bool $isDarkMode): string => \Illuminate\Support\Arr::toCssClasses([
'fi-logo',
'fi-logo-light' => $hasDarkModeBrandLogo && (! $isDarkMode),
'fi-logo-dark' => $isDarkMode,
]);
$logoStyles = "height: {$brandLogoHeight}";
?>
<?php $content = (function ($args) {
return function ($logo, $isDarkMode = false) use ($args) {
extract($args, EXTR_SKIP);
ob_start(); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($logo instanceof \Illuminate\Contracts\Support\Htmlable): ?>
<div
<?php echo e($attributes
->class([$getLogoClasses($isDarkMode)])
->style([$logoStyles])); ?>
>
<?php echo e($logo); ?>
</div>
<?php elseif(filled($logo)): ?>
<img
alt="<?php echo e(__('filament-panels::layout.logo.alt', ['name' => $brandName])); ?>"
src="<?php echo e($logo); ?>"
<?php echo e($attributes
->class([$getLogoClasses($isDarkMode)])
->style([$logoStyles])); ?>
/>
<?php else: ?>
<div
<?php echo e($attributes->class([
$getLogoClasses($isDarkMode),
])); ?>
>
<?php echo e($brandName); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php return new \Illuminate\Support\HtmlString(ob_get_clean()); };
})(get_defined_vars()); ?>
<?php echo e($content($brandLogo)); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasDarkModeBrandLogo): ?>
<?php echo e($content($darkModeBrandLogo, isDarkMode: true)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/components/logo.blade.php ENDPATH**/ ?>
@@ -1,286 +0,0 @@
<?php
use Filament\Support\Enums\IconPosition;
use Filament\Support\Enums\IconSize;
use Filament\Support\Enums\Size;
use Filament\Support\View\Components\BadgeComponent;
use Filament\Support\View\Components\ButtonComponent;
use Illuminate\View\ComponentAttributeBag;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'badge' => null,
'badgeColor' => 'primary',
'badgeSize' => Size::ExtraSmall,
'color' => 'primary',
'disabled' => false,
'form' => null,
'formId' => null,
'href' => null,
'icon' => null,
'iconAlias' => null,
'iconPosition' => IconPosition::Before,
'iconSize' => null,
'keyBindings' => null,
'labeledFrom' => null,
'labelSrOnly' => false,
'loadingIndicator' => true,
'outlined' => false,
'size' => Size::Medium,
'spaMode' => null,
'tag' => 'button',
'target' => null,
'tooltip' => null,
'type' => 'button',
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'badge' => null,
'badgeColor' => 'primary',
'badgeSize' => Size::ExtraSmall,
'color' => 'primary',
'disabled' => false,
'form' => null,
'formId' => null,
'href' => null,
'icon' => null,
'iconAlias' => null,
'iconPosition' => IconPosition::Before,
'iconSize' => null,
'keyBindings' => null,
'labeledFrom' => null,
'labelSrOnly' => false,
'loadingIndicator' => true,
'outlined' => false,
'size' => Size::Medium,
'spaMode' => null,
'tag' => 'button',
'target' => null,
'tooltip' => null,
'type' => 'button',
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
if (! $iconPosition instanceof IconPosition) {
$iconPosition = filled($iconPosition) ? (IconPosition::tryFrom($iconPosition) ?? $iconPosition) : null;
}
if (! $size instanceof Size) {
$size = filled($size) ? (Size::tryFrom($size) ?? $size) : null;
}
if (! $badgeSize instanceof Size) {
$badgeSize = filled($badgeSize) ? (Size::tryFrom($badgeSize) ?? $badgeSize) : null;
}
if (filled($iconSize) && (! $iconSize instanceof IconSize)) {
$iconSize = IconSize::tryFrom($iconSize) ?? $iconSize;
}
$iconSize ??= match ($size) {
Size::ExtraSmall, Size::Small => IconSize::Small,
default => null,
};
$wireTarget = $loadingIndicator ? $attributes->whereStartsWith(['wire:target', 'wire:click'])->filter(fn ($value): bool => filled($value))->first() : null;
$hasFormProcessingLoadingIndicator = $type === 'submit' && filled($form);
$hasLoadingIndicator = filled($wireTarget) || $hasFormProcessingLoadingIndicator;
if ($hasLoadingIndicator) {
$loadingIndicatorTarget = html_entity_decode($wireTarget ?: $form, ENT_QUOTES);
}
$hasTooltip = filled($tooltip);
?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($labeledFrom): ?>
<?php if (isset($component)) { $__componentOriginalf0029cce6d19fd6d472097ff06a800a1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.icon-button','data' => ['badge' => $badge,'badgeColor' => $badgeColor,'badgeSize' => $badgeSize,'color' => $color,'disabled' => $disabled,'form' => $form,'formId' => $formId,'href' => $href,'icon' => $icon,'iconAlias' => $iconAlias,'iconSize' => $iconSize,'keyBindings' => $keyBindings,'label' => $slot,'loadingIndicator' => $loadingIndicator,'size' => $size,'spaMode' => $spaMode,'tag' => $tag,'target' => $target,'tooltip' => $tooltip,'type' => $type,'attributes' => \Filament\Support\prepare_inherited_attributes($attributes)]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::icon-button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['badge' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($badge),'badge-color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($badgeColor),'badge-size' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($badgeSize),'color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($color),'disabled' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($disabled),'form' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($form),'form-id' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($formId),'href' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($href),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($icon),'icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($iconAlias),'icon-size' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($iconSize),'key-bindings' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($keyBindings),'label' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($slot),'loading-indicator' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($loadingIndicator),'size' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($size),'spa-mode' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($spaMode),'tag' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($tag),'target' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($target),'tooltip' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($tooltip),'type' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($type),'attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\prepare_inherited_attributes($attributes))]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $attributes = $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $component = $__componentOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<<?php echo e($tag); ?>
<?php if(($tag === 'a') && (! ($disabled && $hasTooltip))): ?>
<?php echo e(\Filament\Support\generate_href_html($href, $target === '_blank', $spaMode)); ?>
<?php endif; ?>
<?php if($keyBindings): ?>
x-bind:id="$id('key-bindings')"
x-mousetrap.global.<?php echo e(collect($keyBindings)->map(fn (string $keyBinding): string => str_replace('+', '-', $keyBinding))->implode('.')); ?>="document.getElementById($el.id)?.click()"
<?php endif; ?>
<?php if($hasTooltip): ?>
x-tooltip="{
content: <?php echo \Illuminate\Support\Js::from($tooltip)->toHtml() ?>,
theme: $store.theme,
allowHTML: <?php echo \Illuminate\Support\Js::from($tooltip instanceof \Illuminate\Contracts\Support\Htmlable)->toHtml() ?>,
}"
<?php endif; ?>
<?php if($hasFormProcessingLoadingIndicator): ?>
x-data="filamentFormButton"
x-bind:class="{ 'fi-processing': isProcessing }"
<?php endif; ?>
<?php echo e($attributes
->merge([
'aria-disabled' => $disabled ? 'true' : null,
'aria-label' => $labelSrOnly ? trim(strip_tags($slot->toHtml())) : null,
'disabled' => $disabled && blank($tooltip),
'form' => $formId,
'type' => $tag === 'button' ? $type : null,
'wire:loading.attr' => $tag === 'button' ? 'disabled' : null,
'wire:target' => ($hasLoadingIndicator && $loadingIndicatorTarget) ? $loadingIndicatorTarget : null,
'x-bind:disabled' => $hasFormProcessingLoadingIndicator ? 'isProcessing' : null,
'x-bind:aria-label' => ($labelSrOnly && $hasFormProcessingLoadingIndicator) ? ('isProcessing ? processingMessage : ' . \Illuminate\Support\Js::from(trim(strip_tags($slot->toHtml())))) : null,
], escape: false)
->when(
$disabled && $hasTooltip,
fn (ComponentAttributeBag $attributes) => $attributes->filter(
fn (mixed $value, string $key): bool => ! str($key)->startsWith(['href', 'x-on:', 'wire:click']),
),
)
->class([
'fi-btn',
'fi-disabled' => $disabled,
'fi-outlined' => $outlined,
($size instanceof Size) ? "fi-size-{$size->value}" : (is_string($size) ? $size : ''),
is_string($labeledFrom) ? "fi-labeled-from-{$labeledFrom}" : null,
])
->color(app(ButtonComponent::class, ['isOutlined' => $outlined]), $color)); ?>
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($iconPosition === IconPosition::Before): ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($icon): ?>
<?php echo e(\Filament\Support\generate_icon_html($icon, $iconAlias, (new \Illuminate\View\ComponentAttributeBag([
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => $hasLoadingIndicator,
'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
])), size: $iconSize)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasLoadingIndicator): ?>
<?php echo e(\Filament\Support\generate_loading_indicator_html((new \Illuminate\View\ComponentAttributeBag([
'wire:loading.delay.' . config('filament.livewire_loading_delay', 'default') => '',
'wire:target' => $loadingIndicatorTarget,
])), size: $iconSize)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasFormProcessingLoadingIndicator): ?>
<?php echo e(\Filament\Support\generate_loading_indicator_html((new \Illuminate\View\ComponentAttributeBag([
'x-cloak' => 'x-cloak',
'x-show' => 'isProcessing',
])), size: $iconSize)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(! $labelSrOnly): ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasFormProcessingLoadingIndicator): ?>
<span x-show="! isProcessing">
<?php echo e($slot); ?>
</span>
<?php else: ?>
<?php echo e($slot); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasFormProcessingLoadingIndicator && (! $labelSrOnly)): ?>
<span
x-cloak
x-show="isProcessing"
x-text="processingMessage"
></span>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($iconPosition === IconPosition::After): ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($icon): ?>
<?php echo e(\Filament\Support\generate_icon_html($icon, $iconAlias, (new \Illuminate\View\ComponentAttributeBag([
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => $hasLoadingIndicator,
'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
])), size: $iconSize)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasLoadingIndicator): ?>
<?php echo e(\Filament\Support\generate_loading_indicator_html((new \Illuminate\View\ComponentAttributeBag([
'wire:loading.delay.' . config('filament.livewire_loading_delay', 'default') => '',
'wire:target' => $loadingIndicatorTarget,
])), size: $iconSize)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasFormProcessingLoadingIndicator): ?>
<?php echo e(\Filament\Support\generate_loading_indicator_html((new \Illuminate\View\ComponentAttributeBag([
'x-cloak' => 'x-cloak',
'x-show' => 'isProcessing',
])), size: $iconSize)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($badge)): ?>
<div class="fi-btn-badge-ctn">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($badge instanceof \Illuminate\View\ComponentSlot): ?>
<?php echo e($badge); ?>
<?php else: ?>
<span
<?php echo e((new ComponentAttributeBag)->color(BadgeComponent::class, $badgeColor)->class([
'fi-badge',
($badgeSize instanceof Size) ? "fi-size-{$badgeSize->value}" : (is_string($badgeSize) ? $badgeSize : ''),
])); ?>
>
<?php echo e($badge); ?>
</span>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</<?php echo e($tag); ?>>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/button/index.blade.php ENDPATH**/ ?>
@@ -0,0 +1,7 @@
<?php $__env->startSection('title', __('Page Expired')); ?>
<?php $__env->startSection('code', '419'); ?>
<?php $__env->startSection('message', __('Page Expired')); ?>
<?php echo $__env->make('errors::minimal', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?><?php /**PATH /var/www/additional_design/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/views/419.blade.php ENDPATH**/ ?>
@@ -1,101 +0,0 @@
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'heading' => null,
'subheading' => null,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'heading' => null,
'subheading' => null,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
$heading ??= $this->getHeading();
$subheading ??= $this->getSubHeading();
$hasLogo = $this->hasLogo();
?>
<div <?php echo e($attributes->class(['fi-simple-page'])); ?>>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SIMPLE_PAGE_START, scopes: $this->getRenderHookScopes())); ?>
<div class="fi-simple-page-content">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($heading) || $hasLogo || filled($subheading)): ?>
<?php if (isset($component)) { $__componentOriginal2a251355e952c89de8b30f2844a671a7 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal2a251355e952c89de8b30f2844a671a7 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.header.simple','data' => ['heading' => $heading,'logo' => $hasLogo,'subheading' => $subheading]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::header.simple'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['heading' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($heading),'logo' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($hasLogo),'subheading' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($subheading)]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal2a251355e952c89de8b30f2844a671a7)): ?>
<?php $attributes = $__attributesOriginal2a251355e952c89de8b30f2844a671a7; ?>
<?php unset($__attributesOriginal2a251355e952c89de8b30f2844a671a7); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal2a251355e952c89de8b30f2844a671a7)): ?>
<?php $component = $__componentOriginal2a251355e952c89de8b30f2844a671a7; ?>
<?php unset($__componentOriginal2a251355e952c89de8b30f2844a671a7); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e($slot); ?>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(! $this instanceof \Filament\Tables\Contracts\HasTable): ?>
<?php if (isset($component)) { $__componentOriginal028e05680f6c5b1e293abd7fbe5f9758 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-actions::components.modals','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-actions::modals'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758)): ?>
<?php $attributes = $__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758; ?>
<?php unset($__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal028e05680f6c5b1e293abd7fbe5f9758)): ?>
<?php $component = $__componentOriginal028e05680f6c5b1e293abd7fbe5f9758; ?>
<?php unset($__componentOriginal028e05680f6c5b1e293abd7fbe5f9758); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SIMPLE_PAGE_END, scopes: $this->getRenderHookScopes())); ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/components/page/simple.blade.php ENDPATH**/ ?>
@@ -1,23 +0,0 @@
<?php if (isset($component)) { $__componentOriginal166a02a7c5ef5a9331faf66fa665c256 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal166a02a7c5ef5a9331faf66fa665c256 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.page.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::page'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo e($this->content); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal166a02a7c5ef5a9331faf66fa665c256)): ?>
<?php $attributes = $__attributesOriginal166a02a7c5ef5a9331faf66fa665c256; ?>
<?php unset($__attributesOriginal166a02a7c5ef5a9331faf66fa665c256); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal166a02a7c5ef5a9331faf66fa665c256)): ?>
<?php $component = $__componentOriginal166a02a7c5ef5a9331faf66fa665c256; ?>
<?php unset($__componentOriginal166a02a7c5ef5a9331faf66fa665c256); ?>
<?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/pages/page.blade.php ENDPATH**/ ?>
@@ -1,59 +0,0 @@
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'icon',
'theme',
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'icon',
'theme',
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
$label = __("filament-panels::layout.actions.theme_switcher.{$theme}.label");
?>
<button
aria-label="<?php echo e($label); ?>"
type="button"
x-on:click="(theme = <?php echo \Illuminate\Support\Js::from($theme)->toHtml() ?>) && close()"
x-tooltip="{
content: <?php echo \Illuminate\Support\Js::from($label)->toHtml() ?>,
theme: $store.theme,
}"
x-bind:class="{ 'fi-active': theme === <?php echo \Illuminate\Support\Js::from($theme)->toHtml() ?> }"
class="fi-theme-switcher-btn"
>
<?php echo e(\Filament\Support\generate_icon_html($icon, alias: match ($theme) {
'light' => \Filament\View\PanelsIconAlias::THEME_SWITCHER_LIGHT_BUTTON,
'dark' => \Filament\View\PanelsIconAlias::THEME_SWITCHER_DARK_BUTTON,
'system' => \Filament\View\PanelsIconAlias::THEME_SWITCHER_SYSTEM_BUTTON,
})); ?>
</button>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/components/theme-switcher/button.blade.php ENDPATH**/ ?>
@@ -1,70 +0,0 @@
<?php
use Filament\Support\Enums\IconSize;
use Filament\Support\View\Components\DropdownComponent\HeaderComponent;
use Illuminate\View\ComponentAttributeBag;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'color' => 'gray',
'icon' => null,
'iconSize' => null,
'tag' => 'div',
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'color' => 'gray',
'icon' => null,
'iconSize' => null,
'tag' => 'div',
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
if (! ($iconSize instanceof IconSize)) {
$iconSize = filled($iconSize) ? (IconSize::tryFrom($iconSize) ?? $iconSize) : null;
}
?>
<<?php echo e($tag); ?>
<?php echo e($attributes
->class([
'fi-dropdown-header',
])
->color(HeaderComponent::class, $color)); ?>
>
<?php echo e(\Filament\Support\generate_icon_html($icon, size: $iconSize)); ?>
<span>
<?php echo e($slot); ?>
</span>
</<?php echo e($tag); ?>>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/dropdown/header.blade.php ENDPATH**/ ?>
@@ -1,52 +0,0 @@
<?php
use Filament\Support\Enums\Alignment;
use Filament\Support\Enums\VerticalAlignment;
?>
<div>
<div
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-no',
'fi-align-' . static::$alignment->value,
'fi-vertical-align-' . static::$verticalAlignment->value,
]); ?>"
role="status"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $notifications; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $notification): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php echo e($notification); ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($broadcastChannel = $this->getBroadcastChannel()): ?>
<?php
$__scriptKey = '837482709-0';
ob_start();
?>
<script>
window.addEventListener('EchoLoaded', () => {
window.Echo.private(<?php echo \Illuminate\Support\Js::from($broadcastChannel)->toHtml() ?>).notification(
(notification) => {
setTimeout(
() =>
$wire.handleBroadcastNotification(
notification,
),
500,
)
},
)
})
if (window.Echo) {
window.dispatchEvent(new CustomEvent('EchoLoaded'))
}
</script>
<?php
$__output = ob_get_clean();
\Livewire\store($this)->push('scripts', $__output, $__scriptKey)
?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/notifications/resources/views/notifications.blade.php ENDPATH**/ ?>
@@ -429,7 +429,7 @@
<!-- Print Stock Selection -->
<div class="quantity-selector" style="flex-direction: column; align-items: flex-start; gap: 0.5rem; margin-bottom: 2rem;">
<label for="print_stock_id" style="font-weight: 600;">Select Print Stock:</label>
<select id="print_stock_id" name="print_stock_id" required style="width: 100%; padding: 0.75rem; border: 1px solid #ddd; border-radius: 4px; font-size: 1rem;">
<select id="print_stock_id" name="print_stock_id" required style=" font-family: var(--font-sans); width: 100%; padding: 0.75rem; border: 1px solid #ddd; border-radius: 4px; font-size: 1rem;">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $product->printStocks; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $stock): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<option value="<?php echo e($stock->id); ?>"
data-cost="<?php echo e($product->type === 'wallpaper' ? $stock->cost_per_meter : $stock->cost_per_m2); ?>"
@@ -452,7 +452,7 @@
<div class="quantity-selector" style="flex-direction: column; align-items: flex-start; gap: 0.5rem;">
<label for="length">Length Required (meters):</label>
<input type="number" id="length" name="length" min="1" step="0.5" value="3" required style="width: 150px;">
<input type="number" id="length" name="length" min="1" step="0.5" value="3" required style="font-family: var(--font-sans); width: 150px;">
<small style="color: #666;">Recommended: Add 0.5m for pattern matching and trimming</small>
</div>
<?php elseif($product->type === 'mural'): ?>
@@ -542,12 +542,12 @@
<div class="calc-input-group">
<label for="calc-wall-width">Wall Width (meters):</label>
<input type="number" id="calc-wall-width" min="0.1" step="0.1" value="4" oninput="calculateWallpaper()">
<input style="font-family: var(--font-sans);" type="number" id="calc-wall-width" min="0.1" step="0.1" value="4" oninput="calculateWallpaper()">
</div>
<div class="calc-input-group">
<label for="calc-wall-height">Wall Height (meters):</label>
<input type="number" id="calc-wall-height" min="0.1" step="0.1" value="2.7" oninput="calculateWallpaper()">
<input style="font-family: var(--font-sans);" type="number" id="calc-wall-height" min="0.1" step="0.1" value="2.7" oninput="calculateWallpaper()">
</div>
<div class="calc-input-group">
@@ -1,342 +0,0 @@
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'active' => false,
'collapsible' => true,
'icon' => null,
'items' => [],
'label' => null,
'sidebarCollapsible' => true,
'subNavigation' => false,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'active' => false,
'collapsible' => true,
'icon' => null,
'items' => [],
'label' => null,
'sidebarCollapsible' => true,
'subNavigation' => false,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
$sidebarCollapsible = $sidebarCollapsible && filament()->isSidebarCollapsibleOnDesktop();
$hasDropdown = filled($label) && filled($icon) && $sidebarCollapsible;
?>
<li
x-data="{ label: <?php echo \Illuminate\Support\Js::from($subNavigation ? "sub_navigation_{$label}" : $label)->toHtml() ?> }"
data-group-label="<?php echo e($subNavigation ? "sub_navigation_{$label}" : $label); ?>"
x-bind:class="{ 'fi-collapsed': $store.sidebar.groupIsCollapsed(label) }"
<?php echo e($attributes->class([
'fi-sidebar-group',
'fi-active' => $active,
'fi-collapsible' => $collapsible,
])); ?>
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($label): ?>
<div
<?php if($collapsible): ?>
x-on:click="$store.sidebar.toggleCollapsedGroup(label)"
role="button"
<?php endif; ?>
<?php if($sidebarCollapsible): ?>
x-show="$store.sidebar.isOpen"
x-transition:enter="fi-transition-enter"
x-transition:enter-start="fi-transition-enter-start"
x-transition:enter-end="fi-transition-enter-end"
<?php endif; ?>
class="fi-sidebar-group-btn"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($icon): ?>
<?php echo e(\Filament\Support\generate_icon_html($icon, size: \Filament\Support\Enums\IconSize::Large)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<span class="fi-sidebar-group-label">
<?php echo e($label); ?>
</span>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($collapsible): ?>
<?php if (isset($component)) { $__componentOriginalf0029cce6d19fd6d472097ff06a800a1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.icon-button','data' => ['color' => 'gray','icon' => \Filament\Support\Icons\Heroicon::ChevronUp,'iconAlias' => \Filament\View\PanelsIconAlias::SIDEBAR_GROUP_COLLAPSE_BUTTON,'label' => $label,'xBind:ariaExpanded' => '! $store.sidebar.groupIsCollapsed(label)','xOn:click.stop' => '$store.sidebar.toggleCollapsedGroup(label)','class' => 'fi-sidebar-group-collapse-btn']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::icon-button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'gray','icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::ChevronUp),'icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\View\PanelsIconAlias::SIDEBAR_GROUP_COLLAPSE_BUTTON),'label' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($label),'x-bind:aria-expanded' => '! $store.sidebar.groupIsCollapsed(label)','x-on:click.stop' => '$store.sidebar.toggleCollapsedGroup(label)','class' => 'fi-sidebar-group-collapse-btn']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $attributes = $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $component = $__componentOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasDropdown): ?>
<?php if (isset($component)) { $__componentOriginal22ab0dbc2c6619d5954111bba06f01db = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal22ab0dbc2c6619d5954111bba06f01db = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.index','data' => ['placement' => (__('filament-panels::layout.direction') === 'rtl') ? 'left-start' : 'right-start','xShow' => '! $store.sidebar.isOpen']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['placement' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute((__('filament-panels::layout.direction') === 'rtl') ? 'left-start' : 'right-start'),'x-show' => '! $store.sidebar.isOpen']); ?>
<?php $__env->slot('trigger', null, []); ?>
<button
x-data="{ tooltip: false }"
x-effect="
tooltip = $store.sidebar.isOpen
? false
: {
content: <?php echo \Illuminate\Support\Js::from($label)->toHtml() ?>,
placement: document.dir === 'rtl' ? 'left' : 'right',
theme: $store.theme,
}
"
x-tooltip.html="tooltip"
class="fi-sidebar-group-dropdown-trigger-btn"
>
<?php echo e(\Filament\Support\generate_icon_html($icon, size: \Filament\Support\Enums\IconSize::Large)); ?>
</button>
<?php $__env->endSlot(); ?>
<?php
$lists = [];
foreach ($items as $item) {
if ($childItems = $item->getChildItems()) {
$lists[] = [
$item,
...$childItems,
];
$lists[] = [];
continue;
}
if (empty($lists)) {
$lists[] = [$item];
continue;
}
$lists[count($lists) - 1][] = $item;
}
if (empty($lists[count($lists) - 1])) {
array_pop($lists);
}
?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($label)): ?>
<?php if (isset($component)) { $__componentOriginal7a83b62094aac4ed8d85f403cf23f250 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal7a83b62094aac4ed8d85f403cf23f250 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.header','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown.header'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo e($label); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal7a83b62094aac4ed8d85f403cf23f250)): ?>
<?php $attributes = $__attributesOriginal7a83b62094aac4ed8d85f403cf23f250; ?>
<?php unset($__attributesOriginal7a83b62094aac4ed8d85f403cf23f250); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal7a83b62094aac4ed8d85f403cf23f250)): ?>
<?php $component = $__componentOriginal7a83b62094aac4ed8d85f403cf23f250; ?>
<?php unset($__componentOriginal7a83b62094aac4ed8d85f403cf23f250); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $lists; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $list): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php if (isset($component)) { $__componentOriginal66687bf0670b9e16f61e667468dc8983 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal66687bf0670b9e16f61e667468dc8983 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.list.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown.list'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $list; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php
$itemIsActive = $item->isActive();
$itemBadge = $item->getBadge();
$itemBadgeColor = $item->getBadgeColor();
$itemBadgeTooltip = $item->getBadgeTooltip();
$itemUrl = $item->getUrl();
$itemIcon = $itemIsActive ? ($item->getActiveIcon() ?? $item->getIcon()) : $item->getIcon();
$shouldItemOpenUrlInNewTab = $item->shouldOpenUrlInNewTab();
?>
<?php if (isset($component)) { $__componentOriginal1bd4d8e254cc40cdb05bd99df3e63f78 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal1bd4d8e254cc40cdb05bd99df3e63f78 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.list.item','data' => ['badge' => $itemBadge,'badgeColor' => $itemBadgeColor,'badgeTooltip' => $itemBadgeTooltip,'color' => $itemIsActive ? 'primary' : 'gray','href' => $itemUrl,'icon' => $itemIcon,'tag' => 'a','target' => $shouldItemOpenUrlInNewTab ? '_blank' : null]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown.list.item'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['badge' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadge),'badge-color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadgeColor),'badge-tooltip' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadgeTooltip),'color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemIsActive ? 'primary' : 'gray'),'href' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemUrl),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemIcon),'tag' => 'a','target' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($shouldItemOpenUrlInNewTab ? '_blank' : null)]); ?>
<?php echo e($item->getLabel()); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal1bd4d8e254cc40cdb05bd99df3e63f78)): ?>
<?php $attributes = $__attributesOriginal1bd4d8e254cc40cdb05bd99df3e63f78; ?>
<?php unset($__attributesOriginal1bd4d8e254cc40cdb05bd99df3e63f78); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal1bd4d8e254cc40cdb05bd99df3e63f78)): ?>
<?php $component = $__componentOriginal1bd4d8e254cc40cdb05bd99df3e63f78; ?>
<?php unset($__componentOriginal1bd4d8e254cc40cdb05bd99df3e63f78); ?>
<?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal66687bf0670b9e16f61e667468dc8983)): ?>
<?php $attributes = $__attributesOriginal66687bf0670b9e16f61e667468dc8983; ?>
<?php unset($__attributesOriginal66687bf0670b9e16f61e667468dc8983); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal66687bf0670b9e16f61e667468dc8983)): ?>
<?php $component = $__componentOriginal66687bf0670b9e16f61e667468dc8983; ?>
<?php unset($__componentOriginal66687bf0670b9e16f61e667468dc8983); ?>
<?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal22ab0dbc2c6619d5954111bba06f01db)): ?>
<?php $attributes = $__attributesOriginal22ab0dbc2c6619d5954111bba06f01db; ?>
<?php unset($__attributesOriginal22ab0dbc2c6619d5954111bba06f01db); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal22ab0dbc2c6619d5954111bba06f01db)): ?>
<?php $component = $__componentOriginal22ab0dbc2c6619d5954111bba06f01db; ?>
<?php unset($__componentOriginal22ab0dbc2c6619d5954111bba06f01db); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<ul
<?php if(filled($label)): ?>
<?php if($sidebarCollapsible): ?>
x-show="$store.sidebar.isOpen ? ! $store.sidebar.groupIsCollapsed(label) : ! <?php echo \Illuminate\Support\Js::from($hasDropdown)->toHtml() ?>"
<?php else: ?>
x-show="! $store.sidebar.groupIsCollapsed(label)"
<?php endif; ?>
x-collapse.duration.200ms
<?php endif; ?>
<?php if($sidebarCollapsible): ?>
x-transition:enter="fi-transition-enter"
x-transition:enter-start="fi-transition-enter-start"
x-transition:enter-end="fi-transition-enter-end"
<?php endif; ?>
class="fi-sidebar-group-items"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $items; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php
$isItemChildItemsActive = $item->isChildItemsActive();
$isItemActive = (! $isItemChildItemsActive) && $item->isActive();
$itemActiveIcon = $item->getActiveIcon();
$itemBadge = $item->getBadge();
$itemBadgeColor = $item->getBadgeColor();
$itemBadgeTooltip = $item->getBadgeTooltip();
$itemChildItems = $item->getChildItems();
$itemIcon = $item->getIcon();
$shouldItemOpenUrlInNewTab = $item->shouldOpenUrlInNewTab();
$itemUrl = $item->getUrl();
if ($icon) {
if ($hasDropdown || (blank($itemIcon) && blank($itemActiveIcon))) {
$itemIcon = null;
$itemActiveIcon = null;
} else {
throw new \Exception('Navigation group [' . $label . '] has an icon but one or more of its items also have icons. Either the group or its items can have icons, but not both. This is to ensure a proper user experience.');
}
}
?>
<?php if (isset($component)) { $__componentOriginal7edbc33aaa546e1feb86647dcd0e4eb8 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal7edbc33aaa546e1feb86647dcd0e4eb8 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.sidebar.item','data' => ['active' => $isItemActive,'activeChildItems' => $isItemChildItemsActive,'activeIcon' => $itemActiveIcon,'badge' => $itemBadge,'badgeColor' => $itemBadgeColor,'badgeTooltip' => $itemBadgeTooltip,'childItems' => $itemChildItems,'first' => $loop->first,'grouped' => filled($label),'icon' => $itemIcon,'last' => $loop->last,'shouldOpenUrlInNewTab' => $shouldItemOpenUrlInNewTab,'sidebarCollapsible' => $sidebarCollapsible,'subNavigation' => $subNavigation,'url' => $itemUrl]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::sidebar.item'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['active' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isItemActive),'active-child-items' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isItemChildItemsActive),'active-icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemActiveIcon),'badge' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadge),'badge-color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadgeColor),'badge-tooltip' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadgeTooltip),'child-items' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemChildItems),'first' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($loop->first),'grouped' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(filled($label)),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemIcon),'last' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($loop->last),'should-open-url-in-new-tab' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($shouldItemOpenUrlInNewTab),'sidebar-collapsible' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($sidebarCollapsible),'sub-navigation' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($subNavigation),'url' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemUrl)]); ?>
<?php echo e($item->getLabel()); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($itemIcon instanceof \Illuminate\Contracts\Support\Htmlable): ?>
<?php $__env->slot('icon', null, []); ?>
<?php echo e($itemIcon); ?>
<?php $__env->endSlot(); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($itemActiveIcon instanceof \Illuminate\Contracts\Support\Htmlable): ?>
<?php $__env->slot('activeIcon', null, []); ?>
<?php echo e($itemActiveIcon); ?>
<?php $__env->endSlot(); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal7edbc33aaa546e1feb86647dcd0e4eb8)): ?>
<?php $attributes = $__attributesOriginal7edbc33aaa546e1feb86647dcd0e4eb8; ?>
<?php unset($__attributesOriginal7edbc33aaa546e1feb86647dcd0e4eb8); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal7edbc33aaa546e1feb86647dcd0e4eb8)): ?>
<?php $component = $__componentOriginal7edbc33aaa546e1feb86647dcd0e4eb8; ?>
<?php unset($__componentOriginal7edbc33aaa546e1feb86647dcd0e4eb8); ?>
<?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</ul>
</li>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/components/sidebar/group.blade.php ENDPATH**/ ?>
@@ -1,67 +0,0 @@
<?php
$extraAttributes = $getExtraAttributes();
$id = $getId();
?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($id) || filled($extraAttributes)): ?>
<?php echo '<div'; ?>
<?php echo e($attributes
->merge([
'id' => $id,
], escape: false)
->merge($extraAttributes, escape: false)); ?>
>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($key = $getLivewireKey())): ?>
<?php
$__split = function ($name, $params = []) {
return [$name, $params];
};
[$__name, $__params] = $__split($getComponent(), $getComponentProperties());
$key = $key;
$key ??= \Livewire\Features\SupportCompiledWireKeys\SupportCompiledWireKeys::generateKey('lw-2569311901-0', $key);
$__html = app('livewire')->mount($__name, $__params, $key);
echo $__html;
unset($__html);
unset($__name);
unset($__params);
unset($__split);
if (isset($__slots)) unset($__slots);
?>
<?php else: ?>
<?php
$__split = function ($name, $params = []) {
return [$name, $params];
};
[$__name, $__params] = $__split($getComponent(), $getComponentProperties());
$key = null;
$key ??= \Livewire\Features\SupportCompiledWireKeys\SupportCompiledWireKeys::generateKey('lw-2569311901-1', null);
$__html = app('livewire')->mount($__name, $__params, $key);
echo $__html;
unset($__html);
unset($__name);
unset($__params);
unset($__split);
if (isset($__slots)) unset($__slots);
?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($id) || filled($extraAttributes)): ?>
<?php echo '</div>'; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/schemas/resources/views/components/livewire.blade.php ENDPATH**/ ?>
@@ -1,6 +0,0 @@
<?php extract((new \Illuminate\Support\Collection($attributes->getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
@props(['field','labelTag'])
<x-filament-forms::field-wrapper :field="$field" :label-tag="$labelTag" >
{{ $slot ?? "" }}
</x-filament-forms::field-wrapper>
@@ -1,12 +0,0 @@
<div
<?php echo e($attributes
->merge([
'id' => $getId(),
], escape: false)
->merge($getExtraAttributes(), escape: false)); ?>
>
<?php echo e($getChildSchema()); ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/schemas/resources/views/components/grid.blade.php ENDPATH**/ ?>
@@ -1,206 +0,0 @@
<?php
use Filament\Support\Enums\Alignment;
use Filament\Support\Enums\IconSize;
use Filament\Support\View\Components\SectionComponent\IconComponent;
use function Filament\Support\is_slot_empty;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'afterHeader' => null,
'aside' => false,
'collapsed' => false,
'collapseId' => null,
'collapsible' => false,
'compact' => false,
'contained' => true,
'contentBefore' => false,
'description' => null,
'divided' => false,
'footer' => null,
'hasContentEl' => true,
'heading' => null,
'headingTag' => 'h2',
'icon' => null,
'iconColor' => 'gray',
'iconSize' => null,
'persistCollapsed' => false,
'secondary' => false,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'afterHeader' => null,
'aside' => false,
'collapsed' => false,
'collapseId' => null,
'collapsible' => false,
'compact' => false,
'contained' => true,
'contentBefore' => false,
'description' => null,
'divided' => false,
'footer' => null,
'hasContentEl' => true,
'heading' => null,
'headingTag' => 'h2',
'icon' => null,
'iconColor' => 'gray',
'iconSize' => null,
'persistCollapsed' => false,
'secondary' => false,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
if (filled($iconSize) && (! $iconSize instanceof IconSize)) {
$iconSize = IconSize::tryFrom($iconSize) ?? $iconSize;
}
$hasDescription = filled((string) $description);
$hasHeading = filled($heading);
$hasIcon = filled($icon);
$hasHeader = $hasIcon || $hasHeading || $hasDescription || $collapsible || (! is_slot_empty($afterHeader));
?>
<section
x-data="{
isCollapsed: <?php if($persistCollapsed): ?> $persist(<?php echo \Illuminate\Support\Js::from($collapsed)->toHtml() ?>).as(`section-${<?php echo \Illuminate\Support\Js::from($collapseId)->toHtml() ?> ?? $el.id}-isCollapsed`) <?php else: ?> <?php echo \Illuminate\Support\Js::from($collapsed)->toHtml() ?> <?php endif; ?>,
}"
<?php if($collapsible): ?>
x-on:collapse-section.window="if ($event.detail.id == <?php echo \Illuminate\Support\Js::from($collapseId)->toHtml() ?> ?? $el.id) isCollapsed = true"
x-on:expand="isCollapsed = false"
x-on:expand-section.window="if ($event.detail.id == <?php echo \Illuminate\Support\Js::from($collapseId)->toHtml() ?> ?? $el.id) isCollapsed = false"
x-on:open-section.window="if ($event.detail.id == <?php echo \Illuminate\Support\Js::from($collapseId)->toHtml() ?> ?? $el.id) isCollapsed = false"
x-on:toggle-section.window="if ($event.detail.id == <?php echo \Illuminate\Support\Js::from($collapseId)->toHtml() ?> ?? $el.id) isCollapsed = ! isCollapsed"
x-bind:class="isCollapsed && 'fi-collapsed'"
<?php endif; ?>
<?php echo e($attributes->class([
'fi-section',
'fi-section-not-contained' => ! $contained,
'fi-section-has-content-before' => $contentBefore,
'fi-section-has-header' => $hasHeader,
'fi-aside' => $aside,
'fi-compact' => $compact,
'fi-collapsible' => $collapsible,
'fi-divided' => $divided,
'fi-secondary' => $secondary,
])); ?>
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasHeader): ?>
<header
<?php if($collapsible): ?>
x-on:click="isCollapsed = ! isCollapsed"
<?php endif; ?>
class="fi-section-header"
>
<?php echo e(\Filament\Support\generate_icon_html($icon, attributes: (new \Illuminate\View\ComponentAttributeBag)
->color(IconComponent::class, $iconColor), size: $iconSize ?? IconSize::Large)); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasHeading || $hasDescription): ?>
<div class="fi-section-header-text-ctn">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasHeading): ?>
<<?php echo e($headingTag); ?> class="fi-section-header-heading">
<?php echo e($heading); ?>
</<?php echo e($headingTag); ?>>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasDescription): ?>
<p class="fi-section-header-description">
<?php echo e($description); ?>
</p>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(! is_slot_empty($afterHeader)): ?>
<div x-on:click.stop class="fi-section-header-after-ctn">
<?php echo e($afterHeader); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($collapsible): ?>
<?php if (isset($component)) { $__componentOriginalf0029cce6d19fd6d472097ff06a800a1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.icon-button','data' => ['color' => 'gray','icon' => \Filament\Support\Icons\Heroicon::ChevronUp,'iconAlias' => \Filament\Support\View\SupportIconAlias::SECTION_COLLAPSE_BUTTON,'xOn:click.stop' => 'isCollapsed = ! isCollapsed','class' => 'fi-section-collapse-btn']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::icon-button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'gray','icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::ChevronUp),'icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\View\SupportIconAlias::SECTION_COLLAPSE_BUTTON),'x-on:click.stop' => 'isCollapsed = ! isCollapsed','class' => 'fi-section-collapse-btn']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $attributes = $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $component = $__componentOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</header>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if((! is_slot_empty($slot)) || (! is_slot_empty($footer))): ?>
<div
<?php if($collapsible): ?>
x-bind:aria-expanded="(! isCollapsed).toString()"
<?php if($collapsed || $persistCollapsed): ?>
x-cloak
<?php endif; ?>
<?php endif; ?>
class="fi-section-content-ctn"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasContentEl): ?>
<div class="fi-section-content">
<?php echo e($slot); ?>
</div>
<?php else: ?>
<?php echo e($slot); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(! is_slot_empty($footer)): ?>
<footer class="fi-section-footer">
<?php echo e($footer); ?>
</footer>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</section>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/section/index.blade.php ENDPATH**/ ?>
@@ -1,18 +0,0 @@
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filament()->hasUnsavedChangesAlerts()): ?>
<?php
$__scriptKey = '2260693293-0';
ob_start();
?>
<script>
setUpUnsavedActionChangesAlert({
resolveLivewireComponentUsing: () => window.Livewire.find('<?php echo e($_instance->getId()); ?>'),
$wire,
})
</script>
<?php
$__output = ob_get_clean();
\Livewire\store($this)->push('scripts', $__output, $__scriptKey)
?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/components/unsaved-action-changes-alert.blade.php ENDPATH**/ ?>
@@ -1,378 +0,0 @@
<div>
<?php
$navigation = filament()->getNavigation();
$isRtl = __('filament-panels::layout.direction') === 'rtl';
$isSidebarCollapsibleOnDesktop = filament()->isSidebarCollapsibleOnDesktop();
$isSidebarFullyCollapsibleOnDesktop = filament()->isSidebarFullyCollapsibleOnDesktop();
$hasNavigation = filament()->hasNavigation();
$hasTopbar = filament()->hasTopbar();
?>
<aside
x-data="{}"
<?php if($isSidebarCollapsibleOnDesktop || $isSidebarFullyCollapsibleOnDesktop): ?>
x-cloak
<?php else: ?>
x-cloak="-lg"
<?php endif; ?>
x-bind:class="{ 'fi-sidebar-open': $store.sidebar.isOpen }"
class="fi-sidebar fi-main-sidebar"
>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SIDEBAR_START)); ?>
<div class="fi-sidebar-header-ctn">
<header
class="fi-sidebar-header"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if((! $hasTopbar) && $isSidebarCollapsibleOnDesktop): ?>
<?php if (isset($component)) { $__componentOriginalf0029cce6d19fd6d472097ff06a800a1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.icon-button','data' => ['color' => 'gray','icon' => $isRtl ? \Filament\Support\Icons\Heroicon::OutlinedChevronLeft : \Filament\Support\Icons\Heroicon::OutlinedChevronRight,'iconAlias' =>
$isRtl
? [
\Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON_RTL,
\Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON,
]
: \Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON
,'iconSize' => 'lg','label' => __('filament-panels::layout.actions.sidebar.expand.label'),'xCloak' => true,'xData' => '{}','xOn:click' => '$store.sidebar.open()','xShow' => '! $store.sidebar.isOpen','class' => 'fi-sidebar-open-collapse-sidebar-btn']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::icon-button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'gray','icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isRtl ? \Filament\Support\Icons\Heroicon::OutlinedChevronLeft : \Filament\Support\Icons\Heroicon::OutlinedChevronRight),'icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
$isRtl
? [
\Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON_RTL,
\Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON,
]
: \Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON
),'icon-size' => 'lg','label' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(__('filament-panels::layout.actions.sidebar.expand.label')),'x-cloak' => true,'x-data' => '{}','x-on:click' => '$store.sidebar.open()','x-show' => '! $store.sidebar.isOpen','class' => 'fi-sidebar-open-collapse-sidebar-btn']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $attributes = $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $component = $__componentOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if((! $hasTopbar) && ($isSidebarCollapsibleOnDesktop || $isSidebarFullyCollapsibleOnDesktop)): ?>
<?php if (isset($component)) { $__componentOriginalf0029cce6d19fd6d472097ff06a800a1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.icon-button','data' => ['color' => 'gray','icon' => $isRtl ? \Filament\Support\Icons\Heroicon::OutlinedChevronRight : \Filament\Support\Icons\Heroicon::OutlinedChevronLeft,'iconAlias' =>
$isRtl
? [
\Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON_RTL,
\Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON,
]
: \Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON
,'iconSize' => 'lg','label' => __('filament-panels::layout.actions.sidebar.collapse.label'),'xCloak' => true,'xData' => '{}','xOn:click' => '$store.sidebar.close()','xShow' => '$store.sidebar.isOpen','class' => 'fi-sidebar-close-collapse-sidebar-btn']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::icon-button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'gray','icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isRtl ? \Filament\Support\Icons\Heroicon::OutlinedChevronRight : \Filament\Support\Icons\Heroicon::OutlinedChevronLeft),'icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
$isRtl
? [
\Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON_RTL,
\Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON,
]
: \Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON
),'icon-size' => 'lg','label' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(__('filament-panels::layout.actions.sidebar.collapse.label')),'x-cloak' => true,'x-data' => '{}','x-on:click' => '$store.sidebar.close()','x-show' => '$store.sidebar.isOpen','class' => 'fi-sidebar-close-collapse-sidebar-btn']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $attributes = $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $component = $__componentOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SIDEBAR_LOGO_BEFORE)); ?>
<div x-show="$store.sidebar.isOpen" class="fi-sidebar-header-logo-ctn">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($homeUrl = filament()->getHomeUrl()): ?>
<a <?php echo e(\Filament\Support\generate_href_html($homeUrl)); ?>>
<?php if (isset($component)) { $__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.logo','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::logo'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94)): ?>
<?php $attributes = $__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94; ?>
<?php unset($__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94)): ?>
<?php $component = $__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94; ?>
<?php unset($__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94); ?>
<?php endif; ?>
</a>
<?php else: ?>
<?php if (isset($component)) { $__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.logo','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::logo'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94)): ?>
<?php $attributes = $__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94; ?>
<?php unset($__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94)): ?>
<?php $component = $__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94; ?>
<?php unset($__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SIDEBAR_LOGO_AFTER)); ?>
</header>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filament()->hasTenancy() && filament()->hasTenantMenu()): ?>
<?php if (isset($component)) { $__componentOriginal32b9f4abfc80490155cb7c5dfaf8790d = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal32b9f4abfc80490155cb7c5dfaf8790d = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.tenant-menu','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::tenant-menu'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal32b9f4abfc80490155cb7c5dfaf8790d)): ?>
<?php $attributes = $__attributesOriginal32b9f4abfc80490155cb7c5dfaf8790d; ?>
<?php unset($__attributesOriginal32b9f4abfc80490155cb7c5dfaf8790d); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal32b9f4abfc80490155cb7c5dfaf8790d)): ?>
<?php $component = $__componentOriginal32b9f4abfc80490155cb7c5dfaf8790d; ?>
<?php unset($__componentOriginal32b9f4abfc80490155cb7c5dfaf8790d); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(filament()->isGlobalSearchEnabled() && filament()->getGlobalSearchPosition() === \Filament\Enums\GlobalSearchPosition::Sidebar): ?>
<div
<?php if($isSidebarCollapsibleOnDesktop || $isSidebarFullyCollapsibleOnDesktop): ?>
x-show="$store.sidebar.isOpen"
<?php endif; ?>
>
<?php
$__split = function ($name, $params = []) {
return [$name, $params];
};
[$__name, $__params] = $__split(Filament\Livewire\GlobalSearch::class);
$key = null;
$key ??= \Livewire\Features\SupportCompiledWireKeys\SupportCompiledWireKeys::generateKey('lw-3561320262-0', null);
$__html = app('livewire')->mount($__name, $__params, $key);
echo $__html;
unset($__html);
unset($__name);
unset($__params);
unset($__split);
if (isset($__slots)) unset($__slots);
?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<nav class="fi-sidebar-nav">
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SIDEBAR_NAV_START)); ?>
<ul class="fi-sidebar-nav-groups">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $navigation; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $group): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php
$isGroupActive = $group->isActive();
$isGroupCollapsible = $group->isCollapsible();
$groupIcon = $group->getIcon();
$groupItems = $group->getItems();
$groupLabel = $group->getLabel();
$groupExtraSidebarAttributeBag = $group->getExtraSidebarAttributeBag();
?>
<?php if (isset($component)) { $__componentOriginal59b772cc9788bdb14bf9872624b4f33a = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal59b772cc9788bdb14bf9872624b4f33a = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.sidebar.group','data' => ['active' => $isGroupActive,'collapsible' => $isGroupCollapsible,'icon' => $groupIcon,'items' => $groupItems,'label' => $groupLabel,'attributes' => \Filament\Support\prepare_inherited_attributes($groupExtraSidebarAttributeBag)]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::sidebar.group'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['active' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isGroupActive),'collapsible' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isGroupCollapsible),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($groupIcon),'items' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($groupItems),'label' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($groupLabel),'attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\prepare_inherited_attributes($groupExtraSidebarAttributeBag))]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal59b772cc9788bdb14bf9872624b4f33a)): ?>
<?php $attributes = $__attributesOriginal59b772cc9788bdb14bf9872624b4f33a; ?>
<?php unset($__attributesOriginal59b772cc9788bdb14bf9872624b4f33a); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal59b772cc9788bdb14bf9872624b4f33a)): ?>
<?php $component = $__componentOriginal59b772cc9788bdb14bf9872624b4f33a; ?>
<?php unset($__componentOriginal59b772cc9788bdb14bf9872624b4f33a); ?>
<?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</ul>
<script>
var collapsedGroups = JSON.parse(
localStorage.getItem('collapsedGroups'),
)
if (collapsedGroups === null || collapsedGroups === 'null') {
localStorage.setItem(
'collapsedGroups',
JSON.stringify(<?php echo \Illuminate\Support\Js::from(
collect($navigation)
->filter(fn (\Filament\Navigation\NavigationGroup $group): bool => $group->isCollapsed())
->map(fn (\Filament\Navigation\NavigationGroup $group): string => $group->getLabel())
->values()
->all()
)->toHtml() ?>),
)
}
collapsedGroups = JSON.parse(
localStorage.getItem('collapsedGroups'),
)
document
.querySelectorAll('.fi-sidebar-group')
.forEach((group) => {
if (
!collapsedGroups.includes(group.dataset.groupLabel)
) {
return
}
// Alpine.js loads too slow, so attempt to hide a
// collapsed sidebar group earlier.
group.querySelector(
'.fi-sidebar-group-items',
).style.display = 'none'
group.classList.add('fi-collapsed')
})
</script>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SIDEBAR_NAV_END)); ?>
</nav>
<?php
$isAuthenticated = filament()->auth()->check();
$hasDatabaseNotificationsInSidebar = filament()->hasDatabaseNotifications() && filament()->getDatabaseNotificationsPosition() === \Filament\Enums\DatabaseNotificationsPosition::Sidebar;
$hasUserMenuInSidebar = filament()->hasUserMenu() && filament()->getUserMenuPosition() === \Filament\Enums\UserMenuPosition::Sidebar;
$shouldRenderFooter = $isAuthenticated && ($hasDatabaseNotificationsInSidebar || $hasUserMenuInSidebar);
?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($shouldRenderFooter): ?>
<div class="fi-sidebar-footer">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasDatabaseNotificationsInSidebar): ?>
<?php
$__split = function ($name, $params = []) {
return [$name, $params];
};
[$__name, $__params] = $__split(Filament\Livewire\DatabaseNotifications::class, [
'lazy' => filament()->hasLazyLoadedDatabaseNotifications(),
]);
$key = null;
$key ??= \Livewire\Features\SupportCompiledWireKeys\SupportCompiledWireKeys::generateKey('lw-3561320262-1', null);
$__html = app('livewire')->mount($__name, $__params, $key);
echo $__html;
unset($__html);
unset($__name);
unset($__params);
unset($__split);
if (isset($__slots)) unset($__slots);
?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasUserMenuInSidebar): ?>
<?php if (isset($component)) { $__componentOriginalf72c4437b846e6919081d8fc29939c50 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf72c4437b846e6919081d8fc29939c50 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.user-menu','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::user-menu'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf72c4437b846e6919081d8fc29939c50)): ?>
<?php $attributes = $__attributesOriginalf72c4437b846e6919081d8fc29939c50; ?>
<?php unset($__attributesOriginalf72c4437b846e6919081d8fc29939c50); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf72c4437b846e6919081d8fc29939c50)): ?>
<?php $component = $__componentOriginalf72c4437b846e6919081d8fc29939c50; ?>
<?php unset($__componentOriginalf72c4437b846e6919081d8fc29939c50); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::SIDEBAR_FOOTER)); ?>
</aside>
<?php if (isset($component)) { $__componentOriginal028e05680f6c5b1e293abd7fbe5f9758 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-actions::components.modals','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-actions::modals'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758)): ?>
<?php $attributes = $__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758; ?>
<?php unset($__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal028e05680f6c5b1e293abd7fbe5f9758)): ?>
<?php $component = $__componentOriginal028e05680f6c5b1e293abd7fbe5f9758; ?>
<?php unset($__componentOriginal028e05680f6c5b1e293abd7fbe5f9758); ?>
<?php endif; ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/livewire/sidebar.blade.php ENDPATH**/ ?>
@@ -1,45 +0,0 @@
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'inlinePrefix' => false,
'inlineSuffix' => false,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'inlinePrefix' => false,
'inlineSuffix' => false,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<input
<?php echo e($attributes->class([
'fi-input',
'fi-input-has-inline-prefix' => $inlinePrefix,
'fi-input-has-inline-suffix' => $inlineSuffix,
])); ?>
/>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/input/index.blade.php ENDPATH**/ ?>
@@ -1,21 +0,0 @@
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($this instanceof \Filament\Actions\Contracts\HasActions && (! $this->hasActionsModalRendered)): ?>
<div
wire:partial="action-modals"
x-data="filamentActionModals({
livewireId: <?php echo \Illuminate\Support\Js::from($this->getId())->toHtml() ?>,
})"
style="height: 0"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $this->getMountedActions(); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $action): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if((! $loop->last) || $this->mountedActionShouldOpenModal()): ?>
<?php echo e($action->toModalHtmlable()); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php
$this->hasActionsModalRendered = true;
?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/actions/resources/views/components/modals.blade.php ENDPATH**/ ?>
@@ -1,265 +0,0 @@
<?php
use Filament\Support\Enums\VerticalAlignment;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'areHtmlErrorMessagesAllowed' => null,
'errorMessage' => null,
'errorMessages' => null,
'field' => null,
'hasErrors' => true,
'hasInlineLabel' => null,
'hasNestedRecursiveValidationRules' => null,
'id' => null,
'inlineLabelVerticalAlignment' => VerticalAlignment::Start,
'isDisabled' => null,
'label' => null,
'labelPrefix' => null,
'labelSrOnly' => null,
'labelSuffix' => null,
'labelTag' => 'label',
'required' => null,
'shouldShowAllValidationMessages' => null,
'statePath' => null,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'areHtmlErrorMessagesAllowed' => null,
'errorMessage' => null,
'errorMessages' => null,
'field' => null,
'hasErrors' => true,
'hasInlineLabel' => null,
'hasNestedRecursiveValidationRules' => null,
'id' => null,
'inlineLabelVerticalAlignment' => VerticalAlignment::Start,
'isDisabled' => null,
'label' => null,
'labelPrefix' => null,
'labelSrOnly' => null,
'labelSuffix' => null,
'labelTag' => 'label',
'required' => null,
'shouldShowAllValidationMessages' => null,
'statePath' => null,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
use Illuminate\Support\Arr;
if ($field) {
$hasInlineLabel ??= $field->hasInlineLabel();
$hasNestedRecursiveValidationRules ??= $field instanceof \Filament\Forms\Components\Contracts\HasNestedRecursiveValidationRules;
$id ??= $field->getId();
$isDisabled ??= $field->isDisabled();
$label ??= $field->getLabel();
$labelSrOnly ??= $field->isLabelHidden();
$required ??= $field->isMarkedAsRequired();
$statePath ??= $field->getStatePath();
$areHtmlErrorMessagesAllowed ??= $field->areHtmlValidationMessagesAllowed();
$shouldShowAllValidationMessages ??= $field->shouldShowAllValidationMessages();
}
$aboveLabelSchema = $field?->getChildSchema($field::ABOVE_LABEL_SCHEMA_KEY)?->toHtmlString();
$belowLabelSchema = $field?->getChildSchema($field::BELOW_LABEL_SCHEMA_KEY)?->toHtmlString();
$beforeLabelSchema = $field?->getChildSchema($field::BEFORE_LABEL_SCHEMA_KEY)?->toHtmlString();
$afterLabelSchema = $field?->getChildSchema($field::AFTER_LABEL_SCHEMA_KEY)?->toHtmlString();
$aboveContentSchema = $field?->getChildSchema($field::ABOVE_CONTENT_SCHEMA_KEY)?->toHtmlString();
$belowContentSchema = $field?->getChildSchema($field::BELOW_CONTENT_SCHEMA_KEY)?->toHtmlString();
$beforeContentSchema = $field?->getChildSchema($field::BEFORE_CONTENT_SCHEMA_KEY)?->toHtmlString();
$afterContentSchema = $field?->getChildSchema($field::AFTER_CONTENT_SCHEMA_KEY)?->toHtmlString();
$aboveErrorMessageSchema = $field?->getChildSchema($field::ABOVE_ERROR_MESSAGE_SCHEMA_KEY)?->toHtmlString();
$belowErrorMessageSchema = $field?->getChildSchema($field::BELOW_ERROR_MESSAGE_SCHEMA_KEY)?->toHtmlString();
$hasError = $hasErrors && (filled($errorMessage) || filled($errorMessages) || (filled($statePath) && ($errors->has($statePath) || ($hasNestedRecursiveValidationRules && $errors->has("{$statePath}.*")))));
if ($hasError && filled($statePath) && blank($errorMessage) && blank($errorMessages)) {
if ($shouldShowAllValidationMessages) {
$errorMessages = $errors->has($statePath) ? $errors->get($statePath) : ($hasNestedRecursiveValidationRules ? $errors->get("{$statePath}.*") : []);
if (count($errorMessages) === 1) {
$errorMessage = Arr::first($errorMessages);
$errorMessages = [];
}
} else {
$errorMessage = $errors->has($statePath) ? $errors->first($statePath) : ($hasNestedRecursiveValidationRules ? $errors->first("{$statePath}.*") : null);
}
}
?>
<div
data-field-wrapper
<?php echo e($attributes
->merge($field?->getExtraFieldWrapperAttributes() ?? [], escape: false)
->class([
'fi-fo-field',
'fi-fo-field-has-inline-label' => $hasInlineLabel,
])); ?>
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($label) && $labelSrOnly): ?>
<<?php echo e($labelTag); ?>
<?php if($labelTag === 'label'): ?>
for="<?php echo e($id); ?>"
<?php else: ?>
id="<?php echo e($id); ?>-label"
<?php endif; ?>
class="fi-fo-field-label fi-sr-only"
>
<?php echo e($label); ?>
</<?php echo e($labelTag); ?>>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if((filled($label) && (! $labelSrOnly)) || $hasInlineLabel || $aboveLabelSchema || $belowLabelSchema || $beforeLabelSchema || $afterLabelSchema || $labelPrefix || $labelSuffix): ?>
<div
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-fo-field-label-col',
"fi-vertical-align-{$inlineLabelVerticalAlignment->value}" => $hasInlineLabel,
]); ?>"
>
<?php echo e($aboveLabelSchema); ?>
<div
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-fo-field-label-ctn',
($label instanceof \Illuminate\View\ComponentSlot) ? $label->attributes->get('class') : null,
]); ?>"
>
<?php echo e($beforeLabelSchema); ?>
<?php if((filled($label) && (! $labelSrOnly)) || $labelPrefix || $labelSuffix): ?>
<<?php echo e($labelTag); ?>
<?php if($labelTag === 'label'): ?>
for="<?php echo e($id); ?>"
<?php else: ?>
id="<?php echo e($id); ?>-label"
<?php endif; ?>
class="fi-fo-field-label"
>
<?php echo e($labelPrefix); ?>
<?php if(filled($label) && (! $labelSrOnly)): ?>
<span class="fi-fo-field-label-content">
<?php echo e($label); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($required && (! $isDisabled)): ?><sup class="fi-fo-field-label-required-mark">*</sup>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</span>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e($labelSuffix); ?>
</<?php echo e($labelTag); ?>>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e($afterLabelSchema); ?>
</div>
<?php echo e($belowLabelSchema); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if((! \Filament\Support\is_slot_empty($slot)) || $hasError || $aboveContentSchema || $belowContentSchema || $beforeContentSchema || $afterContentSchema || $aboveErrorMessageSchema || $belowErrorMessageSchema): ?>
<div class="fi-fo-field-content-col">
<?php echo e($aboveContentSchema); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($beforeContentSchema || $afterContentSchema): ?>
<div class="fi-fo-field-content-ctn">
<?php echo e($beforeContentSchema); ?>
<div class="fi-fo-field-content">
<?php echo e($slot); ?>
</div>
<?php echo e($afterContentSchema); ?>
</div>
<?php else: ?>
<?php echo e($slot); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e($belowContentSchema); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasError): ?>
<?php echo e($aboveErrorMessageSchema); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($errorMessages)): ?>
<ul
data-validation-error
class="fi-fo-field-wrp-error-list"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $errorMessages; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $errorMessage): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<li class="fi-fo-field-wrp-error-message">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($areHtmlErrorMessagesAllowed): ?>
<?php echo $errorMessage; ?>
<?php else: ?>
<?php echo e($errorMessage); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</li>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</ul>
<?php elseif($areHtmlErrorMessagesAllowed): ?>
<div
data-validation-error
class="fi-fo-field-wrp-error-message"
>
<?php echo $errorMessage; ?>
</div>
<?php else: ?>
<p
data-validation-error
class="fi-fo-field-wrp-error-message"
>
<?php echo e($errorMessage); ?>
</p>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e($belowErrorMessageSchema); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/forms/resources/views/components/field-wrapper.blade.php ENDPATH**/ ?>
@@ -0,0 +1,282 @@
<?php $__env->startSection('title', 'My Orders - Additional Design'); ?>
<?php $__env->startSection('styles'); ?>
<style>
h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.8rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
.page-intro {
margin-bottom: var(--spacing-lg);
}
.page-intro p {
color: var(--text-secondary);
font-size: 1.1rem;
}
.orders-section {
margin-bottom: var(--spacing-xl);
}
.section-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: var(--spacing-md);
}
.btn-new {
display: inline-block;
}
@media (max-width: 768px) {
.btn-new {
display: block;
width: 100%;
}
}
.table-container {
background: white;
border-radius: 8px;
overflow: hidden;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
table {
width: 100%;
border-collapse: collapse;
}
thead {
background-color: var(--bg-secondary);
border-bottom: 1px solid var(--border-color);
}
th {
padding: var(--spacing-sm) var(--spacing-md);
text-align: left;
font-weight: 600;
font-size: 0.9rem;
color: var(--text-primary);
}
tbody tr {
border-bottom: 1px solid var(--border-color);
transition: background-color 0.2s;
}
tbody tr:hover {
background-color: var(--bg-primary);
}
td {
padding: var(--spacing-sm) var(--spacing-md);
font-size: 0.95rem;
color: var(--text-secondary);
}
.order-number {
font-weight: 600;
color: var(--text-primary);
}
.badge {
display: inline-block;
padding: 0.35rem 0.75rem;
border-radius: 20px;
font-size: 0.8rem;
font-weight: 600;
}
.btn-view {
color: var(--text-primary);
font-weight: 600;
text-decoration: none;
transition: var(--transition);
}
.btn-view:hover {
color: var(--accent-dark);
}
.empty-state {
background-color: var(--bg-secondary);
border-radius: 8px;
padding: var(--spacing-xl);
text-align: center;
}
.empty-state p {
font-size: 1.05rem;
margin-bottom: var(--spacing-md);
}
.empty-state a {
color: var(--text-primary);
font-weight: 600;
text-decoration: none;
padding: var(--spacing-sm) var(--spacing-lg);
background-color: var(--accent-dark);
color: white;
border-radius: 4px;
display: inline-block;
transition: var(--transition);
}
.empty-state a:hover {
background-color: #333;
}
@media (max-width: 768px) {
h1 {
font-size: 2rem;
}
h2 {
font-size: 1.4rem;
}
.section-header {
flex-direction: column;
align-items: flex-start;
gap: var(--spacing-sm);
}
table {
font-size: 0.85rem;
}
th, td {
padding: var(--spacing-xs) var(--spacing-sm);
}
.btn-new {
width: 100%;
text-align: center;
}
}
</style>
<?php $__env->stopSection(); ?>
<?php $__env->startSection('content'); ?>
<div class="container">
<div class="page-intro">
<h1>My Orders</h1>
<p>View your standard and custom orders</p>
</div>
<!-- Standard Orders -->
<div class="orders-section">
<h2>Standard Orders</h2>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($standardOrders->count() > 0): ?>
<div class="table-container">
<table>
<thead>
<tr>
<th>Order #</th>
<th>Date</th>
<th>Total</th>
<th>Status</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $standardOrders; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $order): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<tr>
<td class="order-number"><?php echo e($order->order_number); ?></td>
<td><?php echo e($order->created_at->format('d M Y')); ?></td>
<td><strong>R<?php echo e(number_format($order->total, 2)); ?></strong></td>
<td>
<span class="status-badge <?php echo e($order->status); ?>">
<?php echo e(ucfirst(str_replace('_', ' ', $order->status))); ?>
</span>
</td>
<td>
<a href="<?php echo e(route('my-orders.detail', $order)); ?>" class="btn-view">View Details</a>
</td>
</tr>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</tbody>
</table>
</div>
<?php else: ?>
<div class="empty-state">
<p>You haven't placed any standard orders yet.</p>
<a href="<?php echo e(route('wallpapers')); ?>">Browse Products</a>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<!-- Custom Orders -->
<div class="orders-section">
<div class="section-header">
<h2 style="margin-bottom: 0;">Custom Orders</h2>
<a href="<?php echo e(route('custom-orders.create')); ?>" class="btn btn-new">+ New Custom Order</a>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($customOrders->count() > 0): ?>
<div class="table-container">
<table>
<thead>
<tr>
<th>Order #</th>
<th>Type</th>
<th>Total</th>
<th>Status</th>
<th>Deposit</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $customOrders; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $order): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<tr>
<td class="order-number"><?php echo e($order->order_number); ?></td>
<td class="capitalize"><?php echo e(ucfirst($order->type)); ?></td>
<td><strong>R<?php echo e(number_format($order->total_cost, 2)); ?></strong></td>
<td>
<span class="status-badge <?php echo e($order->status); ?>">
<?php echo e(str_replace('_', ' ', ucfirst($order->status))); ?>
</span>
</td>
<td>
<span class="status-badge <?php echo e($order->deposit_status); ?>">
<?php echo e(ucfirst($order->deposit_status)); ?>
</span>
</td>
<td>
<a href="<?php echo e(route('custom-orders.show', $order)); ?>" class="btn-view">View Details</a>
</td>
</tr>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</tbody>
</table>
</div>
<?php else: ?>
<div class="empty-state">
<p>You haven't created any custom orders yet.</p>
<a href="<?php echo e(route('custom-orders.create')); ?>">Create Custom Order</a>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
</div>
<?php $__env->stopSection(); ?>
<?php echo $__env->make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?><?php /**PATH /var/www/additional_design/resources/views/account/orders.blade.php ENDPATH**/ ?>
@@ -1,189 +0,0 @@
<?php
use Filament\Support\Enums\IconSize;
use Filament\Support\Enums\Size;
use Filament\Support\View\Components\BadgeComponent;
use Filament\Support\View\Components\IconButtonComponent;
use Illuminate\View\ComponentAttributeBag;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'badge' => null,
'badgeColor' => 'primary',
'badgeSize' => Size::ExtraSmall,
'color' => 'primary',
'disabled' => false,
'form' => null,
'formId' => null,
'href' => null,
'icon' => null,
'iconAlias' => null,
'iconSize' => null,
'keyBindings' => null,
'label' => null,
'loadingIndicator' => true,
'size' => Size::Medium,
'spaMode' => null,
'tag' => 'button',
'target' => null,
'tooltip' => null,
'type' => 'button',
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'badge' => null,
'badgeColor' => 'primary',
'badgeSize' => Size::ExtraSmall,
'color' => 'primary',
'disabled' => false,
'form' => null,
'formId' => null,
'href' => null,
'icon' => null,
'iconAlias' => null,
'iconSize' => null,
'keyBindings' => null,
'label' => null,
'loadingIndicator' => true,
'size' => Size::Medium,
'spaMode' => null,
'tag' => 'button',
'target' => null,
'tooltip' => null,
'type' => 'button',
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
if (! $size instanceof Size) {
$size = filled($size) ? (Size::tryFrom($size) ?? $size) : null;
}
if (! $badgeSize instanceof Size) {
$badgeSize = filled($badgeSize) ? (Size::tryFrom($badgeSize) ?? $badgeSize) : null;
}
if (filled($iconSize) && (! $iconSize instanceof IconSize)) {
$iconSize = IconSize::tryFrom($iconSize) ?? $iconSize;
}
$iconSize ??= match ($size) {
Size::ExtraSmall => IconSize::Small,
Size::Large, Size::ExtraLarge => IconSize::Large,
default => null,
};
$wireTarget = $loadingIndicator ? $attributes->whereStartsWith(['wire:target', 'wire:click'])->filter(fn ($value): bool => filled($value))->first() : null;
$hasLoadingIndicator = filled($wireTarget) || ($type === 'submit' && filled($form));
if ($hasLoadingIndicator) {
$loadingIndicatorTarget = html_entity_decode($wireTarget ?: $form, ENT_QUOTES);
}
$hasTooltip = $hasTooltip = filled($tooltip);
?>
<<?php echo e($tag); ?>
<?php if(($tag === 'a') && (! ($disabled && $hasTooltip))): ?>
<?php echo e(\Filament\Support\generate_href_html($href, $target === '_blank', $spaMode)); ?>
<?php endif; ?>
<?php if($keyBindings): ?>
x-bind:id="$id('key-bindings')"
x-mousetrap.global.<?php echo e(collect($keyBindings)->map(fn (string $keyBinding): string => str_replace('+', '-', $keyBinding))->implode('.')); ?>="document.getElementById($el.id)?.click()"
<?php endif; ?>
<?php if($hasTooltip): ?>
x-tooltip="{
content: <?php echo \Illuminate\Support\Js::from($tooltip)->toHtml() ?>,
theme: $store.theme,
allowHTML: <?php echo \Illuminate\Support\Js::from($tooltip instanceof \Illuminate\Contracts\Support\Htmlable)->toHtml() ?>,
}"
<?php endif; ?>
<?php echo e($attributes
->merge([
'aria-disabled' => $disabled ? 'true' : null,
'aria-label' => $label,
'disabled' => $disabled && blank($tooltip),
'form' => $formId,
'type' => $tag === 'button' ? $type : null,
'wire:loading.attr' => $tag === 'button' ? 'disabled' : null,
'wire:target' => ($hasLoadingIndicator && $loadingIndicatorTarget) ? $loadingIndicatorTarget : null,
], escape: false)
->merge([
'title' => $hasTooltip ? null : $label,
], escape: true)
->when(
$disabled && $hasTooltip,
fn (ComponentAttributeBag $attributes) => $attributes->filter(
fn (mixed $value, string $key): bool => ! str($key)->startsWith(['href', 'x-on:', 'wire:click']),
),
)
->class([
'fi-icon-btn',
'fi-disabled' => $disabled,
($size instanceof Size) ? "fi-size-{$size->value}" : (is_string($size) ? $size : ''),
])
->color(IconButtonComponent::class, $color)); ?>
>
<?php echo e(\Filament\Support\generate_icon_html($icon, $iconAlias, (new \Illuminate\View\ComponentAttributeBag([
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => $hasLoadingIndicator,
'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
])), size: $iconSize)); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasLoadingIndicator): ?>
<?php echo e(\Filament\Support\generate_loading_indicator_html((new \Illuminate\View\ComponentAttributeBag([
'wire:loading.delay.' . config('filament.livewire_loading_delay', 'default') => '',
'wire:target' => $loadingIndicatorTarget,
])), size: $iconSize)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($badge)): ?>
<div class="fi-icon-btn-badge-ctn">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($badge instanceof \Illuminate\View\ComponentSlot): ?>
<?php echo e($badge); ?>
<?php else: ?>
<span
<?php echo e((new ComponentAttributeBag)->color(BadgeComponent::class, $badgeColor)->class([
'fi-badge',
($badgeSize instanceof Size) ? "fi-size-{$badgeSize->value}" : (is_string($badgeSize) ? $badgeSize : ''),
])); ?>
>
<?php echo e($badge); ?>
</span>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</<?php echo e($tag); ?>>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/icon-button.blade.php ENDPATH**/ ?>
@@ -1,112 +0,0 @@
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'availableHeight' => null,
'availableWidth' => null,
'flip' => true,
'maxHeight' => null,
'offset' => 8,
'placement' => null,
'shift' => false,
'size' => false,
'sizePadding' => 16,
'teleport' => false,
'trigger' => null,
'width' => null,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'availableHeight' => null,
'availableWidth' => null,
'flip' => true,
'maxHeight' => null,
'offset' => 8,
'placement' => null,
'shift' => false,
'size' => false,
'sizePadding' => 16,
'teleport' => false,
'trigger' => null,
'width' => null,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
use Filament\Support\Enums\Width;
$sizeConfig = collect([
'availableHeight' => $availableHeight,
'availableWidth' => $availableWidth,
'padding' => $sizePadding,
])->filter()->toJson();
if (is_string($width)) {
$width = Width::tryFrom($width) ?? $width;
}
?>
<div
x-data="filamentDropdown"
<?php echo e($attributes->class(['fi-dropdown'])); ?>
>
<div
x-on:keyup.enter="toggle($event)"
x-on:keyup.space="toggle($event)"
x-on:mousedown="if ($event.button === 0) toggle($event)"
<?php echo e($trigger->attributes->class(['fi-dropdown-trigger'])); ?>
>
<?php echo e($trigger); ?>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(! \Filament\Support\is_slot_empty($slot)): ?>
<div
x-cloak
x-float<?php echo e($placement ? ".placement.{$placement}" : ''); ?><?php echo e($size ? '.size' : ''); ?><?php echo e($flip ? '.flip' : ''); ?><?php echo e($shift ? '.shift' : ''); ?><?php echo e($teleport ? '.teleport' : ''); ?><?php echo e($offset ? '.offset' : ''); ?>="{ offset: <?php echo e($offset); ?>, <?php echo e($size ? ('size: ' . $sizeConfig) : ''); ?> }"
x-ref="panel"
x-transition:enter-start="fi-opacity-0"
x-transition:leave-end="fi-opacity-0"
<?php if($attributes->has('wire:key')): ?>
wire:ignore.self
wire:key="<?php echo e($attributes->get('wire:key')); ?>.panel"
<?php endif; ?>
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-dropdown-panel',
($width instanceof Width) ? "fi-width-{$width->value}" : (is_string($width) ? $width : ''),
'fi-scrollable' => $maxHeight || $size,
]); ?>"
style="<?php echo \Illuminate\Support\Arr::toCssStyles([
"max-height: {$maxHeight}" => $maxHeight,
]) ?>"
>
<?php echo e($slot); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/dropdown/index.blade.php ENDPATH**/ ?>
@@ -1,292 +0,0 @@
<?php
use Filament\Support\Enums\GridDirection;
use Filament\Tables\Enums\ColumnManagerResetActionPosition;
use Illuminate\View\ComponentAttributeBag;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'applyAction',
'columns' => null,
'hasReorderableColumns',
'hasToggleableColumns',
'headingTag' => 'h3',
'reorderAnimationDuration' => 300,
'resetActionPosition' => ColumnManagerResetActionPosition::Header,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'applyAction',
'columns' => null,
'hasReorderableColumns',
'hasToggleableColumns',
'headingTag' => 'h3',
'reorderAnimationDuration' => 300,
'resetActionPosition' => ColumnManagerResetActionPosition::Header,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<div class="fi-ta-col-manager">
<div
x-data="filamentTableColumnManager({
columns: $wire.entangle('tableColumns'),
isLive: <?php echo e($applyAction->isVisible() ? 'false' : 'true'); ?>,
})"
class="fi-ta-col-manager-ctn"
>
<div class="fi-ta-col-manager-header">
<<?php echo e($headingTag); ?> class="fi-ta-col-manager-heading">
<?php echo e(__('filament-tables::table.column_manager.heading')); ?>
</<?php echo e($headingTag); ?>>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($resetActionPosition === ColumnManagerResetActionPosition::Header): ?>
<div>
<?php if (isset($component)) { $__componentOriginal549c94d872270b69c72bdf48cb183bc9 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal549c94d872270b69c72bdf48cb183bc9 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.link','data' => ['attributes' =>
\Filament\Support\prepare_inherited_attributes(
new ComponentAttributeBag([
'color' => 'danger',
'tag' => 'button',
'wire:click' => 'resetTableColumnManager',
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => '',
'wire:target' => 'resetTableColumnManager',
])
)
]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::link'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
\Filament\Support\prepare_inherited_attributes(
new ComponentAttributeBag([
'color' => 'danger',
'tag' => 'button',
'wire:click' => 'resetTableColumnManager',
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => '',
'wire:target' => 'resetTableColumnManager',
])
)
)]); ?>
<?php echo e(__('filament-tables::table.column_manager.actions.reset.label')); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal549c94d872270b69c72bdf48cb183bc9)): ?>
<?php $attributes = $__attributesOriginal549c94d872270b69c72bdf48cb183bc9; ?>
<?php unset($__attributesOriginal549c94d872270b69c72bdf48cb183bc9); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal549c94d872270b69c72bdf48cb183bc9)): ?>
<?php $component = $__componentOriginal549c94d872270b69c72bdf48cb183bc9; ?>
<?php unset($__componentOriginal549c94d872270b69c72bdf48cb183bc9); ?>
<?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div
<?php if($hasReorderableColumns): ?>
x-sortable
x-on:end.stop="reorderColumns($event.target.sortable.toArray())"
data-sortable-animation-duration="<?php echo e($reorderAnimationDuration); ?>"
<?php endif; ?>
<?php echo e((new ComponentAttributeBag)
->grid($columns, GridDirection::Column)
->class(['fi-ta-col-manager-items'])); ?>
>
<template
x-for="(column, index) in columns.filter((column) => ! column.isHidden && column.label)"
x-bind:key="(column.type === 'group' ? 'group::' : 'column::') + column.name + '_' + index"
>
<div
<?php if($hasReorderableColumns): ?>
x-bind:x-sortable-item="column.type === 'group' ? 'group::' + column.name : 'column::' + column.name"
<?php endif; ?>
>
<template x-if="column.type === 'group'">
<div class="fi-ta-col-manager-group">
<div class="fi-ta-col-manager-item">
<label class="fi-ta-col-manager-label">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasToggleableColumns): ?>
<input
type="checkbox"
class="fi-checkbox-input fi-valid"
x-bind:id="'group-' + column.name"
x-bind:checked="(groupedColumns[column.name] || {}).checked || false"
x-bind:disabled="(groupedColumns[column.name] || {}).disabled || false"
x-effect="$el.indeterminate = (groupedColumns[column.name] || {}).indeterminate || false"
x-on:change="toggleGroup(column.name)"
/>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<span x-html="column.label"></span>
</label>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasReorderableColumns): ?>
<button
x-sortable-handle
x-on:click.stop
class="fi-ta-col-manager-reorder-handle fi-icon-btn"
type="button"
>
<?php echo e(\Filament\Support\generate_icon_html(\Filament\Support\Icons\Heroicon::Bars2, alias: \Filament\Tables\View\TablesIconAlias::REORDER_HANDLE)); ?>
</button>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div
<?php if($hasReorderableColumns): ?>
x-sortable
x-on:end.stop="reorderGroupColumns($event.target.sortable.toArray(), column.name)"
data-sortable-animation-duration="<?php echo e($reorderAnimationDuration); ?>"
<?php endif; ?>
class="fi-ta-col-manager-group-items"
>
<template
x-for="
(groupColumn, index) in
column.columns.filter((column) => ! column.isHidden && column.label)
"
x-bind:key="'column::' + groupColumn.name + '_' + index"
>
<div
<?php if($hasReorderableColumns): ?>
x-bind:x-sortable-item="'column::' + groupColumn.name"
<?php endif; ?>
>
<div class="fi-ta-col-manager-item">
<label
class="fi-ta-col-manager-label"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasToggleableColumns): ?>
<input
type="checkbox"
class="fi-checkbox-input fi-valid"
x-bind:id="'column-' + groupColumn.name.replace('.', '-')"
x-bind:checked="(getColumn(groupColumn.name, column.name) || {}).isToggled || false"
x-bind:disabled="(getColumn(groupColumn.name, column.name) || {}).isToggleable === false"
x-on:change="toggleColumn(groupColumn.name, column.name)"
/>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<span
x-html="groupColumn.label"
></span>
</label>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasReorderableColumns): ?>
<button
x-sortable-handle
x-on:click.stop
class="fi-ta-col-manager-reorder-handle fi-icon-btn"
type="button"
>
<?php echo e(\Filament\Support\generate_icon_html(\Filament\Support\Icons\Heroicon::Bars2, alias: \Filament\Tables\View\TablesIconAlias::REORDER_HANDLE)); ?>
</button>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
</div>
</template>
</div>
</div>
</template>
<template x-if="column.type !== 'group'">
<div class="fi-ta-col-manager-item">
<label class="fi-ta-col-manager-label">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasToggleableColumns): ?>
<input
type="checkbox"
class="fi-checkbox-input fi-valid"
x-bind:id="'column-' + column.name.replace('.', '-')"
x-bind:checked="(getColumn(column.name, null) || {}).isToggled || false"
x-bind:disabled="(getColumn(column.name, null) || {}).isToggleable === false"
x-on:change="toggleColumn(column.name)"
/>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<span x-html="column.label"></span>
</label>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasReorderableColumns): ?>
<button
x-sortable-handle
x-on:click.stop
class="fi-ta-col-manager-reorder-handle fi-icon-btn"
type="button"
>
<?php echo e(\Filament\Support\generate_icon_html(\Filament\Support\Icons\Heroicon::Bars2, alias: \Filament\Tables\View\TablesIconAlias::REORDER_HANDLE)); ?>
</button>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
</template>
</div>
</template>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($applyAction->isVisible() || $resetActionPosition === ColumnManagerResetActionPosition::Footer): ?>
<div class="fi-ta-col-manager-actions-ctn">
<?php if($applyAction->isVisible()): ?>
<?php echo e($applyAction); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($resetActionPosition === ColumnManagerResetActionPosition::Footer): ?>
<?php if (isset($component)) { $__componentOriginal6330f08526bbb3ce2a0da37da512a11f = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal6330f08526bbb3ce2a0da37da512a11f = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.button.index','data' => ['color' => 'danger','wire:click' => 'resetTableColumnManager']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'danger','wire:click' => 'resetTableColumnManager']); ?>
<?php echo e(__('filament-tables::table.column_manager.actions.reset.label')); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal6330f08526bbb3ce2a0da37da512a11f)): ?>
<?php $attributes = $__attributesOriginal6330f08526bbb3ce2a0da37da512a11f; ?>
<?php unset($__attributesOriginal6330f08526bbb3ce2a0da37da512a11f); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal6330f08526bbb3ce2a0da37da512a11f)): ?>
<?php $component = $__componentOriginal6330f08526bbb3ce2a0da37da512a11f; ?>
<?php unset($__componentOriginal6330f08526bbb3ce2a0da37da512a11f); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/tables/resources/views/components/column-manager.blade.php ENDPATH**/ ?>
@@ -1,96 +0,0 @@
<?php
use Filament\Schemas\View\Components\TextComponent;
use Filament\Support\Enums\FontFamily;
use Filament\Support\Enums\FontWeight;
use Filament\Support\RawJs;
$color = $getColor();
$content = $getContent();
$icon = $getIcon();
$iconPosition = $getIconPosition();
$iconSize = $getIconSize();
$size = $getSize();
$tooltip = $getTooltip();
$weight = $getWeight();
$fontFamily = $getFontFamily();
$copyableState = $getCopyableState($content) ?? $content;
$copyMessage = $getCopyMessage($copyableState);
$copyMessageDuration = $getCopyMessageDuration($copyableState);
$isCopyable = $isCopyable($copyableState);
?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($isBadge()): ?>
<?php if (isset($component)) { $__componentOriginal986dce9114ddce94a270ab00ce6c273d = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal986dce9114ddce94a270ab00ce6c273d = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.badge','data' => ['color' => $color,'icon' => $icon,'iconPosition' => $iconPosition,'iconSize' => $iconSize,'size' => $size instanceof \Filament\Support\Enums\TextSize ? $size->value : $size,'xOn:click' =>
$isCopyable ? '
window.navigator.clipboard.writeText(' . \Illuminate\Support\Js::from($copyableState) . ')
$tooltip(' . \Illuminate\Support\Js::from($copyMessage) . ', {
theme: $store.theme,
timeout: ' . \Illuminate\Support\Js::from($copyMessageDuration) . ',
})
' : null
,'tag' => $isCopyable ? 'button' : 'span','tooltip' => $tooltip,'attributes' => \Filament\Support\prepare_inherited_attributes($getExtraAttributeBag()->class(['fi-sc-text']))]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::badge'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($color),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($icon),'icon-position' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($iconPosition),'icon-size' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($iconSize),'size' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($size instanceof \Filament\Support\Enums\TextSize ? $size->value : $size),'x-on:click' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
$isCopyable ? '
window.navigator.clipboard.writeText(' . \Illuminate\Support\Js::from($copyableState) . ')
$tooltip(' . \Illuminate\Support\Js::from($copyMessage) . ', {
theme: $store.theme,
timeout: ' . \Illuminate\Support\Js::from($copyMessageDuration) . ',
})
' : null
),'tag' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isCopyable ? 'button' : 'span'),'tooltip' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($tooltip),'attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\prepare_inherited_attributes($getExtraAttributeBag()->class(['fi-sc-text'])))]); ?>
<?php echo e($content); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal986dce9114ddce94a270ab00ce6c273d)): ?>
<?php $attributes = $__attributesOriginal986dce9114ddce94a270ab00ce6c273d; ?>
<?php unset($__attributesOriginal986dce9114ddce94a270ab00ce6c273d); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal986dce9114ddce94a270ab00ce6c273d)): ?>
<?php $component = $__componentOriginal986dce9114ddce94a270ab00ce6c273d; ?>
<?php unset($__componentOriginal986dce9114ddce94a270ab00ce6c273d); ?>
<?php endif; ?>
<?php else: ?>
<span
<?php if($isCopyable): ?>
x-on:click="
window.navigator.clipboard.writeText(<?php echo \Illuminate\Support\Js::from($copyableState)->toHtml() ?>)
$tooltip(<?php echo \Illuminate\Support\Js::from($copyMessage)->toHtml() ?>, {
theme: $store.theme,
timeout: <?php echo \Illuminate\Support\Js::from($copyMessageDuration)->toHtml() ?>,
})
"
<?php endif; ?>
<?php if(filled($tooltip)): ?>
x-tooltip="{
content: <?php echo \Illuminate\Support\Js::from($tooltip)->toHtml() ?>,
theme: $store.theme,
allowHTML: <?php echo \Illuminate\Support\Js::from($tooltip instanceof \Illuminate\Contracts\Support\Htmlable)->toHtml() ?>,
}"
<?php endif; ?>
<?php echo e((new \Illuminate\View\ComponentAttributeBag)
->color(TextComponent::class, $color)
->class([
'fi-sc-text',
'fi-copyable' => $isCopyable,
($size instanceof \BackedEnum) ? "fi-size-{$size->value}" : $size,
($weight instanceof FontWeight) ? "fi-font-{$weight->value}" : $weight,
($fontFamily instanceof FontFamily) ? "fi-font-{$fontFamily->value}" : $fontFamily,
])
->merge($getExtraAttributes(), escape: false)); ?>
>
<?php echo e($content); ?>
</span>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/schemas/resources/views/components/text.blade.php ENDPATH**/ ?>
@@ -1,21 +0,0 @@
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(isset($data)): ?>
<script>
window.filamentData = <?php echo \Illuminate\Support\Js::from($data)->toHtml() ?>
</script>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $assets; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $asset): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(! $asset->isLoadedOnRequest()): ?>
<?php echo e($asset->getHtml()); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<style>
:root {
<?php $__currentLoopData = $cssVariables ?? []; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $cssVariableName => $cssVariableValue): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?> --<?php echo e($cssVariableName); ?>:<?php echo e($cssVariableValue); ?>; <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
}
<?php $__currentLoopData = $customColors ?? []; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $customColorName => $customColorShades): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?> .fi-color-<?php echo e($customColorName); ?> { <?php $__currentLoopData = $customColorShades; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $customColorShade): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?> --color-<?php echo e($customColorShade); ?>:var(--<?php echo e($customColorName); ?>-<?php echo e($customColorShade); ?>); <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?> } <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</style>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/assets.blade.php ENDPATH**/ ?>
@@ -1,127 +0,0 @@
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'actions' => [],
'actionsAlignment' => null,
'breadcrumbs' => [],
'heading' => null,
'subheading' => null,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'actions' => [],
'actionsAlignment' => null,
'breadcrumbs' => [],
'heading' => null,
'subheading' => null,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<header
<?php echo e($attributes->class([
'fi-header',
'fi-header-has-breadcrumbs' => $breadcrumbs,
])); ?>
>
<div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($breadcrumbs): ?>
<?php if (isset($component)) { $__componentOriginale1cebc129855f156aa8f78d22103aca1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginale1cebc129855f156aa8f78d22103aca1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.breadcrumbs','data' => ['breadcrumbs' => $breadcrumbs]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::breadcrumbs'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['breadcrumbs' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($breadcrumbs)]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginale1cebc129855f156aa8f78d22103aca1)): ?>
<?php $attributes = $__attributesOriginale1cebc129855f156aa8f78d22103aca1; ?>
<?php unset($__attributesOriginale1cebc129855f156aa8f78d22103aca1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginale1cebc129855f156aa8f78d22103aca1)): ?>
<?php $component = $__componentOriginale1cebc129855f156aa8f78d22103aca1; ?>
<?php unset($__componentOriginale1cebc129855f156aa8f78d22103aca1); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($heading)): ?>
<h1 class="fi-header-heading">
<?php echo e($heading); ?>
</h1>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($subheading)): ?>
<p class="fi-header-subheading">
<?php echo e($subheading); ?>
</p>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php
$beforeActions = \Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::PAGE_HEADER_ACTIONS_BEFORE, scopes: $this->getRenderHookScopes());
$afterActions = \Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::PAGE_HEADER_ACTIONS_AFTER, scopes: $this->getRenderHookScopes());
?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($beforeActions) || $actions || filled($afterActions)): ?>
<div class="fi-header-actions-ctn">
<?php echo e($beforeActions); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($actions): ?>
<?php if (isset($component)) { $__componentOriginal59d80b1aec4ae4c914a3e52dede19504 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal59d80b1aec4ae4c914a3e52dede19504 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.actions','data' => ['actions' => $actions,'alignment' => $actionsAlignment]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::actions'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['actions' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actions),'alignment' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($actionsAlignment)]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal59d80b1aec4ae4c914a3e52dede19504)): ?>
<?php $attributes = $__attributesOriginal59d80b1aec4ae4c914a3e52dede19504; ?>
<?php unset($__attributesOriginal59d80b1aec4ae4c914a3e52dede19504); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal59d80b1aec4ae4c914a3e52dede19504)): ?>
<?php $component = $__componentOriginal59d80b1aec4ae4c914a3e52dede19504; ?>
<?php unset($__componentOriginal59d80b1aec4ae4c914a3e52dede19504); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e($afterActions); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</header>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/components/header/index.blade.php ENDPATH**/ ?>
@@ -1,227 +0,0 @@
<?php
use Filament\Support\Enums\IconPosition;
use Filament\Support\Enums\IconSize;
use Filament\Support\Enums\Size;
use Filament\Support\View\Components\BadgeComponent;
use Illuminate\View\ComponentAttributeBag;
?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'color' => 'primary',
'deleteButton' => null,
'disabled' => false,
'form' => null,
'formId' => null,
'href' => null,
'icon' => null,
'iconAlias' => null,
'iconPosition' => IconPosition::Before,
'iconSize' => null,
'keyBindings' => null,
'loadingIndicator' => true,
'size' => Size::Medium,
'spaMode' => null,
'tag' => 'span',
'target' => null,
'tooltip' => null,
'type' => 'button',
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'color' => 'primary',
'deleteButton' => null,
'disabled' => false,
'form' => null,
'formId' => null,
'href' => null,
'icon' => null,
'iconAlias' => null,
'iconPosition' => IconPosition::Before,
'iconSize' => null,
'keyBindings' => null,
'loadingIndicator' => true,
'size' => Size::Medium,
'spaMode' => null,
'tag' => 'span',
'target' => null,
'tooltip' => null,
'type' => 'button',
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
if (! $iconPosition instanceof IconPosition) {
$iconPosition = filled($iconPosition) ? (IconPosition::tryFrom($iconPosition) ?? $iconPosition) : null;
}
if (! $size instanceof Size) {
$size = filled($size) ? (Size::tryFrom($size) ?? $size) : null;
}
if (filled($iconSize) && (! $iconSize instanceof IconSize)) {
$iconSize = IconSize::tryFrom($iconSize) ?? $iconSize;
}
$isDeletable = count($deleteButton?->attributes->getAttributes() ?? []) > 0;
$wireTarget = $loadingIndicator ? $attributes->whereStartsWith(['wire:target', 'wire:click'])->filter(fn ($value): bool => filled($value))->first() : null;
$hasLoadingIndicator = filled($wireTarget) || ($type === 'submit' && filled($form));
if ($hasLoadingIndicator) {
$loadingIndicatorTarget = html_entity_decode($wireTarget ?: $form, ENT_QUOTES);
}
$hasTooltip = filled($tooltip);
?>
<<?php echo e($tag); ?>
<?php if(($tag === 'a') && (! ($disabled && $hasTooltip))): ?>
<?php echo e(\Filament\Support\generate_href_html($href, $target === '_blank', $spaMode)); ?>
<?php endif; ?>
<?php if($keyBindings): ?>
x-bind:id="$id('key-bindings')"
x-mousetrap.global.<?php echo e(collect($keyBindings)->map(fn (string $keyBinding): string => str_replace('+', '-', $keyBinding))->implode('.')); ?>="document.getElementById($el.id)?.click()"
<?php endif; ?>
<?php if($hasTooltip): ?>
x-tooltip="{
content: <?php echo \Illuminate\Support\Js::from($tooltip)->toHtml() ?>,
theme: $store.theme,
allowHTML: <?php echo \Illuminate\Support\Js::from($tooltip instanceof \Illuminate\Contracts\Support\Htmlable)->toHtml() ?>,
}"
<?php endif; ?>
<?php echo e($attributes
->merge([
'aria-disabled' => $disabled ? 'true' : null,
'disabled' => $disabled && blank($tooltip),
'form' => $tag === 'button' ? $formId : null,
'type' => $tag === 'button' ? $type : null,
'wire:loading.attr' => $tag === 'button' ? 'disabled' : null,
'wire:target' => ($hasLoadingIndicator && $loadingIndicatorTarget) ? $loadingIndicatorTarget : null,
], escape: false)
->when(
$disabled && $hasTooltip,
fn (ComponentAttributeBag $attributes) => $attributes->filter(
fn (mixed $value, string $key): bool => ! str($key)->startsWith(['href', 'x-on:', 'wire:click']),
),
)
->class([
'fi-badge',
'fi-disabled' => $disabled,
($size instanceof Size) ? "fi-size-{$size->value}" : (is_string($size) ? $size : ''),
])
->color(BadgeComponent::class, $color)); ?>
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($iconPosition === IconPosition::Before): ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($icon): ?>
<?php echo e(\Filament\Support\generate_icon_html($icon, $iconAlias, (new \Illuminate\View\ComponentAttributeBag([
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => $hasLoadingIndicator,
'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
])), size: $iconSize ?? \Filament\Support\Enums\IconSize::Small)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasLoadingIndicator): ?>
<?php echo e(\Filament\Support\generate_loading_indicator_html((new \Illuminate\View\ComponentAttributeBag([
'wire:loading.delay.' . config('filament.livewire_loading_delay', 'default') => '',
'wire:target' => $loadingIndicatorTarget,
])), size: $iconSize ?? \Filament\Support\Enums\IconSize::Small)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<span class="fi-badge-label-ctn">
<span class="fi-badge-label">
<?php echo e($slot); ?>
</span>
</span>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($isDeletable): ?>
<?php
$deleteButtonWireTarget = $deleteButton->attributes->whereStartsWith(['wire:target', 'wire:click'])->filter(fn ($value): bool => filled($value))->first();
$deleteButtonHasLoadingIndicator = filled($deleteButtonWireTarget);
if ($deleteButtonHasLoadingIndicator) {
$deleteButtonLoadingIndicatorTarget = html_entity_decode($deleteButtonWireTarget, ENT_QUOTES);
}
?>
<button
type="button"
<?php echo e($deleteButton->attributes
->except(['label'])
->class([
'fi-badge-delete-btn',
])); ?>
>
<?php echo e(\Filament\Support\generate_icon_html(\Filament\Support\Icons\Heroicon::XMark, alias: \Filament\Support\View\SupportIconAlias::BADGE_DELETE_BUTTON, attributes: (new \Illuminate\View\ComponentAttributeBag([
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => $deleteButtonHasLoadingIndicator,
'wire:target' => $deleteButtonHasLoadingIndicator ? $deleteButtonLoadingIndicatorTarget : false,
])), size: \Filament\Support\Enums\IconSize::ExtraSmall)); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($deleteButtonHasLoadingIndicator): ?>
<?php echo e(\Filament\Support\generate_loading_indicator_html((new \Illuminate\View\ComponentAttributeBag([
'wire:loading.delay.' . config('filament.livewire_loading_delay', 'default') => '',
'wire:target' => $deleteButtonLoadingIndicatorTarget,
])), size: \Filament\Support\Enums\IconSize::ExtraSmall)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($label = $deleteButton->attributes->get('label'))): ?>
<span class="fi-sr-only">
<?php echo e($label); ?>
</span>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</button>
<?php elseif($iconPosition === IconPosition::After): ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($icon): ?>
<?php echo e(\Filament\Support\generate_icon_html($icon, $iconAlias, (new \Illuminate\View\ComponentAttributeBag([
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => $hasLoadingIndicator,
'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
])), size: $iconSize ?? \Filament\Support\Enums\IconSize::Small)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasLoadingIndicator): ?>
<?php echo e(\Filament\Support\generate_loading_indicator_html((new \Illuminate\View\ComponentAttributeBag([
'wire:loading.delay.' . config('filament.livewire_loading_delay', 'default') => '',
'wire:target' => $loadingIndicatorTarget,
])), size: $iconSize ?? \Filament\Support\Enums\IconSize::Small)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</<?php echo e($tag); ?>>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/badge.blade.php ENDPATH**/ ?>
@@ -1,75 +0,0 @@
<div
x-data="{ theme: null }"
x-init="
$watch('theme', () => {
$dispatch('theme-changed', theme)
})
theme = localStorage.getItem('theme') || <?php echo \Illuminate\Support\Js::from(filament()->getDefaultThemeMode()->value)->toHtml() ?>
"
class="fi-theme-switcher"
>
<?php if (isset($component)) { $__componentOriginalad1f400c934be44fb66b397d4f7989b8 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalad1f400c934be44fb66b397d4f7989b8 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.theme-switcher.button','data' => ['icon' => \Filament\Support\Icons\Heroicon::Sun,'theme' => 'light']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::theme-switcher.button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::Sun),'theme' => 'light']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalad1f400c934be44fb66b397d4f7989b8)): ?>
<?php $attributes = $__attributesOriginalad1f400c934be44fb66b397d4f7989b8; ?>
<?php unset($__attributesOriginalad1f400c934be44fb66b397d4f7989b8); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalad1f400c934be44fb66b397d4f7989b8)): ?>
<?php $component = $__componentOriginalad1f400c934be44fb66b397d4f7989b8; ?>
<?php unset($__componentOriginalad1f400c934be44fb66b397d4f7989b8); ?>
<?php endif; ?>
<?php if (isset($component)) { $__componentOriginalad1f400c934be44fb66b397d4f7989b8 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalad1f400c934be44fb66b397d4f7989b8 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.theme-switcher.button','data' => ['icon' => \Filament\Support\Icons\Heroicon::Moon,'theme' => 'dark']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::theme-switcher.button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::Moon),'theme' => 'dark']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalad1f400c934be44fb66b397d4f7989b8)): ?>
<?php $attributes = $__attributesOriginalad1f400c934be44fb66b397d4f7989b8; ?>
<?php unset($__attributesOriginalad1f400c934be44fb66b397d4f7989b8); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalad1f400c934be44fb66b397d4f7989b8)): ?>
<?php $component = $__componentOriginalad1f400c934be44fb66b397d4f7989b8; ?>
<?php unset($__componentOriginalad1f400c934be44fb66b397d4f7989b8); ?>
<?php endif; ?>
<?php if (isset($component)) { $__componentOriginalad1f400c934be44fb66b397d4f7989b8 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalad1f400c934be44fb66b397d4f7989b8 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.theme-switcher.button','data' => ['icon' => \Filament\Support\Icons\Heroicon::ComputerDesktop,'theme' => 'system']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::theme-switcher.button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::ComputerDesktop),'theme' => 'system']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalad1f400c934be44fb66b397d4f7989b8)): ?>
<?php $attributes = $__attributesOriginalad1f400c934be44fb66b397d4f7989b8; ?>
<?php unset($__attributesOriginalad1f400c934be44fb66b397d4f7989b8); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalad1f400c934be44fb66b397d4f7989b8)): ?>
<?php $component = $__componentOriginalad1f400c934be44fb66b397d4f7989b8; ?>
<?php unset($__componentOriginalad1f400c934be44fb66b397d4f7989b8); ?>
<?php endif; ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/components/theme-switcher/index.blade.php ENDPATH**/ ?>
@@ -1,325 +0,0 @@
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'position' => null,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'position' => null,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
use Filament\Actions\Action;
use Filament\Enums\UserMenuPosition;
use Illuminate\Support\Arr;
$user = filament()->auth()->user();
$items = $this->getUserMenuItems();
$itemsBeforeAndAfterThemeSwitcher = collect($items)
->groupBy(fn (Action $item): bool => $item->getSort() < 0, preserveKeys: true)
->all();
$itemsBeforeThemeSwitcher = $itemsBeforeAndAfterThemeSwitcher[true] ?? collect();
$itemsAfterThemeSwitcher = $itemsBeforeAndAfterThemeSwitcher[false] ?? collect();
$hasProfileHeader = $itemsBeforeThemeSwitcher->has('profile') &&
blank(($item = Arr::first($itemsBeforeThemeSwitcher))->getUrl()) &&
(! $item->hasAction());
if ($itemsBeforeThemeSwitcher->has('profile')) {
$itemsBeforeThemeSwitcher = $itemsBeforeThemeSwitcher->prepend($itemsBeforeThemeSwitcher->pull('profile'), 'profile');
}
$position ??= filament()->getUserMenuPosition();
$isSidebarCollapsibleOnDesktop = filament()->isSidebarCollapsibleOnDesktop();
?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::USER_MENU_BEFORE)); ?>
<?php if (isset($component)) { $__componentOriginal22ab0dbc2c6619d5954111bba06f01db = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal22ab0dbc2c6619d5954111bba06f01db = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.index','data' => ['placement' => ($position === UserMenuPosition::Topbar) ? 'bottom-end' : 'top-end','teleport' => $position === UserMenuPosition::Topbar,'attributes' =>
\Filament\Support\prepare_inherited_attributes($attributes)
->class(['fi-user-menu'])
]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['placement' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(($position === UserMenuPosition::Topbar) ? 'bottom-end' : 'top-end'),'teleport' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($position === UserMenuPosition::Topbar),'attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
\Filament\Support\prepare_inherited_attributes($attributes)
->class(['fi-user-menu'])
)]); ?>
<?php $__env->slot('trigger', null, []); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($position === UserMenuPosition::Topbar): ?>
<button
aria-label="<?php echo e(__('filament-panels::layout.actions.open_user_menu.label')); ?>"
type="button"
class="fi-user-menu-trigger"
>
<?php if (isset($component)) { $__componentOriginalceea4679a368984135244eacf4aafeca = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalceea4679a368984135244eacf4aafeca = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.avatar.user','data' => ['user' => $user,'loading' => 'lazy']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::avatar.user'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['user' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($user),'loading' => 'lazy']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalceea4679a368984135244eacf4aafeca)): ?>
<?php $attributes = $__attributesOriginalceea4679a368984135244eacf4aafeca; ?>
<?php unset($__attributesOriginalceea4679a368984135244eacf4aafeca); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalceea4679a368984135244eacf4aafeca)): ?>
<?php $component = $__componentOriginalceea4679a368984135244eacf4aafeca; ?>
<?php unset($__componentOriginalceea4679a368984135244eacf4aafeca); ?>
<?php endif; ?>
</button>
<?php else: ?>
<button
aria-label="<?php echo e(__('filament-panels::layout.actions.open_user_menu.label')); ?>"
type="button"
class="fi-user-menu-trigger"
>
<?php if (isset($component)) { $__componentOriginalceea4679a368984135244eacf4aafeca = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalceea4679a368984135244eacf4aafeca = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.avatar.user','data' => ['user' => $user,'loading' => 'lazy']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::avatar.user'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['user' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($user),'loading' => 'lazy']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalceea4679a368984135244eacf4aafeca)): ?>
<?php $attributes = $__attributesOriginalceea4679a368984135244eacf4aafeca; ?>
<?php unset($__attributesOriginalceea4679a368984135244eacf4aafeca); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalceea4679a368984135244eacf4aafeca)): ?>
<?php $component = $__componentOriginalceea4679a368984135244eacf4aafeca; ?>
<?php unset($__componentOriginalceea4679a368984135244eacf4aafeca); ?>
<?php endif; ?>
<span
<?php if($isSidebarCollapsibleOnDesktop): ?>
x-show="$store.sidebar.isOpen"
<?php endif; ?>
class="fi-user-menu-trigger-text"
>
<?php echo e(filament()->getUserName($user)); ?>
</span>
<?php echo e(\Filament\Support\generate_icon_html(\Filament\Support\Icons\Heroicon::ChevronUp, alias: \Filament\View\PanelsIconAlias::USER_MENU_TOGGLE_BUTTON, attributes: new \Illuminate\View\ComponentAttributeBag([
'x-show' => $isSidebarCollapsibleOnDesktop ? '$store.sidebar.isOpen' : null,
]))); ?>
</button>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php $__env->endSlot(); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasProfileHeader): ?>
<?php
$item = $itemsBeforeThemeSwitcher['profile'];
$itemColor = $item->getColor();
$itemIcon = $item->getIcon();
unset($itemsBeforeThemeSwitcher['profile']);
?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::USER_MENU_PROFILE_BEFORE)); ?>
<?php if (isset($component)) { $__componentOriginal7a83b62094aac4ed8d85f403cf23f250 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal7a83b62094aac4ed8d85f403cf23f250 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.header','data' => ['color' => $itemColor,'icon' => $itemIcon]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown.header'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemColor),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemIcon)]); ?>
<?php echo e($item->getLabel()); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal7a83b62094aac4ed8d85f403cf23f250)): ?>
<?php $attributes = $__attributesOriginal7a83b62094aac4ed8d85f403cf23f250; ?>
<?php unset($__attributesOriginal7a83b62094aac4ed8d85f403cf23f250); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal7a83b62094aac4ed8d85f403cf23f250)): ?>
<?php $component = $__componentOriginal7a83b62094aac4ed8d85f403cf23f250; ?>
<?php unset($__componentOriginal7a83b62094aac4ed8d85f403cf23f250); ?>
<?php endif; ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::USER_MENU_PROFILE_AFTER)); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($itemsBeforeThemeSwitcher->isNotEmpty()): ?>
<?php if (isset($component)) { $__componentOriginal66687bf0670b9e16f61e667468dc8983 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal66687bf0670b9e16f61e667468dc8983 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.list.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown.list'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $itemsBeforeThemeSwitcher; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $key => $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($key === 'profile'): ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::USER_MENU_PROFILE_BEFORE)); ?>
<?php echo e($item); ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::USER_MENU_PROFILE_AFTER)); ?>
<?php else: ?>
<?php echo e($item); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal66687bf0670b9e16f61e667468dc8983)): ?>
<?php $attributes = $__attributesOriginal66687bf0670b9e16f61e667468dc8983; ?>
<?php unset($__attributesOriginal66687bf0670b9e16f61e667468dc8983); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal66687bf0670b9e16f61e667468dc8983)): ?>
<?php $component = $__componentOriginal66687bf0670b9e16f61e667468dc8983; ?>
<?php unset($__componentOriginal66687bf0670b9e16f61e667468dc8983); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filament()->hasDarkMode() && (! filament()->hasDarkModeForced())): ?>
<?php if (isset($component)) { $__componentOriginal66687bf0670b9e16f61e667468dc8983 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal66687bf0670b9e16f61e667468dc8983 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.list.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown.list'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php if (isset($component)) { $__componentOriginal388e1416f496c833c11c2ba7d86d1f07 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal388e1416f496c833c11c2ba7d86d1f07 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.theme-switcher.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::theme-switcher'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal388e1416f496c833c11c2ba7d86d1f07)): ?>
<?php $attributes = $__attributesOriginal388e1416f496c833c11c2ba7d86d1f07; ?>
<?php unset($__attributesOriginal388e1416f496c833c11c2ba7d86d1f07); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal388e1416f496c833c11c2ba7d86d1f07)): ?>
<?php $component = $__componentOriginal388e1416f496c833c11c2ba7d86d1f07; ?>
<?php unset($__componentOriginal388e1416f496c833c11c2ba7d86d1f07); ?>
<?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal66687bf0670b9e16f61e667468dc8983)): ?>
<?php $attributes = $__attributesOriginal66687bf0670b9e16f61e667468dc8983; ?>
<?php unset($__attributesOriginal66687bf0670b9e16f61e667468dc8983); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal66687bf0670b9e16f61e667468dc8983)): ?>
<?php $component = $__componentOriginal66687bf0670b9e16f61e667468dc8983; ?>
<?php unset($__componentOriginal66687bf0670b9e16f61e667468dc8983); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($itemsAfterThemeSwitcher->isNotEmpty()): ?>
<?php if (isset($component)) { $__componentOriginal66687bf0670b9e16f61e667468dc8983 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal66687bf0670b9e16f61e667468dc8983 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.list.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown.list'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $itemsAfterThemeSwitcher; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $key => $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($key === 'profile'): ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::USER_MENU_PROFILE_BEFORE)); ?>
<?php echo e($item); ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::USER_MENU_PROFILE_AFTER)); ?>
<?php else: ?>
<?php echo e($item); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal66687bf0670b9e16f61e667468dc8983)): ?>
<?php $attributes = $__attributesOriginal66687bf0670b9e16f61e667468dc8983; ?>
<?php unset($__attributesOriginal66687bf0670b9e16f61e667468dc8983); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal66687bf0670b9e16f61e667468dc8983)): ?>
<?php $component = $__componentOriginal66687bf0670b9e16f61e667468dc8983; ?>
<?php unset($__componentOriginal66687bf0670b9e16f61e667468dc8983); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal22ab0dbc2c6619d5954111bba06f01db)): ?>
<?php $attributes = $__attributesOriginal22ab0dbc2c6619d5954111bba06f01db; ?>
<?php unset($__attributesOriginal22ab0dbc2c6619d5954111bba06f01db); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal22ab0dbc2c6619d5954111bba06f01db)): ?>
<?php $component = $__componentOriginal22ab0dbc2c6619d5954111bba06f01db; ?>
<?php unset($__componentOriginal22ab0dbc2c6619d5954111bba06f01db); ?>
<?php endif; ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::USER_MENU_AFTER)); ?>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/components/user-menu.blade.php ENDPATH**/ ?>
@@ -1,29 +0,0 @@
<?php if (isset($component)) { $__componentOriginalb525200bfa976483b4eaa0b7685c6e24 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalb525200bfa976483b4eaa0b7685c6e24 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-widgets::components.widget','data' => ['class' => 'fi-wi-table']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-widgets::widget'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['class' => 'fi-wi-table']); ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\Widgets\View\WidgetsRenderHook::TABLE_WIDGET_START, scopes: static::class)); ?>
<?php echo e($this->table); ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\Widgets\View\WidgetsRenderHook::TABLE_WIDGET_END, scopes: static::class)); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalb525200bfa976483b4eaa0b7685c6e24)): ?>
<?php $attributes = $__attributesOriginalb525200bfa976483b4eaa0b7685c6e24; ?>
<?php unset($__attributesOriginalb525200bfa976483b4eaa0b7685c6e24); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalb525200bfa976483b4eaa0b7685c6e24)): ?>
<?php $component = $__componentOriginalb525200bfa976483b4eaa0b7685c6e24; ?>
<?php unset($__componentOriginalb525200bfa976483b4eaa0b7685c6e24); ?>
<?php endif; ?>
<?php /**PATH /var/www/additional_design/vendor/filament/widgets/resources/views/table-widget.blade.php ENDPATH**/ ?>
@@ -0,0 +1,808 @@
<?php $__env->startSection('title', 'Request Custom Design - Additional Design'); ?>
<?php $__env->startSection('styles'); ?>
<style>
.page-intro {
margin-bottom: var(--spacing-lg);
}
.page-intro h1 {
font-family: 'Abril Fatface', cursive;
font-size: 2.5rem;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.page-intro p {
color: var(--text-secondary);
font-size: 1.1rem;
}
.form-card {
background: white;
padding: var(--spacing-lg);
border-radius: 20px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
margin-bottom: var(--spacing-lg);
max-width: 700px;
}
.form-section h2 {
font-family: 'Abril Fatface', cursive;
font-size: 1.6rem;
color: var(--text-primary);
/* margin-bottom: var(--spacing-md); */
}
.form-section {
/* margin-bottom: var(--spacing-lg); */
}
.form-section:last-child {
margin-bottom: 0;
}
.form-group {
margin-bottom: var(--spacing-md);
}
.form-group label {
display: block;
font-weight: 600;
color: var(--text-primary);
margin-bottom: 0.5rem;
}
.form-group-hint {
font-size: 0.9rem;
color: var(--text-secondary);
margin-bottom: 0.75rem;
}
.form-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: var(--spacing-sm);
}
.form-row.full {
grid-template-columns: 1fr;
}
.form-group input,
.form-group textarea,
.form-group select {
width: 100%;
padding: 0.75rem;
border: 1px solid var(--border-color);
border-radius: 4px;
font-size: 1rem;
font-family: inherit;
background-color: white;
box-sizing: border-box;
}
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus {
outline: none;
border-color: var(--accent-dark);
box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05);
}
.form-group textarea {
resize: vertical;
min-height: 120px;
}
.upload-area {
border: 2px dashed var(--border-color);
border-radius: 8px;
padding: var(--spacing-lg);
text-align: center;
cursor: pointer;
transition: var(--transition);
background-color: var(--bg-primary);
}
.upload-area:hover {
border-color: var(--accent-dark);
background-color: var(--bg-secondary);
}
.upload-area svg {
width: 48px;
height: 48px;
color: var(--text-secondary);
margin: 0 auto var(--spacing-sm);
}
.upload-area p {
margin: 0.25rem 0;
}
.upload-area .hint {
font-size: 0.85rem;
color: var(--text-secondary);
}
.file-item {
display: flex;
align-items: center;
gap: 0.75rem;
padding: 0.75rem;
background-color: var(--bg-secondary);
border-radius: 4px;
margin-top: 0.5rem;
font-size: 0.9rem;
}
.file-item svg {
width: 18px;
height: 18px;
color: var(--accent-dark);
flex-shrink: 0;
}
.checkbox-group {
padding: var(--spacing-md);
background-color: var(--bg-secondary);
border-radius: 20px;
margin-bottom: var(--spacing-md);
}
.checkbox-option {
display: flex;
gap: var(--spacing-md);
cursor: pointer;
}
.checkbox-option input[type="checkbox"] {
margin-top: 2px;
cursor: pointer;
}
.checkbox-content p {
margin-bottom: 0.5rem;
}
.button-group {
display: flex;
gap: var(--spacing-md);
margin-top: var(--spacing-lg);
}
.button-group .btn {
flex: 1;
}
.btn-cancel {
background-color: var(--bg-secondary) !important;
color: var(--text-primary) !important;
border: 1px solid var(--border-color) !important;
}
.btn-cancel:hover {
background-color: var(--border-color) !important;
color: var(--text-primary) !important;
}
.error-message {
color: #c53030;
font-size: 0.9rem;
margin-top: 0.5rem;
}
.info-box {
background-color: var(--accent-light);
border: 1px solid var(--border-color);
padding: var(--spacing-lg);
border-radius: 20px;
margin-bottom: var(--spacing-lg);
}
.info-box h3 {
font-family: var(--font-sans);
font-size: 1.2rem;
font-weight: 600;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
margin-top: 0;
}
.info-box ul {
list-style-position: inside;
margin: 0;
padding: 0;
}
.info-box li {
margin-bottom: 0.5rem;
}
.form-wrapper {
display: grid;
grid-template-columns: 1fr 450px;
gap: var(--spacing-lg);
margin-bottom: var(--spacing-lg);
}
.cost-summary {
height: fit-content;
position: sticky;
top: 120px;
}
.cost-summary-content {
background: white;
padding: var(--spacing-lg);
border-radius: 20px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
margin-bottom: var(--spacing-md);
}
.cost-summary-content h3 {
font-family: 'Abril Fatface', cursive;
font-size: 1.3rem;
color: var(--text-primary);
margin-bottom: var(--spacing-md);
}
.cost-item {
display: flex;
justify-content: space-between;
padding: var(--spacing-sm) 0;
border-bottom: 1px solid var(--border-color);
font-size: 0.95rem;
}
.cost-item.total {
font-weight: 700;
font-size: 1.1rem;
border-top: 2px solid var(--accent-dark);
border-bottom: none;
margin-top: var(--spacing-md);
padding-top: var(--spacing-md);
color: var(--accent-dark);
}
.cost-label {
color: var(--text-secondary);
}
.cost-value {
font-weight: 600;
color: var(--text-primary);
}
.cost-item.total .cost-value {
color: var(--accent-dark);
}
.design-fee-note {
font-size: 0.85rem;
color: var(--text-secondary);
margin-top: var(--spacing-md);
padding-top: var(--spacing-md);
border-top: 1px solid var(--border-color);
}
.cost-item.disabled {
opacity: 0.5;
color: var(--text-secondary);
}
.cost-item.discount {
color: var(--accent-pink);
}
.cost-item.discount .cost-value {
color: var(--accent-pink);
}
@media (max-width: 768px) {
.form-wrapper {
grid-template-columns: 1fr;
}
.cost-summary-content {
position: static;
}
.form-card {
padding: var(--spacing-md);
}
.form-row {
grid-template-columns: 1fr;
}
.button-group {
flex-direction: column;
}
}
</style>
<?php $__env->stopSection(); ?>
<?php $__env->startSection('content'); ?>
<div class="container" style="padding:20px;">
<div class="page-intro">
<h1>Request Custom Design</h1>
<p>Create a custom wallpaper, mural, or fabric design tailored to your needs</p>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($errors->any()): ?>
<div style="background-color: #f8d7da; border: 1px solid var(--border-color); color: var(--text-primary); padding: var(--spacing-md); border-radius: 8px; margin-bottom: var(--spacing-lg);">
<h4 style="margin-top: 0;">Please correct the following errors:</h4>
<ul>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $errors->all(); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $error): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<li><?php echo e($error); ?></li>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</ul>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(session('success')): ?>
<div style="background-color: var(--accent-light); border: 1px solid var(--border-color); color: var(--text-primary); padding: var(--spacing-md); border-radius: 8px; margin-bottom: var(--spacing-lg);">
<?php echo e(session('success')); ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<!-- Info Box -->
<div class="info-box">
<h2>How It Works</h2>
<ul>
<li>Submit your custom order with design specifications and reference images</li>
<li>Pay a 20% non-refundable deposit to commence design work</li>
<li>Our team creates your design and prepares proofs for review</li>
<li>Pay the remaining 80% balance to proceed with printing and shipping</li>
</ul>
</div>
<!-- Form -->
<div class="form-wrapper">
<form action="<?php echo e(route('custom-orders.store')); ?>" method="POST" enctype="multipart/form-data" id="custom-order-form" class="form-card" data-action="<?php echo e(route('custom-orders.store')); ?>">
<?php echo csrf_field(); ?>
<!-- Order Type & Dimensions -->
<div class="form-section">
<h2>Order Details</h2>
<div class="form-group">
<label for="type">Order Type *</label>
<select id="type" name="type" required>
<option value="">-- Select a type --</option>
<option value="wallpaper" <?php echo e(old('type') == 'wallpaper' ? 'selected' : ''); ?>>Wallpaper (tileable pattern)</option>
<option value="mural" <?php echo e(old('type') == 'mural' ? 'selected' : ''); ?>>Mural (large format)</option>
<option value="fabric" <?php echo e(old('type') == 'fabric' ? 'selected' : ''); ?>>Fabric (linear meter)</option>
</select>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__errorArgs = ['type'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<p class="error-message"><?php echo e($message); ?></p>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div class="form-row">
<div class="form-group">
<label for="width">Width (meters) *</label>
<input type="number" id="width" name="width" step="0.01" min="0.1" value="<?php echo e(old('width')); ?>" required>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__errorArgs = ['width'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<p class="error-message"><?php echo e($message); ?></p>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div class="form-group">
<label for="height">Height (meters) *</label>
<input type="number" id="height" name="height" step="0.01" min="0.1" value="<?php echo e(old('height')); ?>" required>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__errorArgs = ['height'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<p class="error-message"><?php echo e($message); ?></p>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
</div>
<div class="form-row">
<div class="form-group">
<label for="quantity">Quantity *</label>
<input type="number" id="quantity" name="quantity" value="<?php echo e(old('quantity', 1)); ?>" min="1" required>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__errorArgs = ['quantity'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<p class="error-message"><?php echo e($message); ?></p>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div class="form-group">
<label for="print_stock_id">Print Material *</label>
<select id="print_stock_id" name="print_stock_id" required>
<option value="">-- Select material --</option>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $printStocks; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $stock): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<option value="<?php echo e($stock->id); ?>" <?php echo e(old('print_stock_id') == $stock->id ? 'selected' : ''); ?>>
<?php echo e($stock->name); ?> (<?php echo e($stock->cost_per_meter ? 'R' . number_format($stock->cost_per_meter, 2) . '/m' : 'R' . number_format($stock->cost_per_m2, 2) . '/m²'); ?>)
</option>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</select>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__errorArgs = ['print_stock_id'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<p class="error-message"><?php echo e($message); ?></p>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
</div>
</div>
<!-- Design Brief -->
<div class="form-section">
<h2>Design Brief</h2>
<div class="form-group form-row full">
<label for="customer_brief">Design Brief (minimum 50 characters) *</label>
<p class="form-group-hint">Tell us about your design concept, colors, style, and any specific requirements</p>
<textarea id="customer_brief" name="customer_brief" placeholder="Describe your custom design vision..." minlength="50" required><?php echo e(old('customer_brief')); ?></textarea>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__errorArgs = ['customer_brief'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<p class="error-message"><?php echo e($message); ?></p>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<div class="form-group form-row full">
<label for="special_instructions">Special Instructions (optional)</label>
<textarea id="special_instructions" name="special_instructions" placeholder="Any additional notes or requirements..."><?php echo e(old('special_instructions')); ?></textarea>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__errorArgs = ['special_instructions'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<p class="error-message"><?php echo e($message); ?></p>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
</div>
<!-- Reference Images -->
<div class="form-section">
<h2>Reference Images</h2>
<div class="form-group form-row full">
<label>Upload Reference Images</label>
<p class="form-group-hint">Upload inspiration images, mood boards, or reference materials for your design</p>
<div class="upload-area" onclick="document.getElementById('reference-images').click()">
<input type="file" id="reference-images" name="reference_images[]" multiple accept="image/*" style="display: none;">
<svg fill="none" stroke="currentColor" viewBox="0 0 48 48">
<path d="M28 8H12a4 4 0 00-4 4v20m32-12v8a4 4 0 01-4 4H12a4 4 0 01-4-4v-4m32-12l-3.172-3.172a4 4 0 00-5.656 0L28 12M12 32l3.172-3.172a4 4 0 015.656 0L32 32" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
</svg>
<p style="margin: 0;">Click to upload or drag and drop</p>
<p class="hint">PNG, JPG, GIF, WebP up to 5MB</p>
</div>
<div id="file-list"></div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__errorArgs = ['reference_images.*'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<p class="error-message"><?php echo e($message); ?></p>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
</div>
<!-- Library Agreement -->
<div class="form-section">
<h2>Design Library</h2>
<div class="checkbox-group">
<label class="checkbox-option">
<input type="checkbox" name="library_discount" value="1" <?php echo e(old('library_discount') ? 'checked' : ''); ?>>
<div class="checkbox-content">
<p style="font-weight: 600; margin-bottom: 0.25rem;">Allow us to use your design in our library</p>
<p>If you agree, we'll apply a <strong>20% discount to the design fee</strong>. This means we may offer similar designs to other customers in the future.</p>
</div>
</label>
</div>
</div>
<!-- Submit Buttons -->
<div class="button-group">
<button type="submit" class="btn">Submit Order</button>
<a href="<?php echo e(route('my-orders')); ?>" class="btn btn-cancel">Cancel</a>
</div>
</form>
<!-- Cost Summary Sidebar -->
<div class="cost-summary">
<div class="cost-summary-content">
<h3>Cost Summary</h3>
<div class="cost-item disabled" id="material-cost-item">
<span class="cost-label">Material Cost</span>
<span class="cost-value">-</span>
</div>
<div class="cost-item disabled" id="design-fee-item">
<span class="cost-label">Design Fee</span>
<span class="cost-value">-</span>
</div>
<div class="cost-item disabled" id="discount-item" style="display: none;">
<span class="cost-label">Library Discount</span>
<span class="cost-value">-</span>
</div>
<div class="cost-item total">
<span>Deposit Required (20%)</span>
<span class="cost-value" id="deposit-amount">R0.00</span>
</div>
<div class="design-fee-note">
<strong>Note:</strong> 20% non-refundable deposit covers design work. Pay the remaining 80% after proof approval.
</div>
</div>
<div style="background: var(--accent-light); padding: 1.5rem; border-radius: 20px; margin-bottom: 1rem;">
<p style="margin: 0 0 0.5rem 0; color: black;">Estimated Total:</p>
<div style="font-family: 'Abril Fatface', cursive; font-size: 3rem; font-weight: 400; color: white;">R<span id="total-cost">0.00</span></div>
<small style="color: #fff; display: block; margin-top: 0.5rem;">incl. VAT</small>
</div>
</div>
<!-- Total Cost Display -->
</div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
console.log('=== CUSTOM ORDER FORM DEBUG ===');
const form = document.getElementById('custom-order-form');
console.log('Form element:', form);
console.log('Form action:', form.action);
console.log('Form method:', form.method);
console.log('Form enctype:', form.enctype);
console.log('Form ID:', form.id);
console.log('Form classes:', form.className);
if (!form) {
console.error('FORM NOT FOUND!');
return;
}
// ===== COST CALCULATION =====
const DESIGN_FEE = 500; // Base design fee in Rands
const DISCOUNT_PERCENTAGE = 0.20; // 20% discount for library usage
// Get form inputs
const typeSelect = document.getElementById('type');
const widthInput = document.getElementById('width');
const heightInput = document.getElementById('height');
const quantityInput = document.getElementById('quantity');
const stockSelect = document.getElementById('print_stock_id');
const libraryCheckbox = document.querySelector('input[name="library_discount"]');
// Get summary elements
const materialCostItem = document.getElementById('material-cost-item');
const designFeeItem = document.getElementById('design-fee-item');
const discountItem = document.getElementById('discount-item');
const depositAmount = document.getElementById('deposit-amount');
// Store print stocks data
const printStocksData = {};
<?php $__currentLoopData = $printStocks; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $stock): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
printStocksData[<?php echo e($stock->id); ?>] = {
name: '<?php echo e($stock->name); ?>',
width: <?php echo e($stock->width ?? 0.53); ?>,
costPerMeter: <?php echo e($stock->cost_per_meter ?? 0); ?>,
costPerM2: <?php echo e($stock->cost_per_m2 ?? 0); ?>
};
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
function calculateCosts() {
const type = typeSelect.value;
const width = parseFloat(widthInput.value) || 0;
const height = parseFloat(heightInput.value) || 0;
const quantity = parseFloat(quantityInput.value) || 1;
const stockId = stockSelect.value;
const hasLibraryDiscount = libraryCheckbox?.checked || false;
if (!type || !stockId || width <= 0 || height <= 0) {
// Show disabled state
materialCostItem.classList.add('disabled');
designFeeItem.classList.add('disabled');
discountItem.style.display = 'none';
depositAmount.textContent = 'R0.00';
document.getElementById('total-cost').textContent = '0.00';
document.getElementById('cost-breakdown').textContent = '';
return;
}
const stock = printStocksData[stockId];
if (!stock) return;
// Calculate material cost based on type
let materialCost = 0;
let breakdown = '';
if (type === 'wallpaper') {
// Wallpaper: Takes into account stock width
// Calculate number of vertical strips needed: ceil(wall_height / stock_width)
// Calculate total length: number_of_strips × wall_width
// Cost = total_length × cost_per_meter × quantity
const stockWidth = stock.width || 0.53; // Default to standard wallpaper width if not specified
const stripsNeeded = Math.ceil(height / stockWidth);
const totalLength = stripsNeeded * width;
materialCost = totalLength * stock.costPerMeter * quantity;
breakdown = `Stock: R${stock.costPerMeter.toFixed(2)}/m × ${totalLength.toFixed(2)}m`;
} else if (type === 'mural') {
// Mural: width × height in m²
// Cost = cost_per_m2 × (width × height) × quantity
const area = width * height;
materialCost = area * stock.costPerM2 * quantity;
breakdown = `Stock: R${stock.costPerM2.toFixed(2)}/m² × ${area.toFixed(2)}m²`;
} else if (type === 'fabric') {
// Fabric: width input = length in linear meters
// Cost = cost_per_meter × length × quantity
materialCost = width * stock.costPerMeter * quantity;
breakdown = `Stock: R${stock.costPerMeter.toFixed(2)}/m × ${width.toFixed(2)}m`;
}
// Calculate design fee
let designFee = DESIGN_FEE;
let discount = 0;
if (hasLibraryDiscount) {
discount = designFee * DISCOUNT_PERCENTAGE;
designFee -= discount;
}
// Total cost
const totalCost = materialCost + designFee;
const depositRequired = totalCost * 0.20; // 20% deposit
const remainingBalance = totalCost * 0.80; // 80% remaining
// Update UI
materialCostItem.classList.remove('disabled');
materialCostItem.innerHTML = `<span class="cost-label">Material Cost</span><span class="cost-value">R${materialCost.toFixed(2)}</span>`;
designFeeItem.classList.remove('disabled');
designFeeItem.innerHTML = `<span class="cost-label">Design Fee</span><span class="cost-value">R${designFee.toFixed(2)}</span>`;
if (hasLibraryDiscount && discount > 0) {
discountItem.style.display = 'flex';
discountItem.classList.add('discount');
discountItem.innerHTML = `<span class="cost-label">Library Discount (20%)</span><span class="cost-value">-R${discount.toFixed(2)}</span>`;
} else {
discountItem.style.display = 'none';
}
depositAmount.textContent = `R${depositRequired.toFixed(2)}`;
document.getElementById('total-cost').textContent = `${totalCost.toFixed(2)}`;
document.getElementById('cost-breakdown').textContent = breakdown;
}
// Add event listeners for cost calculation
if (typeSelect) typeSelect.addEventListener('change', calculateCosts);
if (widthInput) widthInput.addEventListener('input', calculateCosts);
if (heightInput) heightInput.addEventListener('input', calculateCosts);
if (quantityInput) quantityInput.addEventListener('input', calculateCosts);
if (stockSelect) stockSelect.addEventListener('change', calculateCosts);
if (libraryCheckbox) libraryCheckbox.addEventListener('change', calculateCosts);
// Update field labels based on type
function updateFieldLabels() {
const type = typeSelect.value;
const widthLabel = document.querySelector('label[for="width"]');
const heightLabel = document.querySelector('label[for="height"]');
const heightGroup = heightInput?.parentElement;
if (type === 'wallpaper') {
if (widthLabel) widthLabel.innerHTML = 'Wall Width (meters) *';
if (heightLabel) heightLabel.innerHTML = 'Wall Height (meters) *<br><small style="font-weight: normal; color: var(--text-secondary); display: block; margin-top: 0.25rem;">The system will calculate strips needed based on stock width</small>';
if (heightGroup) heightGroup.style.display = 'block';
} else if (type === 'mural') {
if (widthLabel) widthLabel.textContent = 'Width (meters) *';
if (heightGroup) heightGroup.style.display = 'block';
if (heightLabel) heightLabel.textContent = 'Height (meters) *';
} else if (type === 'fabric') {
if (widthLabel) widthLabel.textContent = 'Length (meters) *';
if (heightGroup) heightGroup.style.display = 'none';
}
}
if (typeSelect) {
typeSelect.addEventListener('change', updateFieldLabels);
}
// Initial label update
updateFieldLabels();
// Initial calculation
calculateCosts();
// Handle reference image uploads
const referenceImagesInput = document.getElementById('reference-images');
if (referenceImagesInput) {
referenceImagesInput.addEventListener('change', function() {
const fileList = document.getElementById('file-list');
if (fileList) {
fileList.innerHTML = '';
for (let file of this.files) {
const item = document.createElement('div');
item.className = 'file-item';
item.innerHTML = `<svg fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M4 4a2 2 0 012-2h4.586A2 2 0 0112 2.586L15.414 6A2 2 0 0116 7.414V16a2 2 0 01-2 2H6a2 2 0 01-2-2V4z" clip-rule="evenodd"/></svg><span>${file.name}</span>`;
fileList.appendChild(item);
}
}
});
}
// Find the submit button and log when it's clicked
const submitBtn = form.querySelector('button[type="submit"]');
if (submitBtn) {
console.log('Submit button found:', submitBtn);
submitBtn.addEventListener('click', function(e) {
console.log('===== SUBMIT BUTTON CLICKED =====');
console.log('Event:', e);
console.log('Form will submit to:', form.action);
});
}
// Handle form submission - FORCE IT TO SUBMIT
form.addEventListener('submit', function(e) {
console.log('===== FORM SUBMIT EVENT FIRED =====');
console.log('Event type:', e.type);
console.log('Event defaultPrevented:', e.defaultPrevented);
console.log('Action:', form.action);
console.log('Method:', form.method);
console.log('About to submit to:', form.action);
console.log('Checking if global script should skip this form...');
console.log('Form action includes /custom-orders:', form.action.includes('/custom-orders'));
// Don't prevent - let it submit naturally
});
console.log('Event listeners attached successfully');
});
</script>
<?php $__env->stopSection(); ?>
<?php echo $__env->make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?><?php /**PATH /var/www/additional_design/resources/views/custom-orders/create.blade.php ENDPATH**/ ?>
@@ -1,517 +0,0 @@
<div class="fi-topbar-ctn">
<?php
$isRtl = __('filament-panels::layout.direction') === 'rtl';
$isSidebarCollapsibleOnDesktop = filament()->isSidebarCollapsibleOnDesktop();
$isSidebarFullyCollapsibleOnDesktop = filament()->isSidebarFullyCollapsibleOnDesktop();
$hasTopNavigation = filament()->hasTopNavigation();
$hasNavigation = filament()->hasNavigation();
$hasTenancy = filament()->hasTenancy();
?>
<nav class="fi-topbar">
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::TOPBAR_START)); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasNavigation): ?>
<?php if (isset($component)) { $__componentOriginalf0029cce6d19fd6d472097ff06a800a1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.icon-button','data' => ['color' => 'gray','icon' => \Filament\Support\Icons\Heroicon::OutlinedBars3,'iconAlias' => \Filament\View\PanelsIconAlias::TOPBAR_OPEN_SIDEBAR_BUTTON,'iconSize' => 'lg','label' => __('filament-panels::layout.actions.sidebar.expand.label'),'xCloak' => true,'xData' => '{}','xOn:click' => '$store.sidebar.open()','xShow' => '! $store.sidebar.isOpen','class' => 'fi-topbar-open-sidebar-btn']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::icon-button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'gray','icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::OutlinedBars3),'icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\View\PanelsIconAlias::TOPBAR_OPEN_SIDEBAR_BUTTON),'icon-size' => 'lg','label' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(__('filament-panels::layout.actions.sidebar.expand.label')),'x-cloak' => true,'x-data' => '{}','x-on:click' => '$store.sidebar.open()','x-show' => '! $store.sidebar.isOpen','class' => 'fi-topbar-open-sidebar-btn']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $attributes = $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $component = $__componentOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($component)) { $__componentOriginalf0029cce6d19fd6d472097ff06a800a1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.icon-button','data' => ['color' => 'gray','icon' => \Filament\Support\Icons\Heroicon::OutlinedXMark,'iconAlias' => \Filament\View\PanelsIconAlias::TOPBAR_CLOSE_SIDEBAR_BUTTON,'iconSize' => 'lg','label' => __('filament-panels::layout.actions.sidebar.collapse.label'),'xCloak' => true,'xData' => '{}','xOn:click' => '$store.sidebar.close()','xShow' => '$store.sidebar.isOpen','class' => 'fi-topbar-close-sidebar-btn']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::icon-button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'gray','icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::OutlinedXMark),'icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\View\PanelsIconAlias::TOPBAR_CLOSE_SIDEBAR_BUTTON),'icon-size' => 'lg','label' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(__('filament-panels::layout.actions.sidebar.collapse.label')),'x-cloak' => true,'x-data' => '{}','x-on:click' => '$store.sidebar.close()','x-show' => '$store.sidebar.isOpen','class' => 'fi-topbar-close-sidebar-btn']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $attributes = $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $component = $__componentOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<div class="fi-topbar-start">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($isSidebarCollapsibleOnDesktop || $isSidebarFullyCollapsibleOnDesktop): ?>
<div
x-show="$store.sidebar.isOpen || <?php echo \Illuminate\Support\Js::from($isSidebarCollapsibleOnDesktop)->toHtml() ?>"
class="fi-topbar-collapse-sidebar-btn-ctn"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($isSidebarCollapsibleOnDesktop): ?>
<?php if (isset($component)) { $__componentOriginalf0029cce6d19fd6d472097ff06a800a1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.icon-button','data' => ['color' => 'gray','icon' => $isRtl ? \Filament\Support\Icons\Heroicon::OutlinedChevronLeft : \Filament\Support\Icons\Heroicon::OutlinedChevronRight,'iconAlias' =>
$isRtl
? [
\Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON_RTL,
\Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON,
]
: \Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON
,'iconSize' => 'lg','label' => __('filament-panels::layout.actions.sidebar.expand.label'),'xCloak' => true,'xData' => '{}','xOn:click' => '$store.sidebar.open()','xShow' => '! $store.sidebar.isOpen','class' => 'fi-topbar-open-collapse-sidebar-btn']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::icon-button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'gray','icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isRtl ? \Filament\Support\Icons\Heroicon::OutlinedChevronLeft : \Filament\Support\Icons\Heroicon::OutlinedChevronRight),'icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
$isRtl
? [
\Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON_RTL,
\Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON,
]
: \Filament\View\PanelsIconAlias::SIDEBAR_EXPAND_BUTTON
),'icon-size' => 'lg','label' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(__('filament-panels::layout.actions.sidebar.expand.label')),'x-cloak' => true,'x-data' => '{}','x-on:click' => '$store.sidebar.open()','x-show' => '! $store.sidebar.isOpen','class' => 'fi-topbar-open-collapse-sidebar-btn']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $attributes = $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $component = $__componentOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($isSidebarCollapsibleOnDesktop || $isSidebarFullyCollapsibleOnDesktop): ?>
<?php if (isset($component)) { $__componentOriginalf0029cce6d19fd6d472097ff06a800a1 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.icon-button','data' => ['color' => 'gray','icon' => $isRtl ? \Filament\Support\Icons\Heroicon::OutlinedChevronRight : \Filament\Support\Icons\Heroicon::OutlinedChevronLeft,'iconAlias' =>
$isRtl
? [
\Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON_RTL,
\Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON,
]
: \Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON
,'iconSize' => 'lg','label' => __('filament-panels::layout.actions.sidebar.collapse.label'),'xCloak' => true,'xData' => '{}','xOn:click' => '$store.sidebar.close()','xShow' => '$store.sidebar.isOpen','class' => 'fi-topbar-close-collapse-sidebar-btn']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::icon-button'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['color' => 'gray','icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isRtl ? \Filament\Support\Icons\Heroicon::OutlinedChevronRight : \Filament\Support\Icons\Heroicon::OutlinedChevronLeft),'icon-alias' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
$isRtl
? [
\Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON_RTL,
\Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON,
]
: \Filament\View\PanelsIconAlias::SIDEBAR_COLLAPSE_BUTTON
),'icon-size' => 'lg','label' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(__('filament-panels::layout.actions.sidebar.collapse.label')),'x-cloak' => true,'x-data' => '{}','x-on:click' => '$store.sidebar.close()','x-show' => '$store.sidebar.isOpen','class' => 'fi-topbar-close-collapse-sidebar-btn']); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $attributes = $__attributesOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__attributesOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1)): ?>
<?php $component = $__componentOriginalf0029cce6d19fd6d472097ff06a800a1; ?>
<?php unset($__componentOriginalf0029cce6d19fd6d472097ff06a800a1); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::TOPBAR_LOGO_BEFORE)); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($homeUrl = filament()->getHomeUrl()): ?>
<a <?php echo e(\Filament\Support\generate_href_html($homeUrl)); ?>>
<?php if (isset($component)) { $__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.logo','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::logo'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94)): ?>
<?php $attributes = $__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94; ?>
<?php unset($__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94)): ?>
<?php $component = $__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94; ?>
<?php unset($__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94); ?>
<?php endif; ?>
</a>
<?php else: ?>
<?php if (isset($component)) { $__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.logo','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::logo'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94)): ?>
<?php $attributes = $__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94; ?>
<?php unset($__attributesOriginalb501e8c73315a10eb0eb5fd14fda0d94); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94)): ?>
<?php $component = $__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94; ?>
<?php unset($__componentOriginalb501e8c73315a10eb0eb5fd14fda0d94); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::TOPBAR_LOGO_AFTER)); ?>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasTopNavigation || (! $hasNavigation)): ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasTenancy && filament()->hasTenantMenu()): ?>
<?php if (isset($component)) { $__componentOriginal32b9f4abfc80490155cb7c5dfaf8790d = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal32b9f4abfc80490155cb7c5dfaf8790d = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.tenant-menu','data' => ['teleport' => true]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::tenant-menu'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['teleport' => true]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal32b9f4abfc80490155cb7c5dfaf8790d)): ?>
<?php $attributes = $__attributesOriginal32b9f4abfc80490155cb7c5dfaf8790d; ?>
<?php unset($__attributesOriginal32b9f4abfc80490155cb7c5dfaf8790d); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal32b9f4abfc80490155cb7c5dfaf8790d)): ?>
<?php $component = $__componentOriginal32b9f4abfc80490155cb7c5dfaf8790d; ?>
<?php unset($__componentOriginal32b9f4abfc80490155cb7c5dfaf8790d); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasNavigation): ?>
<?php
$navigation = filament()->getNavigation();
?>
<ul class="fi-topbar-nav-groups">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $navigation; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $group): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php
$groupLabel = $group->getLabel();
$groupExtraTopbarAttributeBag = $group->getExtraTopbarAttributeBag();
$isGroupActive = $group->isActive();
$groupIcon = $group->getIcon();
?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($groupLabel): ?>
<?php if (isset($component)) { $__componentOriginal22ab0dbc2c6619d5954111bba06f01db = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal22ab0dbc2c6619d5954111bba06f01db = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.index','data' => ['placement' => 'bottom-start','teleport' => true,'attributes' => \Filament\Support\prepare_inherited_attributes($groupExtraTopbarAttributeBag)]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['placement' => 'bottom-start','teleport' => true,'attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\prepare_inherited_attributes($groupExtraTopbarAttributeBag))]); ?>
<?php $__env->slot('trigger', null, []); ?>
<?php if (isset($component)) { $__componentOriginal42035aa49c877d648231e14ff76681c7 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal42035aa49c877d648231e14ff76681c7 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.topbar.item','data' => ['active' => $isGroupActive,'icon' => $groupIcon]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::topbar.item'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['active' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isGroupActive),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($groupIcon)]); ?>
<?php echo e($groupLabel); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal42035aa49c877d648231e14ff76681c7)): ?>
<?php $attributes = $__attributesOriginal42035aa49c877d648231e14ff76681c7; ?>
<?php unset($__attributesOriginal42035aa49c877d648231e14ff76681c7); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal42035aa49c877d648231e14ff76681c7)): ?>
<?php $component = $__componentOriginal42035aa49c877d648231e14ff76681c7; ?>
<?php unset($__componentOriginal42035aa49c877d648231e14ff76681c7); ?>
<?php endif; ?>
<?php $__env->endSlot(); ?>
<?php
$lists = [];
foreach ($group->getItems() as $item) {
if ($childItems = $item->getChildItems()) {
$lists[] = [
$item,
...$childItems,
];
$lists[] = [];
continue;
}
if (empty($lists)) {
$lists[] = [$item];
continue;
}
$lists[count($lists) - 1][] = $item;
}
if (empty($lists[count($lists) - 1])) {
array_pop($lists);
}
?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $lists; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $list): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php if (isset($component)) { $__componentOriginal66687bf0670b9e16f61e667468dc8983 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal66687bf0670b9e16f61e667468dc8983 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.list.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown.list'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $list; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php
$isItemActive = $item->isActive();
$itemBadge = $item->getBadge();
$itemBadgeColor = $item->getBadgeColor();
$itemBadgeTooltip = $item->getBadgeTooltip();
$itemUrl = $item->getUrl();
$itemIcon = $isItemActive ? ($item->getActiveIcon() ?? $item->getIcon()) : $item->getIcon();
$shouldItemOpenUrlInNewTab = $item->shouldOpenUrlInNewTab();
?>
<?php if (isset($component)) { $__componentOriginal1bd4d8e254cc40cdb05bd99df3e63f78 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal1bd4d8e254cc40cdb05bd99df3e63f78 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament::components.dropdown.list.item','data' => ['badge' => $itemBadge,'badgeColor' => $itemBadgeColor,'badgeTooltip' => $itemBadgeTooltip,'color' => $isItemActive ? 'primary' : 'gray','href' => $itemUrl,'icon' => $itemIcon,'tag' => 'a','target' => $shouldItemOpenUrlInNewTab ? '_blank' : null]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament::dropdown.list.item'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['badge' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadge),'badge-color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadgeColor),'badge-tooltip' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadgeTooltip),'color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isItemActive ? 'primary' : 'gray'),'href' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemUrl),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemIcon),'tag' => 'a','target' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($shouldItemOpenUrlInNewTab ? '_blank' : null)]); ?>
<?php echo e($item->getLabel()); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal1bd4d8e254cc40cdb05bd99df3e63f78)): ?>
<?php $attributes = $__attributesOriginal1bd4d8e254cc40cdb05bd99df3e63f78; ?>
<?php unset($__attributesOriginal1bd4d8e254cc40cdb05bd99df3e63f78); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal1bd4d8e254cc40cdb05bd99df3e63f78)): ?>
<?php $component = $__componentOriginal1bd4d8e254cc40cdb05bd99df3e63f78; ?>
<?php unset($__componentOriginal1bd4d8e254cc40cdb05bd99df3e63f78); ?>
<?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal66687bf0670b9e16f61e667468dc8983)): ?>
<?php $attributes = $__attributesOriginal66687bf0670b9e16f61e667468dc8983; ?>
<?php unset($__attributesOriginal66687bf0670b9e16f61e667468dc8983); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal66687bf0670b9e16f61e667468dc8983)): ?>
<?php $component = $__componentOriginal66687bf0670b9e16f61e667468dc8983; ?>
<?php unset($__componentOriginal66687bf0670b9e16f61e667468dc8983); ?>
<?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal22ab0dbc2c6619d5954111bba06f01db)): ?>
<?php $attributes = $__attributesOriginal22ab0dbc2c6619d5954111bba06f01db; ?>
<?php unset($__attributesOriginal22ab0dbc2c6619d5954111bba06f01db); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal22ab0dbc2c6619d5954111bba06f01db)): ?>
<?php $component = $__componentOriginal22ab0dbc2c6619d5954111bba06f01db; ?>
<?php unset($__componentOriginal22ab0dbc2c6619d5954111bba06f01db); ?>
<?php endif; ?>
<?php else: ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $group->getItems(); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php
$isItemActive = $item->isActive();
$itemActiveIcon = $item->getActiveIcon();
$itemBadge = $item->getBadge();
$itemBadgeColor = $item->getBadgeColor();
$itemBadgeTooltip = $item->getBadgeTooltip();
$itemIcon = $item->getIcon();
$shouldItemOpenUrlInNewTab = $item->shouldOpenUrlInNewTab();
$itemUrl = $item->getUrl();
?>
<?php if (isset($component)) { $__componentOriginal42035aa49c877d648231e14ff76681c7 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal42035aa49c877d648231e14ff76681c7 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.topbar.item','data' => ['active' => $isItemActive,'activeIcon' => $itemActiveIcon,'badge' => $itemBadge,'badgeColor' => $itemBadgeColor,'badgeTooltip' => $itemBadgeTooltip,'icon' => $itemIcon,'shouldOpenUrlInNewTab' => $shouldItemOpenUrlInNewTab,'url' => $itemUrl]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::topbar.item'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['active' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isItemActive),'active-icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemActiveIcon),'badge' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadge),'badge-color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadgeColor),'badge-tooltip' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemBadgeTooltip),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemIcon),'should-open-url-in-new-tab' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($shouldItemOpenUrlInNewTab),'url' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemUrl)]); ?>
<?php echo e($item->getLabel()); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal42035aa49c877d648231e14ff76681c7)): ?>
<?php $attributes = $__attributesOriginal42035aa49c877d648231e14ff76681c7; ?>
<?php unset($__attributesOriginal42035aa49c877d648231e14ff76681c7); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal42035aa49c877d648231e14ff76681c7)): ?>
<?php $component = $__componentOriginal42035aa49c877d648231e14ff76681c7; ?>
<?php unset($__componentOriginal42035aa49c877d648231e14ff76681c7); ?>
<?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</ul>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<div
<?php if($hasTenancy): ?>
x-persist="topbar.end.panel-<?php echo e(filament()->getId()); ?>.tenant-<?php echo e(filament()->getTenant()?->getKey()); ?>"
<?php else: ?>
x-persist="topbar.end.panel-<?php echo e(filament()->getId()); ?>"
<?php endif; ?>
class="fi-topbar-end"
>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::GLOBAL_SEARCH_BEFORE)); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filament()->isGlobalSearchEnabled() && filament()->getGlobalSearchPosition() === \Filament\Enums\GlobalSearchPosition::Topbar): ?>
<?php
$__split = function ($name, $params = []) {
return [$name, $params];
};
[$__name, $__params] = $__split(Filament\Livewire\GlobalSearch::class);
$key = null;
$key ??= \Livewire\Features\SupportCompiledWireKeys\SupportCompiledWireKeys::generateKey('lw-1441774602-0', null);
$__html = app('livewire')->mount($__name, $__params, $key);
echo $__html;
unset($__html);
unset($__name);
unset($__params);
unset($__split);
if (isset($__slots)) unset($__slots);
?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::GLOBAL_SEARCH_AFTER)); ?>
<?php if(filament()->auth()->check()): ?>
<?php if(filament()->hasDatabaseNotifications() && filament()->getDatabaseNotificationsPosition() === \Filament\Enums\DatabaseNotificationsPosition::Topbar): ?>
<?php
$__split = function ($name, $params = []) {
return [$name, $params];
};
[$__name, $__params] = $__split(Filament\Livewire\DatabaseNotifications::class, [
'lazy' => filament()->hasLazyLoadedDatabaseNotifications(),
]);
$key = null;
$key ??= \Livewire\Features\SupportCompiledWireKeys\SupportCompiledWireKeys::generateKey('lw-1441774602-1', null);
$__html = app('livewire')->mount($__name, $__params, $key);
echo $__html;
unset($__html);
unset($__name);
unset($__params);
unset($__split);
if (isset($__slots)) unset($__slots);
?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(filament()->hasUserMenu() && filament()->getUserMenuPosition() === \Filament\Enums\UserMenuPosition::Topbar): ?>
<?php if (isset($component)) { $__componentOriginalf72c4437b846e6919081d8fc29939c50 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginalf72c4437b846e6919081d8fc29939c50 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-panels::components.user-menu','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-panels::user-menu'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginalf72c4437b846e6919081d8fc29939c50)): ?>
<?php $attributes = $__attributesOriginalf72c4437b846e6919081d8fc29939c50; ?>
<?php unset($__attributesOriginalf72c4437b846e6919081d8fc29939c50); ?>
<?php endif; ?>
<?php if (isset($__componentOriginalf72c4437b846e6919081d8fc29939c50)): ?>
<?php $component = $__componentOriginalf72c4437b846e6919081d8fc29939c50; ?>
<?php unset($__componentOriginalf72c4437b846e6919081d8fc29939c50); ?>
<?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php echo e(\Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::TOPBAR_END)); ?>
</nav>
<?php if (isset($component)) { $__componentOriginal028e05680f6c5b1e293abd7fbe5f9758 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-actions::components.modals','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-actions::modals'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758)): ?>
<?php $attributes = $__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758; ?>
<?php unset($__attributesOriginal028e05680f6c5b1e293abd7fbe5f9758); ?>
<?php endif; ?>
<?php if (isset($__componentOriginal028e05680f6c5b1e293abd7fbe5f9758)): ?>
<?php $component = $__componentOriginal028e05680f6c5b1e293abd7fbe5f9758; ?>
<?php unset($__componentOriginal028e05680f6c5b1e293abd7fbe5f9758); ?>
<?php endif; ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/filament/resources/views/livewire/topbar.blade.php ENDPATH**/ ?>
@@ -1,53 +0,0 @@
<?php extract((new \Illuminate\Support\Collection($attributes->getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames((['field','class']));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter((['field','class']), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php if (isset($component)) { $__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28 = $component; } ?>
<?php if (isset($attributes)) { $__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28 = $attributes; } ?>
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'filament-forms::components.field-wrapper','data' => ['field' => $field,'class' => $class]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
<?php $component->withName('filament-forms::field-wrapper'); ?>
<?php if ($component->shouldRender()): ?>
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes(['field' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($field),'class' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($class)]); ?>
<?php echo e($slot ?? ""); ?>
<?php echo $__env->renderComponent(); ?>
<?php endif; ?>
<?php if (isset($__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28)): ?>
<?php $attributes = $__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28; ?>
<?php unset($__attributesOriginala86dcd7e3fb4428c61bb5e13aa161d28); ?>
<?php endif; ?>
<?php if (isset($__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28)): ?>
<?php $component = $__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28; ?>
<?php unset($__componentOriginala86dcd7e3fb4428c61bb5e13aa161d28); ?>
<?php endif; ?><?php /**PATH /var/www/additional_design/storage/framework/views/f173681a20263f194334b1a3014b6285.blade.php ENDPATH**/ ?>
@@ -1,212 +0,0 @@
<?php $attributes ??= new \Illuminate\View\ComponentAttributeBag;
$__newAttributes = [];
$__propNames = \Illuminate\View\ComponentAttributeBag::extractPropNames(([
'alpineDisabled' => null,
'alpineValid' => null,
'disabled' => false,
'inlinePrefix' => false,
'inlineSuffix' => false,
'prefix' => null,
'prefixActions' => [],
'prefixIcon' => null,
'prefixIconColor' => 'gray',
'prefixIconAlias' => null,
'suffix' => null,
'suffixActions' => [],
'suffixIcon' => null,
'suffixIconColor' => 'gray',
'suffixIconAlias' => null,
'valid' => true,
]));
foreach ($attributes->all() as $__key => $__value) {
if (in_array($__key, $__propNames)) {
$$__key = $$__key ?? $__value;
} else {
$__newAttributes[$__key] = $__value;
}
}
$attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes);
unset($__propNames);
unset($__newAttributes);
foreach (array_filter(([
'alpineDisabled' => null,
'alpineValid' => null,
'disabled' => false,
'inlinePrefix' => false,
'inlineSuffix' => false,
'prefix' => null,
'prefixActions' => [],
'prefixIcon' => null,
'prefixIconColor' => 'gray',
'prefixIconAlias' => null,
'suffix' => null,
'suffixActions' => [],
'suffixIcon' => null,
'suffixIconColor' => 'gray',
'suffixIconAlias' => null,
'valid' => true,
]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) {
$$__key = $$__key ?? $__value;
}
$__defined_vars = get_defined_vars();
foreach ($attributes->all() as $__key => $__value) {
if (array_key_exists($__key, $__defined_vars)) unset($$__key);
}
unset($__defined_vars, $__key, $__value); ?>
<?php
use Filament\Support\View\Components\InputComponent\WrapperComponent\IconComponent;
use Illuminate\View\ComponentAttributeBag;
$prefixActions = array_filter(
$prefixActions,
fn (\Filament\Actions\Action $prefixAction): bool => $prefixAction->isVisible(),
);
$suffixActions = array_filter(
$suffixActions,
fn (\Filament\Actions\Action $suffixAction): bool => $suffixAction->isVisible(),
);
$hasPrefix = count($prefixActions) || $prefixIcon || filled($prefix);
$hasSuffix = count($suffixActions) || $suffixIcon || filled($suffix);
$hasAlpineDisabledClasses = filled($alpineDisabled);
$hasAlpineValidClasses = filled($alpineValid);
$hasAlpineClasses = $hasAlpineDisabledClasses || $hasAlpineValidClasses;
$wireTarget = $attributes->whereStartsWith(['wire:target'])->first();
$hasLoadingIndicator = filled($wireTarget);
if ($hasLoadingIndicator) {
$loadingIndicatorTarget = html_entity_decode($wireTarget, ENT_QUOTES);
}
?>
<div
<?php if($hasAlpineClasses): ?>
x-bind:class="{
<?php echo e($hasAlpineDisabledClasses ? "'fi-disabled': {$alpineDisabled}," : null); ?>
<?php echo e($hasAlpineValidClasses ? "'fi-invalid': ! ({$alpineValid})," : null); ?>
}"
<?php endif; ?>
<?php echo e($attributes
->except(['wire:target', 'tabindex'])
->class([
'fi-input-wrp',
'fi-disabled' => (! $hasAlpineClasses) && $disabled,
'fi-invalid' => (! $hasAlpineClasses) && (! $valid),
])); ?>
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasPrefix || $hasLoadingIndicator): ?>
<div
<?php if(! $hasPrefix): ?>
wire:loading.delay.<?php echo e(config('filament.livewire_loading_delay', 'default')); ?>.flex
wire:target="<?php echo e($loadingIndicatorTarget); ?>"
wire:key="<?php echo e(\Illuminate\Support\Str::random()); ?>"
<?php endif; ?>
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-input-wrp-prefix',
'fi-input-wrp-prefix-has-content' => $hasPrefix,
'fi-inline' => $inlinePrefix,
'fi-input-wrp-prefix-has-label' => filled($prefix),
]); ?>"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(count($prefixActions)): ?>
<div class="fi-input-wrp-actions">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $prefixActions; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $prefixAction): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php echo e($prefixAction); ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e(\Filament\Support\generate_icon_html($prefixIcon, $prefixIconAlias, (new \Illuminate\View\ComponentAttributeBag)
->merge([
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => $hasLoadingIndicator,
'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
], escape: false)
->color(IconComponent::class, $prefixIconColor))); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasLoadingIndicator): ?>
<?php echo e(\Filament\Support\generate_loading_indicator_html((new \Illuminate\View\ComponentAttributeBag([
'wire:loading.delay.' . config('filament.livewire_loading_delay', 'default') => $hasPrefix,
'wire:target' => $hasPrefix ? $loadingIndicatorTarget : null,
]))->color(IconComponent::class, 'gray'))); ?>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($prefix)): ?>
<span class="fi-input-wrp-label">
<?php echo e($prefix); ?>
</span>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<div
<?php if($hasLoadingIndicator && (! $hasPrefix)): ?>
<?php if($inlinePrefix): ?>
wire:loading.delay.<?php echo e(config('filament.livewire_loading_delay', 'default')); ?>.class.remove="ps-3"
<?php endif; ?>
wire:target="<?php echo e($loadingIndicatorTarget); ?>"
<?php endif; ?>
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-input-wrp-content-ctn',
'fi-input-wrp-content-ctn-ps' => $hasLoadingIndicator && (! $hasPrefix) && $inlinePrefix,
]); ?>"
>
<?php echo e($slot); ?>
</div>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if($hasSuffix): ?>
<div
class="<?php echo \Illuminate\Support\Arr::toCssClasses([
'fi-input-wrp-suffix',
'fi-inline' => $inlineSuffix,
'fi-input-wrp-suffix-has-label' => filled($suffix),
]); ?>"
>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(filled($suffix)): ?>
<span class="fi-input-wrp-label">
<?php echo e($suffix); ?>
</span>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
<?php echo e(\Filament\Support\generate_icon_html($suffixIcon, $suffixIconAlias, (new \Illuminate\View\ComponentAttributeBag)
->merge([
'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => $hasLoadingIndicator,
'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
], escape: false)
->color(IconComponent::class, $suffixIconColor))); ?>
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php if(count($suffixActions)): ?>
<div class="fi-input-wrp-actions">
<?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if BLOCK]><![endif]--><?php endif; ?><?php $__currentLoopData = $suffixActions; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $suffixAction): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<?php echo e($suffixAction); ?>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php endif; ?><?php if(\Livewire\Mechanisms\ExtendBlade\ExtendBlade::isRenderingLivewireComponent()): ?><!--[if ENDBLOCK]><![endif]--><?php endif; ?>
</div>
<?php /**PATH /var/www/additional_design/vendor/filament/support/resources/views/components/input/wrapper.blade.php ENDPATH**/ ?>

Some files were not shown because too many files have changed in this diff Show More