From 00b8ff77b2d395be5db318ca31390f12109d90ca Mon Sep 17 00:00:00 2001
From: twotalesanimation <80506065+twotalesanimation@users.noreply.github.com>
Date: Mon, 29 Dec 2025 14:43:24 +0200
Subject: [PATCH] yoco updated to use webhook
---
.env.example | 65 -
app/Helpers/Logger.php | 50 +
app/Http/Controllers/AccountController.php | 73 +
.../Controllers/Auth/GoogleAuthController.php | 74 +
.../Controllers/CustomOrderController.php | 316 ++
app/Http/Controllers/OrderController.php | 262 +-
app/Http/Middleware/VerifyCsrfToken.php | 17 +
app/Models/AppSetting.php | 40 +
app/Models/CustomOrder.php | 100 +
app/Models/CustomOrderFile.php | 35 +
app/Models/CustomOrderProof.php | 44 +
app/Models/CustomOrderSpecification.php | 42 +
app/Models/Order.php | 6 +-
app/Models/User.php | 2 +
bootstrap/app.php | 1 +
check_products.php | 12 +
composer.json | 5 +-
config/services.php | 22 +-
...025_12_09_add_google_id_to_users_table.php | 28 +
.../2025_12_09_create_app_settings_table.php | 31 +
...2025_12_09_create_custom_orders_tables.php | 93 +
public/css/styles.css | 187 +-
public/js/script.js | 23 +-
.../views/account/order-detail.blade.php | 420 +++
resources/views/account/orders.blade.php | 277 ++
.../views/account/pending-payments.blade.php | 94 +
resources/views/account/profile.blade.php | 275 ++
resources/views/auth/login.blade.php | 187 ++
resources/views/components/header.blade.php | 89 +-
.../views/custom-orders/create.blade.php | 749 +++++
.../custom-orders/deposit-success.blade.php | 150 +
resources/views/custom-orders/index.blade.php | 355 +++
resources/views/custom-orders/show.blade.php | 431 +++
resources/views/order-history.blade.php | 25 +-
resources/views/product-detail.blade.php | 8 +-
routes/api.php | 7 +
routes/web.php | 22 +-
.../07f69d5795cff36023392bba5118d65e.php | 91 -
.../0aa47c2ab87a57533b80c2bb4b3930a5.php | 74 -
...0b43769f58139770b64ab9dccb89db6a.blade.php | 6 -
.../0bcfbbb024ca890265d0c94b4bc8e9c5.php | 23 -
.../0bd5f576a924b89ab17a30cf16e6ad08.php | 79 -
.../0ced4ab8b623c6535cabe6077207c3f3.php | 49 -
.../0d11b7694f7a419aa9ed2bbbdf2dda56.php | 354 ---
.../0ff4c44d6c7a7dc85eddb6c22b81e0f3.php | 424 +++
.../1110161c070d609557c8a6c1fcc48147.php | 46 -
.../1130d2b8cd83a5966be7850e2d899795.php | 147 -
.../12dd7925def29d9b0f42cd5bfa646f44.php | 53 -
.../1575aae6437543bfaf50d3515c944142.php | 5 -
.../188f70ecf2f26b3a12d26b9291ea91c9.php | 17 -
.../19b3c4acfafb733d6a4d95652d5529f8.php | 135 -
.../1c1a588d1c9b277d3ae21decb63dcf81.php | 124 -
.../27dcc0c718a54e1b25f82047ae88c072.php | 76 -
.../2b58ef18ac3a69be239b865277695457.php | 53 -
.../2b5f4cc9a13273a6143a686c2fa1d3b4.php | 23 -
.../2b91b9a791ff7f292edb8c55adaa6117.php | 2821 -----------------
.../2cbdabaff7adb77281bce3493d2e0c33.php | 137 -
.../2d870470bd6fffdcf1b9facb07d1049b.php | 221 --
.../317ab1fc8ab0d9c5e22a5c4737c540b9.php | 104 -
.../34ae340ff479643953f86c68f04ac61d.php | 191 ++
.../35148eb10cca4a42fac641d4131e91d7.php | 96 -
.../3763665363475be06cdc81b77877ae07.php | 439 +++
.../3764fdc9fc3bd11621707db2096f5ed3.php | 106 -
.../39345582fc2db52dbc7f0f200cead333.php | 229 --
.../3a2cb9666b458ecc4f2fa2c2fec9d575.php | 292 ++
.../4354f4286f5df87d0ec1b7f2a28b22ae.php | 198 --
.../455ff850486ccce453ce0236dc39aa1c.php | 65 -
.../4d849bad84da6cde90ae52b9d9f50dec.php | 286 --
.../54c3d5356cdbbbf74cb08435146375fb.php | 7 +
.../56fb2027097802fe9887c535d9dde9ce.php | 101 -
.../5f17ddd0ec9f99758a0ca6c6c13e21d7.php | 23 -
.../61c62dff15b13791a69c395cb00e09c8.php | 59 -
.../66ae2094a35369fe66cfe9d08e5483c4.php | 70 -
.../67a7f07200c3d8fa00ba4fe72a50cf46.php | 52 -
.../690e9b8d1239f81f482e37c384703b0e.php | 8 +-
.../6e51499aeff83c919e16b854057abefc.php | 342 --
.../6e571b420efa227e90ca35c72263dced.php | 67 -
...723528cd4a5a6edc2403dddc15fad8ce.blade.php | 6 -
.../77a9bf0e867fdca3a11ef51783d0e448.php | 12 -
.../793878bac7f49084851c6a750de7b680.php | 206 --
.../80c9a0a6308b17fbb7bf93fb62efe7a3.php | 18 -
.../81d5610fd0a2b1fb1ea0942d4e877062.php | 378 ---
.../8225b4ab5e177c6ce756bf6bd43eb60c.php | 45 -
.../8848a11e123e6274892c44c05c02e2c0.php | 21 -
.../89e20d28937b735b6c73bd70fec38023.php | 265 --
.../8dd2c79bd081de46821e5a4c16e0218a.php | 282 ++
.../8e965d04afbd3d125b04967406aafa03.php | 189 --
.../8f77655fced827f2335dc0fd5b0b86c6.php | 112 -
.../90551f17a50a15ab24b4377ee8ae47dd.php | 292 --
.../92893849a26fcfa0273e3d6dabd17540.php | 96 -
.../963fa7931519a2bda4d512a9065cf86a.php | 21 -
.../97867fde05c61ffbb4be32bd2ec46ec7.php | 127 -
.../9d691895ebd68604830197fe0ba20c4e.php | 227 --
.../9ef0dfd29e0ee94f00e7cbd0892f433c.php | 75 -
.../9f8ad04ac0e5cad2ba5cbdf9e6b839ac.php | 325 --
.../a01f2f0ad64ffb4bec6c224e0a32b065.php | 29 -
.../adc4c4a369b2bee1705d8da3a6247c45.php | 808 +++++
.../af830d64c98ea537dd47cb4334f3a451.php | 517 ---
.../b050c707ba664a0ff93eb239317b5280.php | 53 -
.../b235d3c77d869dcdade57f7a1b61c8ff.php | 212 --
.../b534ed8dcc766a521ddb9b5ab34526ff.php | 74 -
.../be6715616843b225cf6deff982e77b14.php | 396 ---
.../bfd832b53fad5948a8706f00a290c0cf.php | 217 --
.../c3da01bbeb1428090c4fa29e17c4a415.php | 92 -
.../c6d1a975364ea77cf193b26f4d0c05e1.php | 215 --
.../c6faad983759e39bbadd89a10c0f74b3.php | 380 ---
.../cb60a36db4e92d8fcf5107fb500e9e22.php | 225 --
.../cdba3960ec17faacee7b079add6c1ae2.php | 49 -
.../d136669968d8cce7e458e5d7777f6a32.php | 49 -
.../d399d1abe65e3f2cc73d217c76f9e0d5.php | 88 +-
...e54a5d3be34ee3bfef9f87d7de2dda8f.blade.php | 6 -
.../e5d7be41700811dd965c7910cdd63b16.php | 128 -
.../e5d92f0df5c965b06cb33f9117a8c00d.php | 8 -
.../e8622c5fb0c67bd1ec098292efc31e4f.php | 53 -
.../e8d91e93ead2004545f050787ca085e3.php | 77 -
.../ea5a1ff31204d266f5d19cf6324c898a.php | 435 ---
.../ec6b175cafc2ad7bc060e67f10781d51.php | 66 -
.../f08ad9fca67479dc124a5f64a7514f97.php | 108 -
...f173681a20263f194334b1a3014b6285.blade.php | 6 -
.../f51a8a3b702dbf521511d5f222940525.php | 47 -
...f7c29b22c1a51c7cd7168f60bd430f61.blade.php | 16 -
.../f909bcbbb630bac1bb471924797df459.php | 80 -
.../f98c182f4ecf0c1b66c11b701478d8d6.php | 187 --
123 files changed, 6959 insertions(+), 12669 deletions(-)
delete mode 100644 .env.example
create mode 100644 app/Helpers/Logger.php
create mode 100644 app/Http/Controllers/AccountController.php
create mode 100644 app/Http/Controllers/Auth/GoogleAuthController.php
create mode 100644 app/Http/Controllers/CustomOrderController.php
create mode 100644 app/Http/Middleware/VerifyCsrfToken.php
create mode 100644 app/Models/AppSetting.php
create mode 100644 app/Models/CustomOrder.php
create mode 100644 app/Models/CustomOrderFile.php
create mode 100644 app/Models/CustomOrderProof.php
create mode 100644 app/Models/CustomOrderSpecification.php
create mode 100644 check_products.php
create mode 100644 database/migrations/2025_12_09_add_google_id_to_users_table.php
create mode 100644 database/migrations/2025_12_09_create_app_settings_table.php
create mode 100644 database/migrations/2025_12_09_create_custom_orders_tables.php
create mode 100644 resources/views/account/order-detail.blade.php
create mode 100644 resources/views/account/orders.blade.php
create mode 100644 resources/views/account/pending-payments.blade.php
create mode 100644 resources/views/account/profile.blade.php
create mode 100644 resources/views/auth/login.blade.php
create mode 100644 resources/views/custom-orders/create.blade.php
create mode 100644 resources/views/custom-orders/deposit-success.blade.php
create mode 100644 resources/views/custom-orders/index.blade.php
create mode 100644 resources/views/custom-orders/show.blade.php
create mode 100644 routes/api.php
delete mode 100644 storage/framework/views/07f69d5795cff36023392bba5118d65e.php
delete mode 100644 storage/framework/views/0aa47c2ab87a57533b80c2bb4b3930a5.php
delete mode 100644 storage/framework/views/0b43769f58139770b64ab9dccb89db6a.blade.php
delete mode 100644 storage/framework/views/0bcfbbb024ca890265d0c94b4bc8e9c5.php
delete mode 100644 storage/framework/views/0bd5f576a924b89ab17a30cf16e6ad08.php
delete mode 100644 storage/framework/views/0ced4ab8b623c6535cabe6077207c3f3.php
delete mode 100644 storage/framework/views/0d11b7694f7a419aa9ed2bbbdf2dda56.php
create mode 100644 storage/framework/views/0ff4c44d6c7a7dc85eddb6c22b81e0f3.php
delete mode 100644 storage/framework/views/1110161c070d609557c8a6c1fcc48147.php
delete mode 100644 storage/framework/views/1130d2b8cd83a5966be7850e2d899795.php
delete mode 100644 storage/framework/views/12dd7925def29d9b0f42cd5bfa646f44.php
delete mode 100644 storage/framework/views/1575aae6437543bfaf50d3515c944142.php
delete mode 100644 storage/framework/views/188f70ecf2f26b3a12d26b9291ea91c9.php
delete mode 100644 storage/framework/views/19b3c4acfafb733d6a4d95652d5529f8.php
delete mode 100644 storage/framework/views/1c1a588d1c9b277d3ae21decb63dcf81.php
delete mode 100644 storage/framework/views/27dcc0c718a54e1b25f82047ae88c072.php
delete mode 100644 storage/framework/views/2b58ef18ac3a69be239b865277695457.php
delete mode 100644 storage/framework/views/2b5f4cc9a13273a6143a686c2fa1d3b4.php
delete mode 100644 storage/framework/views/2b91b9a791ff7f292edb8c55adaa6117.php
delete mode 100644 storage/framework/views/2cbdabaff7adb77281bce3493d2e0c33.php
delete mode 100644 storage/framework/views/2d870470bd6fffdcf1b9facb07d1049b.php
delete mode 100644 storage/framework/views/317ab1fc8ab0d9c5e22a5c4737c540b9.php
create mode 100644 storage/framework/views/34ae340ff479643953f86c68f04ac61d.php
delete mode 100644 storage/framework/views/35148eb10cca4a42fac641d4131e91d7.php
create mode 100644 storage/framework/views/3763665363475be06cdc81b77877ae07.php
delete mode 100644 storage/framework/views/3764fdc9fc3bd11621707db2096f5ed3.php
delete mode 100644 storage/framework/views/39345582fc2db52dbc7f0f200cead333.php
create mode 100644 storage/framework/views/3a2cb9666b458ecc4f2fa2c2fec9d575.php
delete mode 100644 storage/framework/views/4354f4286f5df87d0ec1b7f2a28b22ae.php
delete mode 100644 storage/framework/views/455ff850486ccce453ce0236dc39aa1c.php
delete mode 100644 storage/framework/views/4d849bad84da6cde90ae52b9d9f50dec.php
create mode 100644 storage/framework/views/54c3d5356cdbbbf74cb08435146375fb.php
delete mode 100644 storage/framework/views/56fb2027097802fe9887c535d9dde9ce.php
delete mode 100644 storage/framework/views/5f17ddd0ec9f99758a0ca6c6c13e21d7.php
delete mode 100644 storage/framework/views/61c62dff15b13791a69c395cb00e09c8.php
delete mode 100644 storage/framework/views/66ae2094a35369fe66cfe9d08e5483c4.php
delete mode 100644 storage/framework/views/67a7f07200c3d8fa00ba4fe72a50cf46.php
delete mode 100644 storage/framework/views/6e51499aeff83c919e16b854057abefc.php
delete mode 100644 storage/framework/views/6e571b420efa227e90ca35c72263dced.php
delete mode 100644 storage/framework/views/723528cd4a5a6edc2403dddc15fad8ce.blade.php
delete mode 100644 storage/framework/views/77a9bf0e867fdca3a11ef51783d0e448.php
delete mode 100644 storage/framework/views/793878bac7f49084851c6a750de7b680.php
delete mode 100644 storage/framework/views/80c9a0a6308b17fbb7bf93fb62efe7a3.php
delete mode 100644 storage/framework/views/81d5610fd0a2b1fb1ea0942d4e877062.php
delete mode 100644 storage/framework/views/8225b4ab5e177c6ce756bf6bd43eb60c.php
delete mode 100644 storage/framework/views/8848a11e123e6274892c44c05c02e2c0.php
delete mode 100644 storage/framework/views/89e20d28937b735b6c73bd70fec38023.php
create mode 100644 storage/framework/views/8dd2c79bd081de46821e5a4c16e0218a.php
delete mode 100644 storage/framework/views/8e965d04afbd3d125b04967406aafa03.php
delete mode 100644 storage/framework/views/8f77655fced827f2335dc0fd5b0b86c6.php
delete mode 100644 storage/framework/views/90551f17a50a15ab24b4377ee8ae47dd.php
delete mode 100644 storage/framework/views/92893849a26fcfa0273e3d6dabd17540.php
delete mode 100644 storage/framework/views/963fa7931519a2bda4d512a9065cf86a.php
delete mode 100644 storage/framework/views/97867fde05c61ffbb4be32bd2ec46ec7.php
delete mode 100644 storage/framework/views/9d691895ebd68604830197fe0ba20c4e.php
delete mode 100644 storage/framework/views/9ef0dfd29e0ee94f00e7cbd0892f433c.php
delete mode 100644 storage/framework/views/9f8ad04ac0e5cad2ba5cbdf9e6b839ac.php
delete mode 100644 storage/framework/views/a01f2f0ad64ffb4bec6c224e0a32b065.php
create mode 100644 storage/framework/views/adc4c4a369b2bee1705d8da3a6247c45.php
delete mode 100644 storage/framework/views/af830d64c98ea537dd47cb4334f3a451.php
delete mode 100644 storage/framework/views/b050c707ba664a0ff93eb239317b5280.php
delete mode 100644 storage/framework/views/b235d3c77d869dcdade57f7a1b61c8ff.php
delete mode 100644 storage/framework/views/b534ed8dcc766a521ddb9b5ab34526ff.php
delete mode 100644 storage/framework/views/be6715616843b225cf6deff982e77b14.php
delete mode 100644 storage/framework/views/bfd832b53fad5948a8706f00a290c0cf.php
delete mode 100644 storage/framework/views/c3da01bbeb1428090c4fa29e17c4a415.php
delete mode 100644 storage/framework/views/c6d1a975364ea77cf193b26f4d0c05e1.php
delete mode 100644 storage/framework/views/c6faad983759e39bbadd89a10c0f74b3.php
delete mode 100644 storage/framework/views/cb60a36db4e92d8fcf5107fb500e9e22.php
delete mode 100644 storage/framework/views/cdba3960ec17faacee7b079add6c1ae2.php
delete mode 100644 storage/framework/views/d136669968d8cce7e458e5d7777f6a32.php
delete mode 100644 storage/framework/views/e54a5d3be34ee3bfef9f87d7de2dda8f.blade.php
delete mode 100644 storage/framework/views/e5d7be41700811dd965c7910cdd63b16.php
delete mode 100644 storage/framework/views/e5d92f0df5c965b06cb33f9117a8c00d.php
delete mode 100644 storage/framework/views/e8622c5fb0c67bd1ec098292efc31e4f.php
delete mode 100644 storage/framework/views/e8d91e93ead2004545f050787ca085e3.php
delete mode 100644 storage/framework/views/ea5a1ff31204d266f5d19cf6324c898a.php
delete mode 100644 storage/framework/views/ec6b175cafc2ad7bc060e67f10781d51.php
delete mode 100644 storage/framework/views/f08ad9fca67479dc124a5f64a7514f97.php
delete mode 100644 storage/framework/views/f173681a20263f194334b1a3014b6285.blade.php
delete mode 100644 storage/framework/views/f51a8a3b702dbf521511d5f222940525.php
delete mode 100644 storage/framework/views/f7c29b22c1a51c7cd7168f60bd430f61.blade.php
delete mode 100644 storage/framework/views/f909bcbbb630bac1bb471924797df459.php
delete mode 100644 storage/framework/views/f98c182f4ecf0c1b66c11b701478d8d6.php
diff --git a/.env.example b/.env.example
deleted file mode 100644
index c0660ea..0000000
--- a/.env.example
+++ /dev/null
@@ -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}"
diff --git a/app/Helpers/Logger.php b/app/Helpers/Logger.php
new file mode 100644
index 0000000..41ab215
--- /dev/null
+++ b/app/Helpers/Logger.php
@@ -0,0 +1,50 @@
+ 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,
+ ]);
+ }
+
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Auth/GoogleAuthController.php b/app/Http/Controllers/Auth/GoogleAuthController.php
new file mode 100644
index 0000000..e04a079
--- /dev/null
+++ b/app/Http/Controllers/Auth/GoogleAuthController.php
@@ -0,0 +1,74 @@
+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('/');
+ }
+}
diff --git a/app/Http/Controllers/CustomOrderController.php b/app/Http/Controllers/CustomOrderController.php
new file mode 100644
index 0000000..3c01ef8
--- /dev/null
+++ b/app/Http/Controllers/CustomOrderController.php
@@ -0,0 +1,316 @@
+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;
+ }
+}
diff --git a/app/Http/Controllers/OrderController.php b/app/Http/Controllers/OrderController.php
index 0242f99..2f8cd66 100644
--- a/app/Http/Controllers/OrderController.php
+++ b/app/Http/Controllers/OrderController.php
@@ -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;
-
- 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();
- }
- }
- }
+ $webhookId = $_SERVER['HTTP_WEBHOOK_ID'] ?? null;
+ $webhookTimestamp = $_SERVER['HTTP_WEBHOOK_TIMESTAMP'] ?? null;
+ $webhookSignatureHeader = $_SERVER['HTTP_WEBHOOK_SIGNATURE'] ?? null;
+
+ // 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']);
}
}
diff --git a/app/Http/Middleware/VerifyCsrfToken.php b/app/Http/Middleware/VerifyCsrfToken.php
new file mode 100644
index 0000000..eb8a84e
--- /dev/null
+++ b/app/Http/Middleware/VerifyCsrfToken.php
@@ -0,0 +1,17 @@
+
+ */
+ protected $except = [
+ 'api/webhook',
+ ];
+}
diff --git a/app/Models/AppSetting.php b/app/Models/AppSetting.php
new file mode 100644
index 0000000..693b3c7
--- /dev/null
+++ b/app/Models/AppSetting.php
@@ -0,0 +1,40 @@
+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]
+ );
+ }
+}
diff --git a/app/Models/CustomOrder.php b/app/Models/CustomOrder.php
new file mode 100644
index 0000000..c70372c
--- /dev/null
+++ b/app/Models/CustomOrder.php
@@ -0,0 +1,100 @@
+ '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';
+ }
+}
diff --git a/app/Models/CustomOrderFile.php b/app/Models/CustomOrderFile.php
new file mode 100644
index 0000000..048f023
--- /dev/null
+++ b/app/Models/CustomOrderFile.php
@@ -0,0 +1,35 @@
+belongsTo(CustomOrder::class);
+ }
+
+ /**
+ * Get the user who uploaded this file
+ */
+ public function uploadedByUser(): BelongsTo
+ {
+ return $this->belongsTo(User::class, 'uploaded_by');
+ }
+}
diff --git a/app/Models/CustomOrderProof.php b/app/Models/CustomOrderProof.php
new file mode 100644
index 0000000..ef3fbbe
--- /dev/null
+++ b/app/Models/CustomOrderProof.php
@@ -0,0 +1,44 @@
+ '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');
+ }
+}
diff --git a/app/Models/CustomOrderSpecification.php b/app/Models/CustomOrderSpecification.php
new file mode 100644
index 0000000..dd49f0b
--- /dev/null
+++ b/app/Models/CustomOrderSpecification.php
@@ -0,0 +1,42 @@
+ '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);
+ }
+}
diff --git a/app/Models/Order.php b/app/Models/Order.php
index 5575137..bf82e09 100644
--- a/app/Models/Order.php
+++ b/app/Models/Order.php
@@ -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()
diff --git a/app/Models/User.php b/app/Models/User.php
index eacc991..37beb0d 100644
--- a/app/Models/User.php
+++ b/app/Models/User.php
@@ -22,6 +22,8 @@ class User extends Authenticatable
'email',
'password',
'is_admin',
+ 'google_id',
+ 'email_verified_at',
];
/**
diff --git a/bootstrap/app.php b/bootstrap/app.php
index 6f869d9..771b8de 100644
--- a/bootstrap/app.php
+++ b/bootstrap/app.php
@@ -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',
)
diff --git a/check_products.php b/check_products.php
new file mode 100644
index 0000000..848e1fc
--- /dev/null
+++ b/check_products.php
@@ -0,0 +1,12 @@
+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";
+ }
+}
diff --git a/composer.json b/composer.json
index ea4bcc2..110ad2d 100644
--- a/composer.json
+++ b/composer.json
@@ -26,7 +26,10 @@
"App\\": "app/",
"Database\\Factories\\": "database/factories/",
"Database\\Seeders\\": "database/seeders/"
- }
+ },
+ "files": [
+ "app/Helpers/Logger.php"
+ ]
},
"autoload-dev": {
"psr-4": {
diff --git a/config/services.php b/config/services.php
index f4c2b8c..5686590 100644
--- a/config/services.php
+++ b/config/services.php
@@ -1,5 +1,16 @@
[
'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'),
],
];
diff --git a/database/migrations/2025_12_09_add_google_id_to_users_table.php b/database/migrations/2025_12_09_add_google_id_to_users_table.php
new file mode 100644
index 0000000..fb80f4b
--- /dev/null
+++ b/database/migrations/2025_12_09_add_google_id_to_users_table.php
@@ -0,0 +1,28 @@
+string('google_id')->nullable()->unique()->after('id');
+ });
+ }
+
+ /**
+ * Reverse the migrations.
+ */
+ public function down(): void
+ {
+ Schema::table('users', function (Blueprint $table) {
+ $table->dropColumn('google_id');
+ });
+ }
+};
diff --git a/database/migrations/2025_12_09_create_app_settings_table.php b/database/migrations/2025_12_09_create_app_settings_table.php
new file mode 100644
index 0000000..3c02111
--- /dev/null
+++ b/database/migrations/2025_12_09_create_app_settings_table.php
@@ -0,0 +1,31 @@
+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');
+ }
+};
diff --git a/database/migrations/2025_12_09_create_custom_orders_tables.php b/database/migrations/2025_12_09_create_custom_orders_tables.php
new file mode 100644
index 0000000..04cdd92
--- /dev/null
+++ b/database/migrations/2025_12_09_create_custom_orders_tables.php
@@ -0,0 +1,93 @@
+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');
+ }
+};
diff --git a/public/css/styles.css b/public/css/styles.css
index ebcc6f7..4b20791 100644
--- a/public/css/styles.css
+++ b/public/css/styles.css
@@ -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;
+}
+
diff --git a/public/js/script.js b/public/js/script.js
index 5066798..38c7085 100644
--- a/public/js/script.js
+++ b/public/js/script.js
@@ -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);
});
});
diff --git a/resources/views/account/order-detail.blade.php b/resources/views/account/order-detail.blade.php
new file mode 100644
index 0000000..e3d7fe3
--- /dev/null
+++ b/resources/views/account/order-detail.blade.php
@@ -0,0 +1,420 @@
+@extends('layouts.app')
+
+@section('title', 'Order #' . $order->order_number . ' - Order Details')
+
+@section('styles')
+
+@endsection
+
+@section('content')
+
diff --git a/routes/api.php b/routes/api.php
new file mode 100644
index 0000000..ca95825
--- /dev/null
+++ b/routes/api.php
@@ -0,0 +1,7 @@
+name('yoco-webhook');
diff --git a/routes/web.php b/routes/web.php
index 4defbe7..f3b3005 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -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');
+});
+
diff --git a/storage/framework/views/07f69d5795cff36023392bba5118d65e.php b/storage/framework/views/07f69d5795cff36023392bba5118d65e.php
deleted file mode 100644
index f4c009b..0000000
--- a/storage/framework/views/07f69d5795cff36023392bba5118d65e.php
+++ /dev/null
@@ -1,91 +0,0 @@
-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']);
-?>
-
-
-
- $fieldWrapperView] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('dynamic-component'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\DynamicComponent::ignoredParameterNames()); ?>
-
-withAttributes(['field' => $field,'inline-label-vertical-alignment' => \Filament\Support\Enums\VerticalAlignment::Center]); ?>
-
- slot('labelPrefix', null, []); ?>
-
-
- 'filament::components.toggle','data' => ['attributes' => \Filament\Support\prepare_inherited_attributes($attributes)]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::toggle'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\prepare_inherited_attributes($attributes))]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- endSlot(); ?>
-
-
-
- 'filament::components.toggle','data' => ['attributes' => \Filament\Support\prepare_inherited_attributes($attributes)]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::toggle'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\prepare_inherited_attributes($attributes))]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/0aa47c2ab87a57533b80c2bb4b3930a5.php b/storage/framework/views/0aa47c2ab87a57533b80c2bb4b3930a5.php
deleted file mode 100644
index 18ca8d1..0000000
--- a/storage/framework/views/0aa47c2ab87a57533b80c2bb4b3930a5.php
+++ /dev/null
@@ -1,74 +0,0 @@
-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";
-?>
-
-
-
- '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() : [])); ?>
-withName('filament::modal'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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)')]); ?>
- $action])); ?>
-
-
- getModalContent()); ?>
-
-
- $action])); ?>
-
-
- mountedActionHasSchema(mountedAction: $action)): ?>
- $action])); ?>
-
-
- getMountedActionSchema(mountedAction: $action)); ?>
-
-
- $action])); ?>
-
-
-
- $action])); ?>
-
-
- getModalContentFooter()); ?>
-
-
- $action])); ?>
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/0b43769f58139770b64ab9dccb89db6a.blade.php b/storage/framework/views/0b43769f58139770b64ab9dccb89db6a.blade.php
deleted file mode 100644
index 0f29d46..0000000
--- a/storage/framework/views/0b43769f58139770b64ab9dccb89db6a.blade.php
+++ /dev/null
@@ -1,6 +0,0 @@
-getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
-@props(['field','inlineLabelVerticalAlignment'])
-
-{{ $labelPrefix }}
-{{ $slot ?? "" }}
-
\ No newline at end of file
diff --git a/storage/framework/views/0bcfbbb024ca890265d0c94b4bc8e9c5.php b/storage/framework/views/0bcfbbb024ca890265d0c94b4bc8e9c5.php
deleted file mode 100644
index 4594361..0000000
--- a/storage/framework/views/0bcfbbb024ca890265d0c94b4bc8e9c5.php
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
\ No newline at end of file
diff --git a/storage/framework/views/0bd5f576a924b89ab17a30cf16e6ad08.php b/storage/framework/views/0bd5f576a924b89ab17a30cf16e6ad08.php
deleted file mode 100644
index 8806f75..0000000
--- a/storage/framework/views/0bd5f576a924b89ab17a30cf16e6ad08.php
+++ /dev/null
@@ -1,79 +0,0 @@
-getComponents();
- $alignment = $getAlignment();
- $isFullWidth = $isFullWidth();
- $isSticky = $isSticky();
- $verticalAlignment = $getVerticalAlignment();
-
- if (! $verticalAlignment instanceof VerticalAlignment) {
- $verticalAlignment = filled($verticalAlignment) ? (VerticalAlignment::tryFrom($verticalAlignment) ?? $verticalAlignment) : null;
- }
-?>
-
-
- x-data="filamentActionsSchemaComponent()"
- x-intersect:enter.half="disableSticky"
- x-intersect:leave="enableSticky"
- x-bind:class="{ 'fi-sticky': isSticky }"
-
- merge([
- 'id' => $getId(),
- ], escape: false)
- ->merge($getExtraAttributes(), escape: false)
- ->class([
- 'fi-sc-actions',
- ($verticalAlignment instanceof VerticalAlignment) ? "fi-vertical-align-{$verticalAlignment->value}" : $verticalAlignment,
- ])); ?>
-
->
-
-
-
-
- toHtmlString()): ?>
-
-
-
-
-
-
- '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() : [])); ?>
-withName('filament::actions'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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)]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
- toHtmlString()): ?>
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/0ced4ab8b623c6535cabe6077207c3f3.php b/storage/framework/views/0ced4ab8b623c6535cabe6077207c3f3.php
deleted file mode 100644
index dfad156..0000000
--- a/storage/framework/views/0ced4ab8b623c6535cabe6077207c3f3.php
+++ /dev/null
@@ -1,49 +0,0 @@
- 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); ?>
-
-
class([
- 'fi-avatar',
- 'fi-circular' => $circular,
- match ($size) {
- 'sm', 'md', 'lg' => "fi-size-{$size}",
- default => $size,
- },
- ])); ?>
-
-/>
-
\ No newline at end of file
diff --git a/storage/framework/views/0d11b7694f7a419aa9ed2bbbdf2dda56.php b/storage/framework/views/0d11b7694f7a419aa9ed2bbbdf2dda56.php
deleted file mode 100644
index f10bc9a..0000000
--- a/storage/framework/views/0d11b7694f7a419aa9ed2bbbdf2dda56.php
+++ /dev/null
@@ -1,354 +0,0 @@
-
-
- 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); ?>
-
-get('wire:submit.prevent');
- $attributes = $attributes->except(['wire:submit.prevent']);
-?>
-
-
- '; ?>
-
-
-
-
attributes->get('disabled')): ?>
-
- x-on:click="$dispatch(toHtml() ?>, { id: toHtml() ?> })"
-
- x-on:click="$el.nextElementSibling.dispatchEvent(new CustomEvent(toHtml() ?>))"
-
-
- attributes->except(['disabled'])->class(['fi-modal-trigger'])); ?>
-
- >
-
-
-
-
-
-
- "; ?>
-
-
-
-
-
- aria-labelledby=""
-
- aria-labelledby=""
-
- aria-modal="true"
- id=""
- role="dialog"
- x-data="filamentModal({
- id: toHtml() ?>,
- })"
-
- data-fi-modal-id=""
- x-on:.window="if (($event.detail.id === toHtml() ?>) && isOpen) close()"
- x-on:.window="if (($event.detail.id === toHtml() ?>) && isOpen) closeQuietly()"
- x-on:.window="if (($event.detail.id === toHtml() ?>) && (! isOpen)) open()"
-
- x-on:.stop="if (isOpen) close()"
- x-on:.stop="if (isOpen) closeQuietly()"
- x-on:.stop="if (! isOpen) open()"
-
- x-bind:class="{
- 'fi-modal-open': isOpen,
- }"
- x-cloak
- x-show="isOpen"
- x-trap.noscroll="isOpen"
- class([
- 'fi-modal',
- 'fi-absolute-positioning-context',
- 'fi-modal-slide-over' => $slideOver,
- 'fi-width-screen' => $width === Width::Screen,
- ])); ?>
-
->
-
-
-
- x-on:click.self=""
-
- class=" $closeByClickingAway,
- ]); ?>"
- >
- <
-
-
- x-on:keydown.window.escape=""
-
- x-show="isWindowVisible"
- x-transition:enter="fi-transition-enter"
- x-transition:leave="fi-transition-leave"
-
- 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"
-
-
- wire:submit.prevent=""
-
-
- wire:key="getId()}." : ''); ?>modal..window"
-
- 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),
- ])); ?>
-
- >
-
-
- wire:key="getId()}." : ''); ?>modal..header"
-
- class=" $stickyHeader,
- 'fi-vertical-align-center' => $hasIcon && $hasHeading && (! $hasDescription) && in_array($alignment, [Alignment::Start, Alignment::Left]),
- ]); ?>"
- >
-
-
-
- '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() : [])); ?>
-withName('filament::icon-button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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']); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
color(IconComponent::class, $iconColor)->class(['fi-modal-icon-bg'])); ?>
-
- >
-
-
-
-
-
-
-
-
-
-
-
-
-
- wire:key="getId()}." : ''); ?>modal..content"
-
- class="fi-modal-content"
- >
-
-
-
-
-
-
-
- wire:key="getId()}." : ''); ?>modal..footer"
-
- class=" $stickyFooter,
- ($footerActionsAlignment instanceof Alignment) ? "fi-align-{$footerActionsAlignment->value}" : null,
- ]); ?>"
- >
-
-
-
-
-
-
-
-
- >
-
-
-
-
- '; ?>
-
-
-
-
-
- '; ?>
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/0ff4c44d6c7a7dc85eddb6c22b81e0f3.php b/storage/framework/views/0ff4c44d6c7a7dc85eddb6c22b81e0f3.php
new file mode 100644
index 0000000..7882680
--- /dev/null
+++ b/storage/framework/views/0ff4c44d6c7a7dc85eddb6c22b81e0f3.php
@@ -0,0 +1,424 @@
+
+
+startSection('title', 'Order #' . $order->order_number . ' - Order Details'); ?>
+
+startSection('styles'); ?>
+
+stopSection(); ?>
+
+startSection('content'); ?>
+
+
+
Order Details
+
Order #order_number); ?>
+
+
+
+
+
+
+
+
Order Status
+
+
+ status))); ?>
+
+
+
+ Ordered on created_at->format('d M Y \a\t H:i')); ?>
+
+
+
+
+
+
+
+
Order Items
+ items; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
+
+
+
+ popLoop(); $loop = $__env->getLastLoop(); ?>
+
+
+
+
+
Delivery Details
+
+
+
Customer Information
+
+
+
Name:
+ customer_name); ?>
+
+
+
Email:
+ customer_email); ?>
+
+
+
Phone:
+ customer_phone); ?>
+
+
+
+
+
+
Shipping Address
+
shipping_address); ?>
+
+
+ notes): ?>
+
+
Order Notes
+
notes); ?>
+
+
+
+
+
+
+
+
+
+
Order Summary
+
+
+
+ Subtotal:
+ R total, 2)); ?>
+
+
+ Total:
+ R total, 2)); ?>
+
+
+
+
Payment Status
+
+
+
+ Payment
+ payment_status)); ?>
+
+
+
+
+ payment_status === 'pending' && $order->yoco_redirect_url): ?>
+
+
+
Payment Required
+
Click below to complete your payment.
+
+ Pay Now
+
+
+
+
Amount Due
+
R total, 2)); ?>
+
+
+ payment_status === 'failed' && $order->yoco_redirect_url): ?>
+
+
+
+
Amount Due
+
R total, 2)); ?>
+
+
+ payment_status === 'paid'): ?>
+
+
+
✓
+
+
Payment Received
+
Thank you! Your order is being processed.
+
+
+
+
+
+
+
+
+
+
+
+stopSection(); ?>
+
+make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?>
\ No newline at end of file
diff --git a/storage/framework/views/1110161c070d609557c8a6c1fcc48147.php b/storage/framework/views/1110161c070d609557c8a6c1fcc48147.php
deleted file mode 100644
index d1f3f43..0000000
--- a/storage/framework/views/1110161c070d609557c8a6c1fcc48147.php
+++ /dev/null
@@ -1,46 +0,0 @@
- [],
- '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); ?>
-
-
gridColumn($columnSpan, $columnStart)
- ->class(['fi-section fi-loading-section'])
- ->style(['height: ' . ($height ?? '8rem')])); ?>
-
->
-
\ No newline at end of file
diff --git a/storage/framework/views/1130d2b8cd83a5966be7850e2d899795.php b/storage/framework/views/1130d2b8cd83a5966be7850e2d899795.php
deleted file mode 100644
index efb409a..0000000
--- a/storage/framework/views/1130d2b8cd83a5966be7850e2d899795.php
+++ /dev/null
@@ -1,147 +0,0 @@
-getRenderHookScopes();
- $maxContentWidth ??= (filament()->getSimplePageMaxContentWidth() ?? Width::Large);
-
- if (is_string($maxContentWidth)) {
- $maxContentWidth = Width::tryFrom($maxContentWidth) ?? $maxContentWidth;
- }
-?>
-
-
-
- 'filament-panels::components.layout.base','data' => ['livewire' => $livewire]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::layout.base'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['livewire' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($livewire)]); ?>
- 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); ?>
-
-
-
-
-
- auth()->check()): ?>
-
-
-
-
- value}" : $maxContentWidth,
- ]); ?>"
- >
-
-
-
-
-
-
-
-
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/12dd7925def29d9b0f42cd5bfa646f44.php b/storage/framework/views/12dd7925def29d9b0f42cd5bfa646f44.php
deleted file mode 100644
index 2216392..0000000
--- a/storage/framework/views/12dd7925def29d9b0f42cd5bfa646f44.php
+++ /dev/null
@@ -1,53 +0,0 @@
-getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
-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); ?>
-
-
- 'filament-forms::components.field-wrapper','data' => ['field' => $field,'labelTag' => $labelTag]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-forms::field-wrapper'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['field' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($field),'label-tag' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($labelTag)]); ?>
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/1575aae6437543bfaf50d3515c944142.php b/storage/framework/views/1575aae6437543bfaf50d3515c944142.php
deleted file mode 100644
index c51e9e7..0000000
--- a/storage/framework/views/1575aae6437543bfaf50d3515c944142.php
+++ /dev/null
@@ -1,5 +0,0 @@
-
class(['fi-dropdown-list'])); ?>>
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/188f70ecf2f26b3a12d26b9291ea91c9.php b/storage/framework/views/188f70ecf2f26b3a12d26b9291ea91c9.php
deleted file mode 100644
index eefa3fb..0000000
--- a/storage/framework/views/188f70ecf2f26b3a12d26b9291ea91c9.php
+++ /dev/null
@@ -1,17 +0,0 @@
- viewContext->mergeIntoNewEnvironment($__env); ?>
-
- startComponent($layout->view, $layout->params); ?>
- slot($layout->slotOrSection); ?>
-
-
- endSlot(); ?>
-
- viewContext->slots[-1] ?? [] as $name => $slot) {
- $__env->slot($name, attributes: $slot->attributes->getAttributes());
- echo $slot->toHtml();
- $__env->endSlot();
- }
- ?>
- renderComponent(); ?>
\ No newline at end of file
diff --git a/storage/framework/views/19b3c4acfafb733d6a4d95652d5529f8.php b/storage/framework/views/19b3c4acfafb733d6a4d95652d5529f8.php
deleted file mode 100644
index 6edcb3e..0000000
--- a/storage/framework/views/19b3c4acfafb733d6a4d95652d5529f8.php
+++ /dev/null
@@ -1,135 +0,0 @@
-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,
- ]);
-?>
-
-
-
- $fieldWrapperView] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('dynamic-component'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\DynamicComponent::ignoredParameterNames()); ?>
-
-withAttributes(['field' => $field,'inline-label-vertical-alignment' => \Filament\Support\Enums\VerticalAlignment::Center]); ?>
-
-
- '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() : [])); ?>
-withName('filament::input.wrapper'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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'])
- )]); ?>
-
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)),
- ])); ?>
-
- />
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $option): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/1c1a588d1c9b277d3ae21decb63dcf81.php b/storage/framework/views/1c1a588d1c9b277d3ae21decb63dcf81.php
deleted file mode 100644
index 14cf490..0000000
--- a/storage/framework/views/1c1a588d1c9b277d3ae21decb63dcf81.php
+++ /dev/null
@@ -1,124 +0,0 @@
-
-
- '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); ?>
-
-
-
-
class(['fi-ta-search-field'])); ?>
-
->
-
-
-
-
-
-
-
- '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() : [])); ?>
-withName('filament::input.wrapper'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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)]); ?>
-
-
- '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() : [])); ?>
-withName('filament::input'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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)
- )]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/27dcc0c718a54e1b25f82047ae88c072.php b/storage/framework/views/27dcc0c718a54e1b25f82047ae88c072.php
deleted file mode 100644
index b429d51..0000000
--- a/storage/framework/views/27dcc0c718a54e1b25f82047ae88c072.php
+++ /dev/null
@@ -1,76 +0,0 @@
-
-
- [],
-]));
-
-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); ?>
-
-
class(['fi-breadcrumbs'])); ?>>
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $url => $label): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
- first): ?>
- class([
- 'fi-breadcrumbs-item-separator fi-ltr',
- ]))); ?>
-
-
- class([
- 'fi-breadcrumbs-item-separator fi-rtl',
- ]))); ?>
-
-
-
-
-
-
-
-
-
-
-
- class="fi-breadcrumbs-item-label"
- >
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/2b58ef18ac3a69be239b865277695457.php b/storage/framework/views/2b58ef18ac3a69be239b865277695457.php
deleted file mode 100644
index f4eb09b..0000000
--- a/storage/framework/views/2b58ef18ac3a69be239b865277695457.php
+++ /dev/null
@@ -1,53 +0,0 @@
-getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
-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); ?>
-
-
- 'filament-forms::components.field-wrapper','data' => ['field' => $field,'inlineLabelVerticalAlignment' => $inlineLabelVerticalAlignment]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-forms::field-wrapper'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['field' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($field),'inline-label-vertical-alignment' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($inlineLabelVerticalAlignment)]); ?>
- slot('labelPrefix', null, []); ?> endSlot(); ?>
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/2b5f4cc9a13273a6143a686c2fa1d3b4.php b/storage/framework/views/2b5f4cc9a13273a6143a686c2fa1d3b4.php
deleted file mode 100644
index 608483f..0000000
--- a/storage/framework/views/2b5f4cc9a13273a6143a686c2fa1d3b4.php
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
- 'filament-panels::components.page.simple','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::page.simple'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
- content); ?>
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/2b91b9a791ff7f292edb8c55adaa6117.php b/storage/framework/views/2b91b9a791ff7f292edb8c55adaa6117.php
deleted file mode 100644
index e23cedf..0000000
--- a/storage/framework/views/2b91b9a791ff7f292edb8c55adaa6117.php
+++ /dev/null
@@ -1,2821 +0,0 @@
-getAllTableSummaryQuery());
- $header = $getHeader();
- $headerActions = array_filter(
- $getHeaderActions(),
- fn (\Filament\Actions\Action | \Filament\Actions\ActionGroup $action): bool => $action->isVisible(),
- );
- $headerActionsPosition = $getHeaderActionsPosition();
- $heading = $getHeading();
- $group = $getGrouping();
- $toolbarActions = array_filter(
- $getToolbarActions(),
- fn (\Filament\Actions\Action | \Filament\Actions\ActionGroup $action): bool => $action->isVisible(),
- );
-
- $hasNonBulkToolbarAction = false;
-
- foreach ($toolbarActions as $toolbarAction) {
- if ($toolbarAction instanceof \Filament\Actions\BulkActionGroup) {
- continue;
- }
-
- if ($toolbarAction instanceof \Filament\Actions\ActionGroup) {
- if ($toolbarAction->hasNonBulkAction()) {
- $hasNonBulkToolbarAction = true;
-
- break;
- }
-
- continue;
- }
-
- if (! $toolbarAction->isBulk()) {
- $hasNonBulkToolbarAction = true;
-
- break;
- }
- }
-
- $groups = $getGroups();
- $description = $getDescription();
- $isGroupsOnly = $isGroupsOnly() && $group;
- $isReorderable = $isReorderable();
- $isReordering = $isReordering();
- $areGroupingSettingsVisible = (! $isReordering) && count($groups) && (! $areGroupingSettingsHidden());
- $isGroupingDirectionSettingHidden = $isGroupingDirectionSettingHidden();
- $areGroupsCollapsedByDefault = $areGroupsCollapsedByDefault();
- $areGroupingSettingsInDropdownOnDesktop = $areGroupingSettingsInDropdownOnDesktop();
- $isColumnSearchVisible = $isSearchableByColumn();
- $isGlobalSearchVisible = $isSearchable();
- $isSearchOnBlur = $isSearchOnBlur();
- $isSelectionEnabled = $isSelectionEnabled() && (! $isGroupsOnly);
- $selectsCurrentPageOnly = $selectsCurrentPageOnly();
- $selectsGroupsOnly = $selectsGroupsOnly();
- $recordCheckboxPosition = $getRecordCheckboxPosition();
- $isStriped = $isStriped();
- $isLoaded = $isLoaded();
- $hasFilters = $isFilterable();
- $filtersLayout = $getFiltersLayout();
- $filtersTriggerAction = $getFiltersTriggerAction();
- $hasFiltersDialog = $hasFilters && in_array($filtersLayout, [FiltersLayout::Dropdown, FiltersLayout::Modal]);
- $hasFiltersAboveContent = $hasFilters && in_array($filtersLayout, [FiltersLayout::AboveContent, FiltersLayout::AboveContentCollapsible]);
- $hasFiltersBelowContent = $hasFilters && ($filtersLayout === FiltersLayout::BelowContent);
- $hasFiltersBeforeContent = $hasFilters && in_array($filtersLayout, [FiltersLayout::BeforeContent, FiltersLayout::BeforeContentCollapsible]);
- $hasFiltersAfterContent = $hasFilters && in_array($filtersLayout, [FiltersLayout::AfterContent, FiltersLayout::AfterContentCollapsible]);
- $hasCollapsibleFilters = $hasFilters && in_array($filtersLayout, [FiltersLayout::AboveContentCollapsible, FiltersLayout::BeforeContentCollapsible, FiltersLayout::AfterContentCollapsible]);
- $hasFiltersTrigger = $hasFilters && ($hasFiltersDialog || $hasFiltersBeforeContent || $hasFiltersAfterContent);
- $filtersFormMaxHeight = $getFiltersFormMaxHeight();
- $hasColumnManagerDropdown = $hasColumnManager();
- $hasReorderableColumns = $hasReorderableColumns();
- $hasToggleableColumns = $hasToggleableColumns();
- $columnManagerApplyAction = $getColumnManagerApplyAction();
- $columnManagerTriggerAction = $getColumnManagerTriggerAction();
- $hasHeader = $header || $heading || $description || ($headerActions && (! $isReordering)) || $isReorderable || $areGroupingSettingsVisible || $isGlobalSearchVisible || $hasFilters || count($filterIndicators) || $hasColumnManagerDropdown;
- $hasHeaderToolbar = $isReorderable || $areGroupingSettingsVisible || $isGlobalSearchVisible || $hasFiltersTrigger || $hasColumnManagerDropdown;
- $headingTag = $getHeadingTag();
- $secondLevelHeadingTag = $heading ? $getHeadingTag(1) : $headingTag;
- $pluralModelLabel = $getPluralModelLabel();
- $records = $isLoaded ? $getRecords() : null;
- $hasPagination = (($records instanceof \Illuminate\Contracts\Pagination\Paginator) || ($records instanceof \Illuminate\Contracts\Pagination\CursorPaginator)) && ((! ($records instanceof \Illuminate\Contracts\Pagination\LengthAwarePaginator)) || $records->total());
- $hasEmptyState = ($records !== null) && ! count($records);
- $hasContentLayout = $content || $hasColumnsLayout;
- $searchDebounce = $getSearchDebounce();
- $allSelectableRecordsCount = ($isSelectionEnabled && $isLoaded) ? $getAllSelectableRecordsCount() : null;
- $columnsCount = count($columns);
- $reorderRecordsTriggerAction = $getReorderRecordsTriggerAction($isReordering);
- $page = $this->getTablePage();
- $defaultSortOptionLabel = $getDefaultSortOptionLabel();
- $sortDirection = $getSortDirection();
-
- if (count($defaultRecordActions) && (! $isReordering)) {
- $columnsCount++;
- }
-
- if ($isSelectionEnabled || $isReordering) {
- $columnsCount++;
- }
-
- if ($group) {
- $groupedSummarySelectedState = $this->getTableSummarySelectedState($this->getAllTableSummaryQuery(), modifyQueryUsing: fn (\Illuminate\Database\Query\Builder $query) => $group->groupQuery($query, model: $getQuery()->getModel()));
- }
-
- if (is_string($filtersFormWidth)) {
- $filtersFormWidth = Width::tryFrom($filtersFormWidth) ?? $filtersFormWidth;
- }
-?>
-
-
- wire:init="loadTable"
-
- x-data="filamentTable({
- areGroupsCollapsedByDefault: toHtml() ?>,
- canTrackDeselectedRecords: toHtml() ?>,
- currentSelectionLivewireProperty: toHtml() ?>,
- maxSelectableRecords: toHtml() ?>,
- selectsCurrentPageOnly: toHtml() ?>,
- $wire,
- })"
- class([
- 'fi-ta',
- 'fi-loading' => $records === null,
- ])); ?>
-
->
-
-
-
-
-
-
- 'filament-actions::components.modals','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-actions::modals'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/2cbdabaff7adb77281bce3493d2e0c33.php b/storage/framework/views/2cbdabaff7adb77281bce3493d2e0c33.php
deleted file mode 100644
index d45a24e..0000000
--- a/storage/framework/views/2cbdabaff7adb77281bce3493d2e0c33.php
+++ /dev/null
@@ -1,137 +0,0 @@
-
-
- '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); ?>
-
-
class(['fi-ta-filters'])); ?>>
-
-
-
-
-
- isVisible() || $resetActionPosition === FiltersResetActionPosition::Footer): ?>
-
- isVisible()): ?>
-
-
-
-
-
-
-
- 'filament::components.button.index','data' => ['color' => 'danger','wire:click' => 'resetTableFiltersForm']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['color' => 'danger','wire:click' => 'resetTableFiltersForm']); ?>
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/2d870470bd6fffdcf1b9facb07d1049b.php b/storage/framework/views/2d870470bd6fffdcf1b9facb07d1049b.php
deleted file mode 100644
index 5e7919f..0000000
--- a/storage/framework/views/2d870470bd6fffdcf1b9facb07d1049b.php
+++ /dev/null
@@ -1,221 +0,0 @@
- 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); ?>
-
-getRenderHookScopes();
-?>
-
-
-
-
-
-
-
-
-
-
-
- getFavicon()): ?>
-
-
-
- getTitle() ?? ''));
- $brandName = trim(strip_tags(filament()->getBrandName()));
- ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
- getTheme()->getHtml()); ?>
-
- getFontHtml()); ?>
-
- getMonoFontHtml()); ?>
-
- getSerifFontHtml()); ?>
-
-
-
-
- yieldPushContent('styles'); ?>
-
-
-
-
- hasDarkMode()): ?>
-
- hasDarkModeForced()): ?>
-
-
-
-
-
-
-
-
-
- merge($livewire?->getExtraBodyAttributes() ?? [], escape: false)
- ->class([
- 'fi-body',
- 'fi-panel-' . filament()->getId(),
- ])); ?>
-
- >
-
-
-
-
-
-
- mount($__name, $__params, $key);
-
-echo $__html;
-
-unset($__html);
-unset($__name);
-unset($__params);
-unset($__split);
-if (isset($__slots)) unset($__slots);
-?>
-
-
-
-
-
-
- hasBroadcasting() && config('filament.broadcasting.echo')): ?>
-
-
-
- hasDarkMode() && (! filament()->hasDarkModeForced())): ?>
-
-
-
- yieldPushContent('scripts'); ?>
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/317ab1fc8ab0d9c5e22a5c4737c540b9.php b/storage/framework/views/317ab1fc8ab0d9c5e22a5c4737c540b9.php
deleted file mode 100644
index f0dde27..0000000
--- a/storage/framework/views/317ab1fc8ab0d9c5e22a5c4737c540b9.php
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
- '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); ?>
-
-
- x-cloak
-
- merge([
- 'role' => 'switch',
- 'type' => 'button',
- ], escape: false)
- ->class(['fi-toggle'])); ?>
-
->
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/34ae340ff479643953f86c68f04ac61d.php b/storage/framework/views/34ae340ff479643953f86c68f04ac61d.php
new file mode 100644
index 0000000..5790763
--- /dev/null
+++ b/storage/framework/views/34ae340ff479643953f86c68f04ac61d.php
@@ -0,0 +1,191 @@
+
+
+startSection('title', 'Sign In - Additional Design'); ?>
+
+startSection('styles'); ?>
+
+stopSection(); ?>
+
+startSection('content'); ?>
+
+stopSection(); ?>
+
+make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?>
\ No newline at end of file
diff --git a/storage/framework/views/35148eb10cca4a42fac641d4131e91d7.php b/storage/framework/views/35148eb10cca4a42fac641d4131e91d7.php
deleted file mode 100644
index d3d9f2b..0000000
--- a/storage/framework/views/35148eb10cca4a42fac641d4131e91d7.php
+++ /dev/null
@@ -1,96 +0,0 @@
-
-
-<
-
-
-
-
-
- class([
- 'fi-wi-stats-overview-stat',
- ])); ?>
-
->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
color(DescriptionComponent::class, $descriptionColor)->class(['fi-wi-stats-overview-stat-description'])); ?>
-
- >
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
color(StatsOverviewWidgetStatChartComponent::class, $chartColor)->class(['fi-wi-stats-overview-stat-chart'])); ?>
-
- >
-
-
-
-
-
-
-
-
->
-
\ No newline at end of file
diff --git a/storage/framework/views/3763665363475be06cdc81b77877ae07.php b/storage/framework/views/3763665363475be06cdc81b77877ae07.php
new file mode 100644
index 0000000..68d7da3
--- /dev/null
+++ b/storage/framework/views/3763665363475be06cdc81b77877ae07.php
@@ -0,0 +1,439 @@
+
+
+startSection('title', 'Order #' . $customOrder->order_number . ' - Custom Order Details'); ?>
+
+startSection('styles'); ?>
+
+stopSection(); ?>
+
+startSection('content'); ?>
+
+
+
Custom Order Details
+
Order #order_number); ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Order Progress
+
+ '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;
+ ?>
+
+ addLoop($__currentLoopData); foreach($__currentLoopData as $index => $step): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
+
+ popLoop(); $loop = $__env->getLastLoop(); ?>
+
+
+
+
+
+
+
+
Order Status
+
+
+ status))); ?>
+
+
+
+ Submitted on created_at->format('d M Y \a\t H:i')); ?>
+
+
+
+
+
+
+
+
Design Requirements
+
+
+
Order Type
+
type); ?>
+
+
+
+
Dimensions
+ specifications): ?>
+
+ specifications->length): ?>
+
+
Length:
+ specifications->length); ?>m
+
+
+ specifications->width): ?>
+
+
Width:
+ specifications->width); ?>m
+
+
+ specifications->height): ?>
+
+
Height:
+ specifications->height); ?>m
+
+
+
+
Quantity:
+ specifications->quantity); ?>
+
+
+
+
+
+
+
Print Material
+ specifications->printStock): ?>
+
specifications->printStock->name); ?>
+
+
+
+
+
Design Brief
+
customer_brief); ?>
+
+
+ specifications->special_instructions): ?>
+
+
Special Instructions
+
specifications->special_instructions); ?>
+
+
+
+
+
+ files->count() > 0): ?>
+
+
Reference Images
+
+ files; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $file): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
+
+
+
+ popLoop(); $loop = $__env->getLastLoop(); ?>
+
+
+
+
+
+ proofs->count() > 0): ?>
+
+
Design Proofs
+ proofs; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $proof): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
+
+
+
Proof iteration); ?>
+
+ status)); ?>
+
+
+
+ file_path): ?>
+
+ View Proof File
+
+
+ feedback): ?>
+
+
Feedback:
+
feedback); ?>
+
+
+
+ popLoop(); $loop = $__env->getLastLoop(); ?>
+
+
+
+
+
+
+
+
+
Order Summary
+
+
+
+
+ Design Fee:
+ Rdesign_fee, 2)); ?>
+
+ material_cost > 0): ?>
+
+ Material Cost:
+ Rmaterial_cost, 2)); ?>
+
+
+
+ Total:
+ Rtotal_cost, 2)); ?>
+
+
+
+
+
Payment Status
+
+
+
+ Deposit (20%)
+ deposit_status)); ?>
+
+
Rdeposit_amount, 2)); ?>
+
+
+
+
+ Balance (80%)
+ balance_status)); ?>
+
+
Rbalance_amount, 2)); ?>
+
+
+
+ deposit_status !== 'paid'): ?>
+
+ deposit_status === 'paid' && $customOrder->proofs->where('status', 'approved')->count() > 0 && $customOrder->balance_status !== 'paid'): ?>
+
Pay Balance (Rbalance_amount, 2)); ?>)
+
+
+
+
+
+
Payment Terms
+
+ The 20% deposit is non-refundable
+ Balance of 80% must be paid before printing begins
+ library_discount_applied): ?>
+ Design may be added to our library
+
+ Bespoke, exclusive design
+
+
+
+
+
+
+
+
+stopSection(); ?>
+
+make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?>
\ No newline at end of file
diff --git a/storage/framework/views/3764fdc9fc3bd11621707db2096f5ed3.php b/storage/framework/views/3764fdc9fc3bd11621707db2096f5ed3.php
deleted file mode 100644
index 414efe3..0000000
--- a/storage/framework/views/3764fdc9fc3bd11621707db2096f5ed3.php
+++ /dev/null
@@ -1,106 +0,0 @@
-
-
-
-
- $fieldWrapperView] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('dynamic-component'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\DynamicComponent::ignoredParameterNames()); ?>
-
-withAttributes(['field' => $field,'class' => 'fi-fo-textarea-wrp']); ?>
-
-
- '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() : [])); ?>
-withName('filament::input.wrapper'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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,
- ])
- )]); ?>
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/39345582fc2db52dbc7f0f200cead333.php b/storage/framework/views/39345582fc2db52dbc7f0f200cead333.php
deleted file mode 100644
index 6e2293c..0000000
--- a/storage/framework/views/39345582fc2db52dbc7f0f200cead333.php
+++ /dev/null
@@ -1,229 +0,0 @@
-
-
-
-
- $fieldWrapperView] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('dynamic-component'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\DynamicComponent::ignoredParameterNames()); ?>
-
-withAttributes(['field' => $field,'class' => 'fi-fo-select-wrp']); ?>
-
-
- '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() : [])); ?>
-withName('filament::input.wrapper'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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,
- ])
- )]); ?>
-
-
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)),
- ])); ?>
-
- >
-
-
-
-
-
-
-
-
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $value => $label): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $groupedValue => $groupedLabel): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
- value=""
- >
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
- value=""
- >
-
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
-
,
- statePath: toHtml() ?>,
- })"
- wire:ignore
- wire:key="."
- x-on:keydown.esc="select.dropdown.isActive && $event.stopPropagation()"
- x-on:set-select-property="$event.detail.isDisabled ? select.disable() : select.enable()"
- merge($getExtraAlpineAttributes(), escape: false)
- ->class(['fi-select-input'])); ?>
-
- >
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/3a2cb9666b458ecc4f2fa2c2fec9d575.php b/storage/framework/views/3a2cb9666b458ecc4f2fa2c2fec9d575.php
new file mode 100644
index 0000000..80d972e
--- /dev/null
+++ b/storage/framework/views/3a2cb9666b458ecc4f2fa2c2fec9d575.php
@@ -0,0 +1,292 @@
+
+
+startSection('title', 'My Account - Additional Design'); ?>
+
+startSection('styles'); ?>
+
+stopSection(); ?>
+
+startSection('content'); ?>
+
+
+
My Account
+
Manage your profile and view your orders
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Profile Information
+
+
+
+
+
+
+
+
+
+
+
+
+
+stopSection(); ?>
+
+make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?>
\ No newline at end of file
diff --git a/storage/framework/views/4354f4286f5df87d0ec1b7f2a28b22ae.php b/storage/framework/views/4354f4286f5df87d0ec1b7f2a28b22ae.php
deleted file mode 100644
index d7d4802..0000000
--- a/storage/framework/views/4354f4286f5df87d0ec1b7f2a28b22ae.php
+++ /dev/null
@@ -1,198 +0,0 @@
-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;
- }
-?>
-
-
-
- '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() : [])); ?>
-withName('filament-panels::layout.base'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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,
- ]))]); ?>
-
-
-
-
- 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);
-?>
-
-
-
-
-
- x-data="{}"
- x-bind:class="{ 'lg:fi-hidden': $store.sidebar.isOpen }"
-
- class=" ! $isSidebarFullyCollapsibleOnDesktop,
- ]); ?>"
- >
-
-
- '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() : [])); ?>
-withName('filament::icon-button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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']); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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);
-?>
-
-
-
- x-data="{}"
- x-bind:class="{
- 'fi-main-ctn-sidebar-open': $store.sidebar.isOpen,
- }"
- x-bind:style="'display: flex; opacity:1;'"
-
-
- x-data="{}"
- x-bind:class="{
- 'fi-main-ctn-sidebar-open': $store.sidebar.isOpen,
- }"
- x-bind:style="'display: flex; opacity:1;'"
-
-
- x-data="{}"
- x-bind:style="'display: flex; opacity:1;'"
-
- class="fi-main-ctn"
- >
-
-
-
- value}" : $maxContentWidth,
- ]); ?>"
- >
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/455ff850486ccce453ce0236dc39aa1c.php b/storage/framework/views/455ff850486ccce453ce0236dc39aa1c.php
deleted file mode 100644
index 72c87c8..0000000
--- a/storage/framework/views/455ff850486ccce453ce0236dc39aa1c.php
+++ /dev/null
@@ -1,65 +0,0 @@
-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}";
-?>
-
-
-
-
-
-
class([$getLogoClasses($isDarkMode)])
- ->style([$logoStyles])); ?>
-
- >
-
-
-
-
-
class([$getLogoClasses($isDarkMode)])
- ->style([$logoStyles])); ?>
-
- />
-
-
class([
- $getLogoClasses($isDarkMode),
- ])); ?>
-
- >
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/4d849bad84da6cde90ae52b9d9f50dec.php b/storage/framework/views/4d849bad84da6cde90ae52b9d9f50dec.php
deleted file mode 100644
index d37c2fe..0000000
--- a/storage/framework/views/4d849bad84da6cde90ae52b9d9f50dec.php
+++ /dev/null
@@ -1,286 +0,0 @@
-
-
- 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); ?>
-
- 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);
-?>
-
-
-
-
- '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() : [])); ?>
-withName('filament::icon-button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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))]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-<
-
-
-
-
-
-
- x-bind:id="$id('key-bindings')"
- x-mousetrap.global.map(fn (string $keyBinding): string => str_replace('+', '-', $keyBinding))->implode('.')); ?>="document.getElementById($el.id)?.click()"
-
-
- x-tooltip="{
- content: toHtml() ?>,
- theme: $store.theme,
- allowHTML: toHtml() ?>,
- }"
-
-
- x-data="filamentFormButton"
- x-bind:class="{ 'fi-processing': isProcessing }"
-
- 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)); ?>
-
->
-
-
- $hasLoadingIndicator,
- 'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
- ])), size: $iconSize)); ?>
-
-
-
-
- '',
- 'wire:target' => $loadingIndicatorTarget,
- ])), size: $iconSize)); ?>
-
-
-
-
- 'x-cloak',
- 'x-show' => 'isProcessing',
- ])), size: $iconSize)); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $hasLoadingIndicator,
- 'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
- ])), size: $iconSize)); ?>
-
-
-
-
- '',
- 'wire:target' => $loadingIndicatorTarget,
- ])), size: $iconSize)); ?>
-
-
-
-
- 'x-cloak',
- 'x-show' => 'isProcessing',
- ])), size: $iconSize)); ?>
-
-
-
-
-
-
-
-
-
-
- color(BadgeComponent::class, $badgeColor)->class([
- 'fi-badge',
- ($badgeSize instanceof Size) ? "fi-size-{$badgeSize->value}" : (is_string($badgeSize) ? $badgeSize : ''),
- ])); ?>
-
- >
-
-
-
-
-
-
->
-
\ No newline at end of file
diff --git a/storage/framework/views/54c3d5356cdbbbf74cb08435146375fb.php b/storage/framework/views/54c3d5356cdbbbf74cb08435146375fb.php
new file mode 100644
index 0000000..b3edd15
--- /dev/null
+++ b/storage/framework/views/54c3d5356cdbbbf74cb08435146375fb.php
@@ -0,0 +1,7 @@
+
+
+startSection('title', __('Page Expired')); ?>
+startSection('code', '419'); ?>
+startSection('message', __('Page Expired')); ?>
+
+make('errors::minimal', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?>
\ No newline at end of file
diff --git a/storage/framework/views/56fb2027097802fe9887c535d9dde9ce.php b/storage/framework/views/56fb2027097802fe9887c535d9dde9ce.php
deleted file mode 100644
index 550abce..0000000
--- a/storage/framework/views/56fb2027097802fe9887c535d9dde9ce.php
+++ /dev/null
@@ -1,101 +0,0 @@
- 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); ?>
-
-getHeading();
- $subheading ??= $this->getSubHeading();
- $hasLogo = $this->hasLogo();
-?>
-
-
class(['fi-simple-page'])); ?>>
- getRenderHookScopes())); ?>
-
-
-
-
-
-
- 'filament-panels::components.header.simple','data' => ['heading' => $heading,'logo' => $hasLogo,'subheading' => $subheading]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::header.simple'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['heading' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($heading),'logo' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($hasLogo),'subheading' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($subheading)]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 'filament-actions::components.modals','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-actions::modals'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
- getRenderHookScopes())); ?>
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/5f17ddd0ec9f99758a0ca6c6c13e21d7.php b/storage/framework/views/5f17ddd0ec9f99758a0ca6c6c13e21d7.php
deleted file mode 100644
index 4d91ae5..0000000
--- a/storage/framework/views/5f17ddd0ec9f99758a0ca6c6c13e21d7.php
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
- 'filament-panels::components.page.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::page'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
- content); ?>
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/61c62dff15b13791a69c395cb00e09c8.php b/storage/framework/views/61c62dff15b13791a69c395cb00e09c8.php
deleted file mode 100644
index ce6e6ac..0000000
--- a/storage/framework/views/61c62dff15b13791a69c395cb00e09c8.php
+++ /dev/null
@@ -1,59 +0,0 @@
-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); ?>
-
-
-
-
- \Filament\View\PanelsIconAlias::THEME_SWITCHER_LIGHT_BUTTON,
- 'dark' => \Filament\View\PanelsIconAlias::THEME_SWITCHER_DARK_BUTTON,
- 'system' => \Filament\View\PanelsIconAlias::THEME_SWITCHER_SYSTEM_BUTTON,
- })); ?>
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/66ae2094a35369fe66cfe9d08e5483c4.php b/storage/framework/views/66ae2094a35369fe66cfe9d08e5483c4.php
deleted file mode 100644
index 83b82e0..0000000
--- a/storage/framework/views/66ae2094a35369fe66cfe9d08e5483c4.php
+++ /dev/null
@@ -1,70 +0,0 @@
-
-
- '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); ?>
-
-
-
-<
-
- class([
- 'fi-dropdown-header',
- ])
- ->color(HeaderComponent::class, $color)); ?>
-
->
-
-
-
-
-
-
-
->
-
\ No newline at end of file
diff --git a/storage/framework/views/67a7f07200c3d8fa00ba4fe72a50cf46.php b/storage/framework/views/67a7f07200c3d8fa00ba4fe72a50cf46.php
deleted file mode 100644
index cd3e390..0000000
--- a/storage/framework/views/67a7f07200c3d8fa00ba4fe72a50cf46.php
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $notification): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
- getBroadcastChannel()): ?>
-
-
- push('scripts', $__output, $__scriptKey)
- ?>
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/690e9b8d1239f81f482e37c384703b0e.php b/storage/framework/views/690e9b8d1239f81f482e37c384703b0e.php
index 05ea29f..ac02973 100644
--- a/storage/framework/views/690e9b8d1239f81f482e37c384703b0e.php
+++ b/storage/framework/views/690e9b8d1239f81f482e37c384703b0e.php
@@ -429,7 +429,7 @@
Select Print Stock:
-
+
printStocks; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $stock): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
Length Required (meters):
-
+
Recommended: Add 0.5m for pattern matching and trimming
type === 'mural'): ?>
@@ -542,12 +542,12 @@
Wall Width (meters):
-
+
Wall Height (meters):
-
+
diff --git a/storage/framework/views/6e51499aeff83c919e16b854057abefc.php b/storage/framework/views/6e51499aeff83c919e16b854057abefc.php
deleted file mode 100644
index f265b16..0000000
--- a/storage/framework/views/6e51499aeff83c919e16b854057abefc.php
+++ /dev/null
@@ -1,342 +0,0 @@
- 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); ?>
-
-isSidebarCollapsibleOnDesktop();
- $hasDropdown = filled($label) && filled($icon) && $sidebarCollapsible;
-?>
-
-
toHtml() ?> }"
- data-group-label=""
- x-bind:class="{ 'fi-collapsed': $store.sidebar.groupIsCollapsed(label) }"
- class([
- 'fi-sidebar-group',
- 'fi-active' => $active,
- 'fi-collapsible' => $collapsible,
- ])); ?>
-
->
-
-
- x-on:click="$store.sidebar.toggleCollapsedGroup(label)"
- role="button"
-
-
- 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"
-
- class="fi-sidebar-group-btn"
- >
-
-
-
-
-
-
-
-
-
-
- '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() : [])); ?>
-withName('filament::icon-button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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']); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- '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() : [])); ?>
-withName('filament::dropdown'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['placement' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute((__('filament-panels::layout.direction') === 'rtl') ? 'left-start' : 'right-start'),'x-show' => '! $store.sidebar.isOpen']); ?>
- slot('trigger', null, []); ?>
-
- endSlot(); ?>
-
- 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);
- }
- ?>
-
-
-
-
- 'filament::components.dropdown.header','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::dropdown.header'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $list): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
- 'filament::components.dropdown.list.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::dropdown.list'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
- addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
- isActive();
- $itemBadge = $item->getBadge();
- $itemBadgeColor = $item->getBadgeColor();
- $itemBadgeTooltip = $item->getBadgeTooltip();
- $itemUrl = $item->getUrl();
- $itemIcon = $itemIsActive ? ($item->getActiveIcon() ?? $item->getIcon()) : $item->getIcon();
- $shouldItemOpenUrlInNewTab = $item->shouldOpenUrlInNewTab();
- ?>
-
-
-
- '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() : [])); ?>
-withName('filament::dropdown.list.item'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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)]); ?>
- getLabel()); ?>
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
- x-show="$store.sidebar.isOpen ? ! $store.sidebar.groupIsCollapsed(label) : ! toHtml() ?>"
-
- x-show="! $store.sidebar.groupIsCollapsed(label)"
-
- x-collapse.duration.200ms
-
-
- x-transition:enter="fi-transition-enter"
- x-transition:enter-start="fi-transition-enter-start"
- x-transition:enter-end="fi-transition-enter-end"
-
- class="fi-sidebar-group-items"
- >
- addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
- 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.');
- }
- }
- ?>
-
-
-
- '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() : [])); ?>
-withName('filament-panels::sidebar.item'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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)]); ?>
- getLabel()); ?>
-
-
-
- slot('icon', null, []); ?>
-
-
- endSlot(); ?>
-
-
-
- slot('activeIcon', null, []); ?>
-
-
- endSlot(); ?>
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/6e571b420efa227e90ca35c72263dced.php b/storage/framework/views/6e571b420efa227e90ca35c72263dced.php
deleted file mode 100644
index 82073a8..0000000
--- a/storage/framework/views/6e571b420efa227e90ca35c72263dced.php
+++ /dev/null
@@ -1,67 +0,0 @@
-
-
-
-
-
-
- merge([
- 'id' => $id,
- ], escape: false)
- ->merge($extraAttributes, escape: false)); ?>
-
- >
-
-
-
- mount($__name, $__params, $key);
-
-echo $__html;
-
-unset($__html);
-unset($__name);
-unset($__params);
-unset($__split);
-if (isset($__slots)) unset($__slots);
-?>
-
- mount($__name, $__params, $key);
-
-echo $__html;
-
-unset($__html);
-unset($__name);
-unset($__params);
-unset($__split);
-if (isset($__slots)) unset($__slots);
-?>
-
-
- '; ?>
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/723528cd4a5a6edc2403dddc15fad8ce.blade.php b/storage/framework/views/723528cd4a5a6edc2403dddc15fad8ce.blade.php
deleted file mode 100644
index d8e74fd..0000000
--- a/storage/framework/views/723528cd4a5a6edc2403dddc15fad8ce.blade.php
+++ /dev/null
@@ -1,6 +0,0 @@
-getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
-@props(['field','labelTag'])
-
-
-{{ $slot ?? "" }}
-
\ No newline at end of file
diff --git a/storage/framework/views/77a9bf0e867fdca3a11ef51783d0e448.php b/storage/framework/views/77a9bf0e867fdca3a11ef51783d0e448.php
deleted file mode 100644
index e0d777d..0000000
--- a/storage/framework/views/77a9bf0e867fdca3a11ef51783d0e448.php
+++ /dev/null
@@ -1,12 +0,0 @@
-
merge([
- 'id' => $getId(),
- ], escape: false)
- ->merge($getExtraAttributes(), escape: false)); ?>
-
->
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/793878bac7f49084851c6a750de7b680.php b/storage/framework/views/793878bac7f49084851c6a750de7b680.php
deleted file mode 100644
index 295acd3..0000000
--- a/storage/framework/views/793878bac7f49084851c6a750de7b680.php
+++ /dev/null
@@ -1,206 +0,0 @@
-
-
- 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); ?>
-
-
-
-
- x-on:collapse-section.window="if ($event.detail.id == toHtml() ?> ?? $el.id) isCollapsed = true"
- x-on:expand="isCollapsed = false"
- x-on:expand-section.window="if ($event.detail.id == toHtml() ?> ?? $el.id) isCollapsed = false"
- x-on:open-section.window="if ($event.detail.id == toHtml() ?> ?? $el.id) isCollapsed = false"
- x-on:toggle-section.window="if ($event.detail.id == toHtml() ?> ?? $el.id) isCollapsed = ! isCollapsed"
- x-bind:class="isCollapsed && 'fi-collapsed'"
-
- 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,
- ])); ?>
-
->
-
-
- x-on:click="isCollapsed = ! isCollapsed"
-
- class="fi-section-header"
- >
- color(IconComponent::class, $iconColor), size: $iconSize ?? IconSize::Large)); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
- '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() : [])); ?>
-withName('filament::icon-button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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']); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- x-bind:aria-expanded="(! isCollapsed).toString()"
-
- x-cloak
-
-
- class="fi-section-content-ctn"
- >
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/80c9a0a6308b17fbb7bf93fb62efe7a3.php b/storage/framework/views/80c9a0a6308b17fbb7bf93fb62efe7a3.php
deleted file mode 100644
index d1f2526..0000000
--- a/storage/framework/views/80c9a0a6308b17fbb7bf93fb62efe7a3.php
+++ /dev/null
@@ -1,18 +0,0 @@
-hasUnsavedChangesAlerts()): ?>
-
-
- push('scripts', $__output, $__scriptKey)
- ?>
-
-
\ No newline at end of file
diff --git a/storage/framework/views/81d5610fd0a2b1fb1ea0942d4e877062.php b/storage/framework/views/81d5610fd0a2b1fb1ea0942d4e877062.php
deleted file mode 100644
index 7e0e64f..0000000
--- a/storage/framework/views/81d5610fd0a2b1fb1ea0942d4e877062.php
+++ /dev/null
@@ -1,378 +0,0 @@
-
- getNavigation();
- $isRtl = __('filament-panels::layout.direction') === 'rtl';
- $isSidebarCollapsibleOnDesktop = filament()->isSidebarCollapsibleOnDesktop();
- $isSidebarFullyCollapsibleOnDesktop = filament()->isSidebarFullyCollapsibleOnDesktop();
- $hasNavigation = filament()->hasNavigation();
- $hasTopbar = filament()->hasTopbar();
- ?>
-
-
-
- x-cloak
-
- x-cloak="-lg"
-
- x-bind:class="{ 'fi-sidebar-open': $store.sidebar.isOpen }"
- class="fi-sidebar fi-main-sidebar"
- >
-
-
-
-
-
- hasTenancy() && filament()->hasTenantMenu()): ?>
-
-
- 'filament-panels::components.tenant-menu','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::tenant-menu'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
- isGlobalSearchEnabled() && filament()->getGlobalSearchPosition() === \Filament\Enums\GlobalSearchPosition::Sidebar): ?>
-
- x-show="$store.sidebar.isOpen"
-
- >
- mount($__name, $__params, $key);
-
-echo $__html;
-
-unset($__html);
-unset($__name);
-unset($__params);
-unset($__split);
-if (isset($__slots)) unset($__slots);
-?>
-
-
-
-
-
- auth()->check();
- $hasDatabaseNotificationsInSidebar = filament()->hasDatabaseNotifications() && filament()->getDatabaseNotificationsPosition() === \Filament\Enums\DatabaseNotificationsPosition::Sidebar;
- $hasUserMenuInSidebar = filament()->hasUserMenu() && filament()->getUserMenuPosition() === \Filament\Enums\UserMenuPosition::Sidebar;
- $shouldRenderFooter = $isAuthenticated && ($hasDatabaseNotificationsInSidebar || $hasUserMenuInSidebar);
- ?>
-
-
-
-
-
-
-
-
-
-
-
-
- 'filament-actions::components.modals','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-actions::modals'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/8225b4ab5e177c6ce756bf6bd43eb60c.php b/storage/framework/views/8225b4ab5e177c6ce756bf6bd43eb60c.php
deleted file mode 100644
index c65fd1a..0000000
--- a/storage/framework/views/8225b4ab5e177c6ce756bf6bd43eb60c.php
+++ /dev/null
@@ -1,45 +0,0 @@
- 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); ?>
-
-
class([
- 'fi-input',
- 'fi-input-has-inline-prefix' => $inlinePrefix,
- 'fi-input-has-inline-suffix' => $inlineSuffix,
- ])); ?>
-
-/>
-
\ No newline at end of file
diff --git a/storage/framework/views/8848a11e123e6274892c44c05c02e2c0.php b/storage/framework/views/8848a11e123e6274892c44c05c02e2c0.php
deleted file mode 100644
index cb93c1f..0000000
--- a/storage/framework/views/8848a11e123e6274892c44c05c02e2c0.php
+++ /dev/null
@@ -1,21 +0,0 @@
-hasActionsModalRendered)): ?>
-
- getMountedActions(); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $action): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
- last) || $this->mountedActionShouldOpenModal()): ?>
- toModalHtmlable()); ?>
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
- hasActionsModalRendered = true;
- ?>
-
-
\ No newline at end of file
diff --git a/storage/framework/views/89e20d28937b735b6c73bd70fec38023.php b/storage/framework/views/89e20d28937b735b6c73bd70fec38023.php
deleted file mode 100644
index 881f47b..0000000
--- a/storage/framework/views/89e20d28937b735b6c73bd70fec38023.php
+++ /dev/null
@@ -1,265 +0,0 @@
-
-
- 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); ?>
-
-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);
- }
- }
-?>
-
-
merge($field?->getExtraFieldWrapperAttributes() ?? [], escape: false)
- ->class([
- 'fi-fo-field',
- 'fi-fo-field-has-inline-label' => $hasInlineLabel,
- ])); ?>
-
->
-
- <
-
-
- for=""
-
- id="-label"
-
- class="fi-fo-field-label fi-sr-only"
- >
-
-
- >
-
-
-
-
value}" => $hasInlineLabel,
- ]); ?>"
- >
-
-
-
-
-
-
-
-
- <
-
-
- for=""
-
- id="-label"
-
- class="fi-fo-field-label"
- >
-
-
-
-
-
- *
-
-
-
-
-
-
- >
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $errorMessage): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/8dd2c79bd081de46821e5a4c16e0218a.php b/storage/framework/views/8dd2c79bd081de46821e5a4c16e0218a.php
new file mode 100644
index 0000000..6967134
--- /dev/null
+++ b/storage/framework/views/8dd2c79bd081de46821e5a4c16e0218a.php
@@ -0,0 +1,282 @@
+
+
+startSection('title', 'My Orders - Additional Design'); ?>
+
+startSection('styles'); ?>
+
+stopSection(); ?>
+
+startSection('content'); ?>
+
+
+
My Orders
+
View your standard and custom orders
+
+
+
+
+
Standard Orders
+
+ count() > 0): ?>
+
+
+
+
+ Order #
+ Date
+ Total
+ Status
+ Action
+
+
+
+ addLoop($__currentLoopData); foreach($__currentLoopData as $order): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
+
+ order_number); ?>
+ created_at->format('d M Y')); ?>
+ Rtotal, 2)); ?>
+
+
+ status))); ?>
+
+
+
+
+ View Details
+
+
+ popLoop(); $loop = $__env->getLastLoop(); ?>
+
+
+
+
+
+
+
+
+
+
+
+
+ count() > 0): ?>
+
+
+
+
+ Order #
+ Type
+ Total
+ Status
+ Deposit
+ Action
+
+
+
+ addLoop($__currentLoopData); foreach($__currentLoopData as $order): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
+
+ order_number); ?>
+ type)); ?>
+ Rtotal_cost, 2)); ?>
+
+
+ status))); ?>
+
+
+
+
+
+ deposit_status)); ?>
+
+
+
+
+ View Details
+
+
+ popLoop(); $loop = $__env->getLastLoop(); ?>
+
+
+
+
+
+
+
+
+stopSection(); ?>
+
+make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?>
\ No newline at end of file
diff --git a/storage/framework/views/8e965d04afbd3d125b04967406aafa03.php b/storage/framework/views/8e965d04afbd3d125b04967406aafa03.php
deleted file mode 100644
index 52df10d..0000000
--- a/storage/framework/views/8e965d04afbd3d125b04967406aafa03.php
+++ /dev/null
@@ -1,189 +0,0 @@
-
-
- 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); ?>
-
- 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);
-?>
-
-<
-
-
-
-
-
-
- x-bind:id="$id('key-bindings')"
- x-mousetrap.global.map(fn (string $keyBinding): string => str_replace('+', '-', $keyBinding))->implode('.')); ?>="document.getElementById($el.id)?.click()"
-
-
- x-tooltip="{
- content: toHtml() ?>,
- theme: $store.theme,
- allowHTML: toHtml() ?>,
- }"
-
- 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)); ?>
-
->
- $hasLoadingIndicator,
- 'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
- ])), size: $iconSize)); ?>
-
-
-
- '',
- 'wire:target' => $loadingIndicatorTarget,
- ])), size: $iconSize)); ?>
-
-
-
-
-
-
-
-
-
- color(BadgeComponent::class, $badgeColor)->class([
- 'fi-badge',
- ($badgeSize instanceof Size) ? "fi-size-{$badgeSize->value}" : (is_string($badgeSize) ? $badgeSize : ''),
- ])); ?>
-
- >
-
-
-
-
-
-
->
-
\ No newline at end of file
diff --git a/storage/framework/views/8f77655fced827f2335dc0fd5b0b86c6.php b/storage/framework/views/8f77655fced827f2335dc0fd5b0b86c6.php
deleted file mode 100644
index 2a7e0be..0000000
--- a/storage/framework/views/8f77655fced827f2335dc0fd5b0b86c6.php
+++ /dev/null
@@ -1,112 +0,0 @@
- 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); ?>
-
- $availableHeight,
- 'availableWidth' => $availableWidth,
- 'padding' => $sizePadding,
- ])->filter()->toJson();
-
- if (is_string($width)) {
- $width = Width::tryFrom($width) ?? $width;
- }
-?>
-
-
class(['fi-dropdown'])); ?>
-
->
-
attributes->class(['fi-dropdown-trigger'])); ?>
-
- >
-
-
-
-
-
-
="{ offset: , }"
- x-ref="panel"
- x-transition:enter-start="fi-opacity-0"
- x-transition:leave-end="fi-opacity-0"
- has('wire:key')): ?>
- wire:ignore.self
- wire:key="get('wire:key')); ?>.panel"
-
- class="value}" : (is_string($width) ? $width : ''),
- 'fi-scrollable' => $maxHeight || $size,
- ]); ?>"
- style=" $maxHeight,
- ]) ?>"
- >
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/90551f17a50a15ab24b4377ee8ae47dd.php b/storage/framework/views/90551f17a50a15ab24b4377ee8ae47dd.php
deleted file mode 100644
index f8a02df..0000000
--- a/storage/framework/views/90551f17a50a15ab24b4377ee8ae47dd.php
+++ /dev/null
@@ -1,292 +0,0 @@
-
-
- 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); ?>
-
-
-
-
-
-
- x-sortable
- x-on:end.stop="reorderColumns($event.target.sortable.toArray())"
- data-sortable-animation-duration=""
-
- grid($columns, GridDirection::Column)
- ->class(['fi-ta-col-manager-items'])); ?>
-
- >
-
-
- x-bind:x-sortable-item="column.type === 'group' ? 'group::' + column.name : 'column::' + column.name"
-
- >
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- x-sortable
- x-on:end.stop="reorderGroupColumns($event.target.sortable.toArray(), column.name)"
- data-sortable-animation-duration=""
-
- class="fi-ta-col-manager-group-items"
- >
-
-
- x-bind:x-sortable-item="'column::' + groupColumn.name"
-
- >
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- isVisible() || $resetActionPosition === ColumnManagerResetActionPosition::Footer): ?>
-
- isVisible()): ?>
-
-
-
-
-
-
-
- 'filament::components.button.index','data' => ['color' => 'danger','wire:click' => 'resetTableColumnManager']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['color' => 'danger','wire:click' => 'resetTableColumnManager']); ?>
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/92893849a26fcfa0273e3d6dabd17540.php b/storage/framework/views/92893849a26fcfa0273e3d6dabd17540.php
deleted file mode 100644
index beef6b2..0000000
--- a/storage/framework/views/92893849a26fcfa0273e3d6dabd17540.php
+++ /dev/null
@@ -1,96 +0,0 @@
-
-
-
-
-
- '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() : [])); ?>
-withName('filament::badge'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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'])))]); ?>
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
- x-on:click="
- window.navigator.clipboard.writeText(toHtml() ?>)
- $tooltip(toHtml() ?>, {
- theme: $store.theme,
- timeout: toHtml() ?>,
- })
- "
-
-
- x-tooltip="{
- content: toHtml() ?>,
- theme: $store.theme,
- allowHTML: toHtml() ?>,
- }"
-
- 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)); ?>
-
- >
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/963fa7931519a2bda4d512a9065cf86a.php b/storage/framework/views/963fa7931519a2bda4d512a9065cf86a.php
deleted file mode 100644
index 1794c56..0000000
--- a/storage/framework/views/963fa7931519a2bda4d512a9065cf86a.php
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-addLoop($__currentLoopData); foreach($__currentLoopData as $asset): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
- isLoadedOnRequest()): ?>
- getHtml()); ?>
-
-
-popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/97867fde05c61ffbb4be32bd2ec46ec7.php b/storage/framework/views/97867fde05c61ffbb4be32bd2ec46ec7.php
deleted file mode 100644
index 3035094..0000000
--- a/storage/framework/views/97867fde05c61ffbb4be32bd2ec46ec7.php
+++ /dev/null
@@ -1,127 +0,0 @@
- [],
- '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); ?>
-
-
class([
- 'fi-header',
- 'fi-header-has-breadcrumbs' => $breadcrumbs,
- ])); ?>
-
->
-
-
-
-
- 'filament::components.breadcrumbs','data' => ['breadcrumbs' => $breadcrumbs]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::breadcrumbs'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['breadcrumbs' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($breadcrumbs)]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- getRenderHookScopes());
- $afterActions = \Filament\Support\Facades\FilamentView::renderHook(\Filament\View\PanelsRenderHook::PAGE_HEADER_ACTIONS_AFTER, scopes: $this->getRenderHookScopes());
- ?>
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/9d691895ebd68604830197fe0ba20c4e.php b/storage/framework/views/9d691895ebd68604830197fe0ba20c4e.php
deleted file mode 100644
index b0b74bb..0000000
--- a/storage/framework/views/9d691895ebd68604830197fe0ba20c4e.php
+++ /dev/null
@@ -1,227 +0,0 @@
-
-
- '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); ?>
-
-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);
-?>
-
-<
-
-
-
-
-
-
- x-bind:id="$id('key-bindings')"
- x-mousetrap.global.map(fn (string $keyBinding): string => str_replace('+', '-', $keyBinding))->implode('.')); ?>="document.getElementById($el.id)?.click()"
-
-
- x-tooltip="{
- content: toHtml() ?>,
- theme: $store.theme,
- allowHTML: toHtml() ?>,
- }"
-
- 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)); ?>
-
->
-
-
- $hasLoadingIndicator,
- 'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
- ])), size: $iconSize ?? \Filament\Support\Enums\IconSize::Small)); ?>
-
-
-
-
- '',
- 'wire:target' => $loadingIndicatorTarget,
- ])), size: $iconSize ?? \Filament\Support\Enums\IconSize::Small)); ?>
-
-
-
-
-
-
-
-
-
-
-
-
- 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);
- }
- ?>
-
-
attributes
- ->except(['label'])
- ->class([
- 'fi-badge-delete-btn',
- ])); ?>
-
- >
- $deleteButtonHasLoadingIndicator,
- 'wire:target' => $deleteButtonHasLoadingIndicator ? $deleteButtonLoadingIndicatorTarget : false,
- ])), size: \Filament\Support\Enums\IconSize::ExtraSmall)); ?>
-
-
-
- '',
- 'wire:target' => $deleteButtonLoadingIndicatorTarget,
- ])), size: \Filament\Support\Enums\IconSize::ExtraSmall)); ?>
-
-
-
- attributes->get('label'))): ?>
-
-
-
-
-
-
-
-
- $hasLoadingIndicator,
- 'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
- ])), size: $iconSize ?? \Filament\Support\Enums\IconSize::Small)); ?>
-
-
-
-
- '',
- 'wire:target' => $loadingIndicatorTarget,
- ])), size: $iconSize ?? \Filament\Support\Enums\IconSize::Small)); ?>
-
-
-
->
-
\ No newline at end of file
diff --git a/storage/framework/views/9ef0dfd29e0ee94f00e7cbd0892f433c.php b/storage/framework/views/9ef0dfd29e0ee94f00e7cbd0892f433c.php
deleted file mode 100644
index ab482c7..0000000
--- a/storage/framework/views/9ef0dfd29e0ee94f00e7cbd0892f433c.php
+++ /dev/null
@@ -1,75 +0,0 @@
-
-
-
- 'filament-panels::components.theme-switcher.button','data' => ['icon' => \Filament\Support\Icons\Heroicon::Sun,'theme' => 'light']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::theme-switcher.button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::Sun),'theme' => 'light']); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
- 'filament-panels::components.theme-switcher.button','data' => ['icon' => \Filament\Support\Icons\Heroicon::Moon,'theme' => 'dark']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::theme-switcher.button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::Moon),'theme' => 'dark']); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
- 'filament-panels::components.theme-switcher.button','data' => ['icon' => \Filament\Support\Icons\Heroicon::ComputerDesktop,'theme' => 'system']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::theme-switcher.button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\Icons\Heroicon::ComputerDesktop),'theme' => 'system']); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/9f8ad04ac0e5cad2ba5cbdf9e6b839ac.php b/storage/framework/views/9f8ad04ac0e5cad2ba5cbdf9e6b839ac.php
deleted file mode 100644
index f83ada1..0000000
--- a/storage/framework/views/9f8ad04ac0e5cad2ba5cbdf9e6b839ac.php
+++ /dev/null
@@ -1,325 +0,0 @@
- 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); ?>
-
-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();
-?>
-
-
-
-
-
-
- '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() : [])); ?>
-withName('filament::dropdown'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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'])
- )]); ?>
- slot('trigger', null, []); ?>
-
-
-
-
-
- endSlot(); ?>
-
-
- getColor();
- $itemIcon = $item->getIcon();
-
- unset($itemsBeforeThemeSwitcher['profile']);
- ?>
-
-
-
-
-
-
- 'filament::components.dropdown.header','data' => ['color' => $itemColor,'icon' => $itemIcon]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::dropdown.header'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemColor),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($itemIcon)]); ?>
- getLabel()); ?>
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- isNotEmpty()): ?>
-
-
- 'filament::components.dropdown.list.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::dropdown.list'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
- addLoop($__currentLoopData); foreach($__currentLoopData as $key => $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
- hasDarkMode() && (! filament()->hasDarkModeForced())): ?>
-
-
- 'filament::components.dropdown.list.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::dropdown.list'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
-
-
- 'filament-panels::components.theme-switcher.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::theme-switcher'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
- isNotEmpty()): ?>
-
-
- 'filament::components.dropdown.list.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::dropdown.list'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
- addLoop($__currentLoopData); foreach($__currentLoopData as $key => $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/a01f2f0ad64ffb4bec6c224e0a32b065.php b/storage/framework/views/a01f2f0ad64ffb4bec6c224e0a32b065.php
deleted file mode 100644
index 1b26742..0000000
--- a/storage/framework/views/a01f2f0ad64ffb4bec6c224e0a32b065.php
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
- 'filament-widgets::components.widget','data' => ['class' => 'fi-wi-table']] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-widgets::widget'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['class' => 'fi-wi-table']); ?>
-
-
-
- table); ?>
-
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/adc4c4a369b2bee1705d8da3a6247c45.php b/storage/framework/views/adc4c4a369b2bee1705d8da3a6247c45.php
new file mode 100644
index 0000000..3d6c084
--- /dev/null
+++ b/storage/framework/views/adc4c4a369b2bee1705d8da3a6247c45.php
@@ -0,0 +1,808 @@
+
+
+startSection('title', 'Request Custom Design - Additional Design'); ?>
+
+startSection('styles'); ?>
+
+stopSection(); ?>
+
+startSection('content'); ?>
+
+
+
Request Custom Design
+
Create a custom wallpaper, mural, or fabric design tailored to your needs
+
+
+ any()): ?>
+
+
Please correct the following errors:
+
+ all(); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $error): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
+
+ popLoop(); $loop = $__env->getLastLoop(); ?>
+
+
+
+
+
+
+ ✓
+
+
+
+
+
+
+
How It Works
+
+ Submit your custom order with design specifications and reference images
+ Pay a 20% non-refundable deposit to commence design work
+ Our team creates your design and prepares proofs for review
+ Pay the remaining 80% balance to proceed with printing and shipping
+
+
+
+
+
+
+
+
+ stopSection(); ?>
+make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?>
\ No newline at end of file
diff --git a/storage/framework/views/af830d64c98ea537dd47cb4334f3a451.php b/storage/framework/views/af830d64c98ea537dd47cb4334f3a451.php
deleted file mode 100644
index 83e2eb5..0000000
--- a/storage/framework/views/af830d64c98ea537dd47cb4334f3a451.php
+++ /dev/null
@@ -1,517 +0,0 @@
-
- isSidebarCollapsibleOnDesktop();
- $isSidebarFullyCollapsibleOnDesktop = filament()->isSidebarFullyCollapsibleOnDesktop();
- $hasTopNavigation = filament()->hasTopNavigation();
- $hasNavigation = filament()->hasNavigation();
- $hasTenancy = filament()->hasTenancy();
- ?>
-
-
-
-
-
-
-
-
- '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() : [])); ?>
-withName('filament::icon-button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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']); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
- '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() : [])); ?>
-withName('filament::icon-button'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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']); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- hasTenantMenu()): ?>
-
-
- 'filament-panels::components.tenant-menu','data' => ['teleport' => true]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::tenant-menu'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['teleport' => true]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
- getNavigation();
- ?>
-
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $group): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
- getLabel();
- $groupExtraTopbarAttributeBag = $group->getExtraTopbarAttributeBag();
- $isGroupActive = $group->isActive();
- $groupIcon = $group->getIcon();
- ?>
-
-
-
-
- '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() : [])); ?>
-withName('filament::dropdown'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['placement' => 'bottom-start','teleport' => true,'attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(\Filament\Support\prepare_inherited_attributes($groupExtraTopbarAttributeBag))]); ?>
- slot('trigger', null, []); ?>
-
-
- 'filament-panels::components.topbar.item','data' => ['active' => $isGroupActive,'icon' => $groupIcon]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::topbar.item'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['active' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($isGroupActive),'icon' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($groupIcon)]); ?>
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- endSlot(); ?>
-
- 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);
- }
- ?>
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $list): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
- 'filament::components.dropdown.list.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::dropdown.list'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
- addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
- isActive();
- $itemBadge = $item->getBadge();
- $itemBadgeColor = $item->getBadgeColor();
- $itemBadgeTooltip = $item->getBadgeTooltip();
- $itemUrl = $item->getUrl();
- $itemIcon = $isItemActive ? ($item->getActiveIcon() ?? $item->getIcon()) : $item->getIcon();
- $shouldItemOpenUrlInNewTab = $item->shouldOpenUrlInNewTab();
- ?>
-
-
-
- '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() : [])); ?>
-withName('filament::dropdown.list.item'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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)]); ?>
- getLabel()); ?>
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
- getItems(); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
- isActive();
- $itemActiveIcon = $item->getActiveIcon();
- $itemBadge = $item->getBadge();
- $itemBadgeColor = $item->getBadgeColor();
- $itemBadgeTooltip = $item->getBadgeTooltip();
- $itemIcon = $item->getIcon();
- $shouldItemOpenUrlInNewTab = $item->shouldOpenUrlInNewTab();
- $itemUrl = $item->getUrl();
- ?>
-
-
-
- '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() : [])); ?>
-withName('filament-panels::topbar.item'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-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)]); ?>
- getLabel()); ?>
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
-
-
- x-persist="topbar.end.panel-getId()); ?>.tenant-getTenant()?->getKey()); ?>"
-
- x-persist="topbar.end.panel-getId()); ?>"
-
- class="fi-topbar-end"
- >
-
-
-
- isGlobalSearchEnabled() && filament()->getGlobalSearchPosition() === \Filament\Enums\GlobalSearchPosition::Topbar): ?>
- mount($__name, $__params, $key);
-
-echo $__html;
-
-unset($__html);
-unset($__name);
-unset($__params);
-unset($__split);
-if (isset($__slots)) unset($__slots);
-?>
-
-
-
-
-
- auth()->check()): ?>
- hasDatabaseNotifications() && filament()->getDatabaseNotificationsPosition() === \Filament\Enums\DatabaseNotificationsPosition::Topbar): ?>
- 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);
-?>
-
-
- hasUserMenu() && filament()->getUserMenuPosition() === \Filament\Enums\UserMenuPosition::Topbar): ?>
-
-
- 'filament-panels::components.user-menu','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::user-menu'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 'filament-actions::components.modals','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-actions::modals'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/b050c707ba664a0ff93eb239317b5280.php b/storage/framework/views/b050c707ba664a0ff93eb239317b5280.php
deleted file mode 100644
index 0438a90..0000000
--- a/storage/framework/views/b050c707ba664a0ff93eb239317b5280.php
+++ /dev/null
@@ -1,53 +0,0 @@
-getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
-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); ?>
-
-
- 'filament-forms::components.field-wrapper','data' => ['field' => $field,'class' => $class]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-forms::field-wrapper'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['field' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($field),'class' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($class)]); ?>
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/b235d3c77d869dcdade57f7a1b61c8ff.php b/storage/framework/views/b235d3c77d869dcdade57f7a1b61c8ff.php
deleted file mode 100644
index 2a7392a..0000000
--- a/storage/framework/views/b235d3c77d869dcdade57f7a1b61c8ff.php
+++ /dev/null
@@ -1,212 +0,0 @@
- 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); ?>
-
- $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);
- }
-?>
-
-
- x-bind:class="{
-
-
-
-
- }"
-
- except(['wire:target', 'tabindex'])
- ->class([
- 'fi-input-wrp',
- 'fi-disabled' => (! $hasAlpineClasses) && $disabled,
- 'fi-invalid' => (! $hasAlpineClasses) && (! $valid),
- ])); ?>
-
->
-
-
- wire:loading.delay..flex
- wire:target=""
- wire:key=""
-
- class=" $hasPrefix,
- 'fi-inline' => $inlinePrefix,
- 'fi-input-wrp-prefix-has-label' => filled($prefix),
- ]); ?>"
- >
-
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $prefixAction): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
- merge([
- 'wire:loading.remove.delay.' . config('filament.livewire_loading_delay', 'default') => $hasLoadingIndicator,
- 'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
- ], escape: false)
- ->color(IconComponent::class, $prefixIconColor))); ?>
-
-
-
- $hasPrefix,
- 'wire:target' => $hasPrefix ? $loadingIndicatorTarget : null,
- ]))->color(IconComponent::class, 'gray'))); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- wire:loading.delay..class.remove="ps-3"
-
-
- wire:target=""
-
- class=" $hasLoadingIndicator && (! $hasPrefix) && $inlinePrefix,
- ]); ?>"
- >
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/b534ed8dcc766a521ddb9b5ab34526ff.php b/storage/framework/views/b534ed8dcc766a521ddb9b5ab34526ff.php
deleted file mode 100644
index a924782..0000000
--- a/storage/framework/views/b534ed8dcc766a521ddb9b5ab34526ff.php
+++ /dev/null
@@ -1,74 +0,0 @@
- false,
- 'ariaLabel' => null,
- 'disabled' => false,
- 'icon' => null,
- 'iconAlias' => null,
- 'label' => 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(([
- 'active' => false,
- 'ariaLabel' => null,
- 'disabled' => false,
- 'icon' => null,
- 'iconAlias' => null,
- 'label' => 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); ?>
-
-
class([
- 'fi-pagination-item',
- 'fi-disabled' => $disabled,
- 'fi-active' => $active,
- ])); ?>
-
->
-
- type="button"
- class="fi-pagination-item-btn"
- >
-
- class([
- 'fi-pagination-item-icon',
- ]))); ?>
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/be6715616843b225cf6deff982e77b14.php b/storage/framework/views/be6715616843b225cf6deff982e77b14.php
deleted file mode 100644
index 672236a..0000000
--- a/storage/framework/views/be6715616843b225cf6deff982e77b14.php
+++ /dev/null
@@ -1,396 +0,0 @@
- 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(([
- 'fullHeight' => 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); ?>
-
-getCachedSubNavigation();
- $subNavigationPosition = $this->getSubNavigationPosition();
- $widgetData = $this->getWidgetData();
-?>
-
-
class([
- 'fi-page',
- 'fi-height-full' => $fullHeight,
- 'fi-page-has-sub-navigation' => $subNavigation,
- "fi-page-has-sub-navigation-{$subNavigationPosition->value}" => $subNavigation,
- ...$this->getPageClasses(),
- ])); ?>
-
->
- getRenderHookScopes())); ?>
-
-
-
-
-
- getRenderHookScopes())); ?>
-
-
-
-
-
- 'filament-panels::components.page.sub-navigation.mobile-menu','data' => ['navigation' => $subNavigation]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::page.sub-navigation.mobile-menu'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['navigation' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($subNavigation)]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
- getRenderHookScopes())); ?>
-
-
-
-
- getHeader()): ?>
-
-
-
- getHeading();
- $headerActions = $this->getCachedHeaderActions();
- $headerActionsAlignment = $this->getHeaderActionsAlignment();
- $breadcrumbs = filament()->hasBreadcrumbs() ? $this->getBreadcrumbs() : [];
- $subheading = $this->getSubheading();
- ?>
-
-
-
-
- 'filament-panels::components.header.index','data' => ['actions' => $headerActions,'actionsAlignment' => $headerActionsAlignment,'breadcrumbs' => $breadcrumbs,'heading' => $heading,'subheading' => $subheading]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::header'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['actions' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($headerActions),'actions-alignment' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($headerActionsAlignment),'breadcrumbs' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($breadcrumbs),'heading' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($heading),'subheading' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($subheading)]); ?>
-
- slot('heading', null, []); ?>
-
-
- endSlot(); ?>
-
-
-
- slot('subheading', null, []); ?>
-
-
- endSlot(); ?>
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- getRenderHookScopes())); ?>
-
-
-
-
- 'filament-panels::components.page.sub-navigation.sidebar','data' => ['navigation' => $subNavigation]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::page.sub-navigation.sidebar'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['navigation' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($subNavigation)]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
- getRenderHookScopes())); ?>
-
-
-
-
- getRenderHookScopes())); ?>
-
-
-
-
- 'filament-panels::components.page.sub-navigation.tabs','data' => ['navigation' => $subNavigation]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::page.sub-navigation.tabs'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['navigation' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($subNavigation)]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
- getRenderHookScopes())); ?>
-
-
-
-
-
- getRenderHookScopes())); ?>
-
-
- headerWidgets); ?>
-
-
- getRenderHookScopes())); ?>
-
-
-
-
-
- getRenderHookScopes())); ?>
-
-
- footerWidgets); ?>
-
-
- getRenderHookScopes())); ?>
-
-
-
-
- getRenderHookScopes())); ?>
-
-
-
-
- 'filament-panels::components.page.sub-navigation.sidebar','data' => ['navigation' => $subNavigation]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::page.sub-navigation.sidebar'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['navigation' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($subNavigation)]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
- getRenderHookScopes())); ?>
-
-
-
-
- getFooter()): ?>
-
-
-
-
-
-
-
-
- 'filament-actions::components.modals','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-actions::modals'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
- isTableLoaded() && filled($this->defaultTableAction)): ?>
-
-
-
- defaultAction)): ?>
-
-
-
- getRenderHookScopes())); ?>
-
-
- hasUnsavedDataChangesAlert()): ?>
-
-
-
- push('scripts', $__output, $__scriptKey)
- ?>
-
-
-
- push('scripts', $__output, $__scriptKey)
- ?>
-
-
-
- hasDebugModeEnabled()) && $this->hasErrorNotifications()): ?>
-
-
- push('scripts', $__output, $__scriptKey)
- ?>
-
-
-
-
- 'filament-panels::components.unsaved-action-changes-alert','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-panels::unsaved-action-changes-alert'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
-renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/bfd832b53fad5948a8706f00a290c0cf.php b/storage/framework/views/bfd832b53fad5948a8706f00a290c0cf.php
deleted file mode 100644
index 642f416..0000000
--- a/storage/framework/views/bfd832b53fad5948a8706f00a290c0cf.php
+++ /dev/null
@@ -1,217 +0,0 @@
- false,
- 'activeChildItems' => false,
- 'activeIcon' => null,
- 'badge' => null,
- 'badgeColor' => null,
- 'badgeTooltip' => null,
- 'childItems' => [],
- 'first' => false,
- 'grouped' => false,
- 'icon' => null,
- 'last' => false,
- 'shouldOpenUrlInNewTab' => false,
- 'sidebarCollapsible' => true,
- 'subGrouped' => false,
- 'subNavigation' => false,
- 'url',
-]));
-
-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,
- 'activeChildItems' => false,
- 'activeIcon' => null,
- 'badge' => null,
- 'badgeColor' => null,
- 'badgeTooltip' => null,
- 'childItems' => [],
- 'first' => false,
- 'grouped' => false,
- 'icon' => null,
- 'last' => false,
- 'shouldOpenUrlInNewTab' => false,
- 'sidebarCollapsible' => true,
- 'subGrouped' => false,
- 'subNavigation' => false,
- 'url',
-]), '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); ?>
-
-isSidebarCollapsibleOnDesktop();
-?>
-
-
class([
- 'fi-sidebar-item',
- 'fi-active' => $active,
- 'fi-sidebar-item-has-active-child-items' => $activeChildItems,
- 'fi-sidebar-item-has-url' => filled($url),
- ])); ?>
-
->
-
-
- x-on:click="window.matchMedia(`(max-width: 1024px)`).matches && $store.sidebar.close()"
-
- x-data="{ tooltip: false }"
- x-effect="
- tooltip = $store.sidebar.isOpen
- ? false
- : {
- content: toHtml())->toHtml() ?>,
- placement: document.dir === 'rtl' ? 'left' : 'right',
- theme: $store.theme,
- }
- "
- x-tooltip.html="tooltip"
-
- class="fi-sidebar-item-btn"
- >
-
- ($subGrouped && $sidebarCollapsible) ? '! $store.sidebar.isOpen' : false,
- ]))->class(['fi-sidebar-item-icon']), size: \Filament\Support\Enums\IconSize::Large)); ?>
-
-
-
-
-
- x-show="$store.sidebar.isOpen"
-
- class="fi-sidebar-item-grouped-border"
- >
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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"
-
- class="fi-sidebar-item-label"
- >
-
-
-
-
-
-
- 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"
-
- class="fi-sidebar-item-badge-ctn"
- >
-
-
- 'filament::components.badge','data' => ['color' => $badgeColor,'tooltip' => $badgeTooltip]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::badge'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['color' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($badgeColor),'tooltip' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($badgeTooltip)]); ?>
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/c3da01bbeb1428090c4fa29e17c4a415.php b/storage/framework/views/c3da01bbeb1428090c4fa29e17c4a415.php
deleted file mode 100644
index d7ef536..0000000
--- a/storage/framework/views/c3da01bbeb1428090c4fa29e17c4a415.php
+++ /dev/null
@@ -1,92 +0,0 @@
-
-
- [],
- 'alignment' => Alignment::Start,
- 'fullWidth' => 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(([
- 'actions' => [],
- 'alignment' => Alignment::Start,
- 'fullWidth' => 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); ?>
-
- $action->isVisible(),
- );
- }
-
- if (! $alignment instanceof Alignment) {
- $alignment = filled($alignment) ? (Alignment::tryFrom($alignment) ?? $alignment) : null;
- }
-
- $hasActions = false;
-
- $hasSlot = ! \Filament\Support\is_slot_empty($slot);
- $actionsAreHtmlable = $actions instanceof \Illuminate\Contracts\Support\Htmlable;
-
- if ($hasSlot) {
- $hasActions = true;
- } elseif ($actionsAreHtmlable) {
- $hasActions = ! \Filament\Support\is_slot_empty($actions);
- } else {
- $hasActions = filled($actions);
- }
-?>
-
-
-
class([
- 'fi-ac',
- 'fi-width-full' => $fullWidth,
- ($alignment instanceof Alignment) ? "fi-align-{$alignment->value}" : (is_string($alignment) ? $alignment : null) => ! $fullWidth,
- ])); ?>
-
- >
-
-
-
-
-
-
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $action): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/c6d1a975364ea77cf193b26f4d0c05e1.php b/storage/framework/views/c6d1a975364ea77cf193b26f4d0c05e1.php
deleted file mode 100644
index 137b92c..0000000
--- a/storage/framework/views/c6d1a975364ea77cf193b26f4d0c05e1.php
+++ /dev/null
@@ -1,215 +0,0 @@
-
-
-startSection('title', 'Custom Printed Fabrics'); ?>
-
-startSection('content'); ?>
-
-
-
-
-
Custom Printed Fabrics
-
Extend your favorite wallpaper designs to premium fabrics. From upholstery to curtains, cushions to bedding, create a cohesive interior where your designs flow seamlessly across all textiles.
-
-
-
-
-
-
-
-
Fabric Types & Applications
-
Choose from our range of premium fabrics, each optimized for different applications and uses.
-
-
-
-
-
-
-
Upholstery Fabrics
-
Durable, premium fabrics perfect for furniture upholstery. Available in various weights and finishes. Ideal for sofas, chairs, and ottomans.
-
- Explore Collection
-
-
-
-
-
-
-
-
-
Curtain & Drape Fabrics
-
Elegant draping fabrics in various opacities. Perfect for creating custom curtains, drapes, and window treatments that complement your wallpaper.
-
- Explore Collection
-
-
-
-
-
-
-
-
-
Decorative Textiles
-
Versatile fabrics for cushions, pillows, throws, and home accents. Perfect for adding coordinated touches throughout your space.
-
- Explore Collection
-
-
-
-
-
-
-
-
-
-
-
Featured Fabric Collections
-
Our most popular custom-printed fabric options, available in various widths and finishes.
-
-
-
-
-
-
-
Botanical Garden
-
Nature-inspired floral patterns printed on premium linen blend. Perfect for upholstery and curtains.
-
- From $45/yard
- View
-
-
-
-
-
-
-
-
-
Geometric Modern
-
Contemporary geometric patterns on cotton canvas. Durable and perfect for high-traffic furniture.
-
- From $48/yard
- View
-
-
-
-
-
-
-
-
-
Vintage Elegance
-
Classic ornamental patterns on silk blend fabric. Ideal for luxury upholstery and formal drapery.
-
- From $65/yard
- View
-
-
-
-
-
-
-
-
-
Tropical Vibrancy
-
Bright tropical foliage patterns on cotton velvet. Perfect for statement cushions and accent furniture.
-
- From $52/yard
- View
-
-
-
-
-
-
-
-
-
Minimalist Serenity
-
Subtle minimalist patterns on natural linen. Versatile for any interior design style.
-
- From $42/yard
- View
-
-
-
-
-
-
-
-
-
Luxe Textured
-
High-end jacquard weave fabrics with dimensional textures. Perfect for luxury applications.
-
- From $75/yard
- View
-
-
-
-
-
-
-
-
-
-
-
Fully Customizable
-
-
-
Create Your Own Custom Fabric
-
Love a wallpaper design? We can print it on any of our premium fabric bases. Upload your own design or choose from our wallpaper collections and we'll print it on your fabric of choice.
-
- ✓ Any Wallpaper Design: Choose from our full wallpaper catalog
- ✓ Custom Uploads: Print your own designs or artwork
- ✓ Multiple Base Fabrics: Select from cotton, linen, silk blends, and more
- ✓ Custom Sizing: Order exact yardage you need
- ✓ Sample Swatches: Order fabric samples before committing
-
-
Start Custom Design
-
-
-
-
-
-
-
-
-
-
-
-
Fabric Specifications & Care
-
-
-
-
Standard Widths
-
- • 54" (Standard upholstery)
- • 60" (Premium upholstery)
- • 45" (Quilting & crafts)
- • 118" (Curtain & drape)
-
-
-
-
Care Instructions
-
- • Dry clean or gentle hand wash recommended
- • Use cool water with mild detergent
- • Air dry away from direct heat
- • Professional upholstery cleaning safe
-
-
-
-
-
-
-
-
-
-
-
Ready to Start Your Fabric Project?
-
- Contact our team to discuss your custom fabric needs. We'll provide samples, pricing, and personalized recommendations.
-
-
Request Custom Quote
-
-
-stopSection(); ?>
-
-make('layouts.app', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?>
\ No newline at end of file
diff --git a/storage/framework/views/c6faad983759e39bbadd89a10c0f74b3.php b/storage/framework/views/c6faad983759e39bbadd89a10c0f74b3.php
deleted file mode 100644
index d4a5fd4..0000000
--- a/storage/framework/views/c6faad983759e39bbadd89a10c0f74b3.php
+++ /dev/null
@@ -1,380 +0,0 @@
-
-
-
-
- $fieldWrapperView] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('dynamic-component'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\DynamicComponent::ignoredParameterNames()); ?>
-
-withAttributes(['field' => $field,'label-tag' => 'div']); ?>
-
toHtml() ?>,
- minSize: toHtml() ?>,
- mimeTypeMap: toHtml() ?>,
- maxParallelUploads: toHtml() ?>,
- removeUploadedFileUsing: async (fileKey) => {
- return await $wire.callSchemaComponentMethod(
- toHtml() ?>,
- 'removeUploadedFile',
- { fileKey },
- )
- },
- removeUploadedFileButtonPosition: toHtml() ?>,
- reorderUploadedFilesUsing: async (fileKeys) => {
- return await $wire.callSchemaComponentMethod(
- toHtml() ?>,
- 'reorderUploadedFiles',
- { fileKeys },
- )
- },
- shouldAppendFiles: toHtml() ?>,
- shouldOrientImageFromExif: toHtml() ?>,
- shouldTransformImage: toHtml() ?>,
- state: $wire.,
- uploadButtonPosition: toHtml() ?>,
- uploadingMessage: toHtml() ?>,
- uploadProgressIndicatorPosition: toHtml() ?>,
- uploadUsing: (fileKey, file, success, error, progress) => {
- $wire.upload(
- `.${fileKey}`,
- file,
- () => {
- success(fileKey)
- },
- error,
- (progressEvent) => {
- progress(true, progressEvent.detail.progress, 100)
- },
- )
- },
- })"
- wire:ignore
- wire:key="."
- merge([
- 'aria-labelledby' => "{$id}-label",
- 'id' => $id,
- 'role' => 'group',
- ], escape: false)
- ->merge($getExtraAttributes(), escape: false)
- ->merge($getExtraAlpineAttributes(), escape: false)
- ->class([
- 'fi-fo-file-upload',
- 'fi-fo-file-upload-avatar' => $isAvatar,
- ($alignment instanceof Alignment) ? "fi-align-{$alignment->value}" : $alignment,
- ])); ?>
-
- >
-
- merge([
- 'aria-labelledby' => "{$id}-label",
- 'disabled' => $isDisabled,
- 'multiple' => $isMultiple,
- 'type' => 'file',
- ], escape: false)); ?>
-
- />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- __('filament-forms::components.file_upload.editor.fields.x_position.label'),
- 'ref' => 'xPositionInput',
- 'unit' => __('filament-forms::components.file_upload.editor.fields.x_position.unit'),
- 'alpineSaveHandler' => 'editor.setData({...editor.getData(true), x: +$el.value})',
- ],
- [
- 'label' => __('filament-forms::components.file_upload.editor.fields.y_position.label'),
- 'ref' => 'yPositionInput',
- 'unit' => __('filament-forms::components.file_upload.editor.fields.y_position.unit'),
- 'alpineSaveHandler' => 'editor.setData({...editor.getData(true), y: +$el.value})',
- ],
- [
- 'label' => __('filament-forms::components.file_upload.editor.fields.width.label'),
- 'ref' => 'widthInput',
- 'unit' => __('filament-forms::components.file_upload.editor.fields.width.unit'),
- 'alpineSaveHandler' => 'editor.setData({...editor.getData(true), width: +$el.value})',
- ],
- [
- 'label' => __('filament-forms::components.file_upload.editor.fields.height.label'),
- 'ref' => 'heightInput',
- 'unit' => __('filament-forms::components.file_upload.editor.fields.height.unit'),
- 'alpineSaveHandler' => 'editor.setData({...editor.getData(true), height: +$el.value})',
- ],
- [
- 'label' => __('filament-forms::components.file_upload.editor.fields.rotation.label'),
- 'ref' => 'rotationInput',
- 'unit' => __('filament-forms::components.file_upload.editor.fields.rotation.unit'),
- 'alpineSaveHandler' => 'editor.rotateTo(+$el.value)',
- ],
- ]; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $input): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
-
- 'filament::components.input.wrapper','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament::input.wrapper'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes([]); ?>
- slot('prefix', null, []); ?>
-
-
- endSlot(); ?>
-
-
-
- slot('suffix', null, []); ?>
-
-
- endSlot(); ?>
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $groupedActions): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $action): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
-
-
-
-
-
-
- chunk(5); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $ratiosChunk): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
- addLoop($__currentLoopData); foreach($__currentLoopData as $label => $ratio): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
-
-
-
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
- popLoop(); $loop = $__env->getLastLoop(); ?>
-
-
-
-
-
-
-
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/cb60a36db4e92d8fcf5107fb500e9e22.php b/storage/framework/views/cb60a36db4e92d8fcf5107fb500e9e22.php
deleted file mode 100644
index 3ea5179..0000000
--- a/storage/framework/views/cb60a36db4e92d8fcf5107fb500e9e22.php
+++ /dev/null
@@ -1,225 +0,0 @@
-
-
- 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,
- 'labelSrOnly' => false,
- 'loadingIndicator' => true,
- 'size' => Size::Medium,
- 'spaMode' => null,
- 'tag' => 'a',
- 'target' => null,
- 'tooltip' => null,
- 'type' => 'button',
- 'weight' => 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(([
- '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,
- 'labelSrOnly' => false,
- 'loadingIndicator' => true,
- 'size' => Size::Medium,
- 'spaMode' => null,
- 'tag' => 'a',
- 'target' => null,
- 'tooltip' => null,
- 'type' => 'button',
- 'weight' => 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); ?>
-
- IconSize::Small,
- default => null,
- };
-
- if (! $weight instanceof FontWeight) {
- $weight = filled($weight) ? (FontWeight::tryFrom($weight) ?? $weight) : 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 = filled($tooltip);
-?>
-
-<
-
-
-
-
-
-
- x-bind:id="$id('key-bindings')"
- x-mousetrap.global.map(fn (string $keyBinding): string => str_replace('+', '-', $keyBinding))->implode('.')); ?>="document.getElementById($el.id)?.click()"
-
-
- x-tooltip="{
- content: toHtml() ?>,
- theme: $store.theme,
- allowHTML: toHtml() ?>,
- }"
-
- merge([
- 'aria-disabled' => $disabled ? 'true' : 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,
- ], 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-link',
- 'fi-disabled' => $disabled,
- ($size instanceof Size) ? "fi-size-{$size->value}" : (is_string($size) ? $size : ''),
- ($weight instanceof FontWeight) ? "fi-font-{$weight->value}" : (is_string($weight) ? $weight : ''),
- ])
- ->color(LinkComponent::class, $color)); ?>
-
->
-
-
- $hasLoadingIndicator,
- 'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
- ])), size: $iconSize)); ?>
-
-
-
-
- '',
- 'wire:target' => $loadingIndicatorTarget,
- ])), size: $iconSize)); ?>
-
-
-
-
-
-
-
-
-
-
-
- $hasLoadingIndicator,
- 'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false,
- ])), size: $iconSize)); ?>
-
-
-
-
- '',
- 'wire:target' => $loadingIndicatorTarget,
- ])), size: $iconSize)); ?>
-
-
-
-
-
-
-
-
-
-
- color(BadgeComponent::class, $badgeColor)->class([
- 'fi-badge',
- ($badgeSize instanceof Size) ? "fi-size-{$badgeSize->value}" : (is_string($badgeSize) ? $badgeSize : ''),
- ])); ?>
-
- >
-
-
-
-
-
-
->
\ No newline at end of file
diff --git a/storage/framework/views/cdba3960ec17faacee7b079add6c1ae2.php b/storage/framework/views/cdba3960ec17faacee7b079add6c1ae2.php
deleted file mode 100644
index e6abfcd..0000000
--- a/storage/framework/views/cdba3960ec17faacee7b079add6c1ae2.php
+++ /dev/null
@@ -1,49 +0,0 @@
-merge([
- 'autofocus' => $isAutofocused(),
- 'disabled' => $isDisabled(),
- 'id' => $getId(),
- 'required' => $isRequired() && (! $isConcealed()),
- 'wire:loading.attr' => 'disabled',
- $applyStateBindingModifiers('wire:model') => $statePath,
- ], escape: false)
- ->merge($getExtraAttributes(), escape: false)
- ->merge($getExtraInputAttributes(), escape: false)
- ->class([
- 'fi-checkbox-input',
- 'fi-valid' => ! $errors->has($statePath),
- 'fi-invalid' => $errors->has($statePath),
- ]);
-?>
-
-
-
- $fieldWrapperView] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('dynamic-component'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\DynamicComponent::ignoredParameterNames()); ?>
-
-withAttributes(['field' => $field,'inline-label-vertical-alignment' => \Filament\Support\Enums\VerticalAlignment::Center]); ?>
-
- slot('labelPrefix', null, []); ?>
-
/>
- endSlot(); ?>
-
-
/>
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/d136669968d8cce7e458e5d7777f6a32.php b/storage/framework/views/d136669968d8cce7e458e5d7777f6a32.php
deleted file mode 100644
index 6e2a02b..0000000
--- a/storage/framework/views/d136669968d8cce7e458e5d7777f6a32.php
+++ /dev/null
@@ -1,49 +0,0 @@
-getColumns();
- $pollingInterval = $this->getPollingInterval();
-
- $heading = $this->getHeading();
- $description = $this->getDescription();
- $hasHeading = filled($heading);
- $hasDescription = filled($description);
-?>
-
-
-
- 'filament-widgets::components.widget','data' => ['attributes' =>
- (new \Illuminate\View\ComponentAttributeBag)
- ->merge([
- 'wire:poll.' . $pollingInterval => $pollingInterval ? true : null,
- ], escape: false)
- ->class([
- 'fi-wi-stats-overview',
- ])
- ]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-widgets::widget'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['attributes' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute(
- (new \Illuminate\View\ComponentAttributeBag)
- ->merge([
- 'wire:poll.' . $pollingInterval => $pollingInterval ? true : null,
- ], escape: false)
- ->class([
- 'fi-wi-stats-overview',
- ])
- )]); ?>
- content); ?>
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/d399d1abe65e3f2cc73d217c76f9e0d5.php b/storage/framework/views/d399d1abe65e3f2cc73d217c76f9e0d5.php
index 0db72cf..e03d750 100644
--- a/storage/framework/views/d399d1abe65e3f2cc73d217c76f9e0d5.php
+++ b/storage/framework/views/d399d1abe65e3f2cc73d217c76f9e0d5.php
@@ -6,28 +6,84 @@
Wallpaper
Murals
-
Fabrics
-
Portfolio
+
+
Projects
Contact
-
-
-
-
-
-
- Cart
- 0): ?>
-
+
+
+
+
\ No newline at end of file
diff --git a/storage/framework/views/e54a5d3be34ee3bfef9f87d7de2dda8f.blade.php b/storage/framework/views/e54a5d3be34ee3bfef9f87d7de2dda8f.blade.php
deleted file mode 100644
index 4982b4c..0000000
--- a/storage/framework/views/e54a5d3be34ee3bfef9f87d7de2dda8f.blade.php
+++ /dev/null
@@ -1,6 +0,0 @@
-getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
-@props(['field','inlineLabelVerticalAlignment'])
-gridColumn($this->getColumnSpan(), $this->getColumnStart())->class(['fi-wi-widget'])); ?>
-
->
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/e8622c5fb0c67bd1ec098292efc31e4f.php b/storage/framework/views/e8622c5fb0c67bd1ec098292efc31e4f.php
deleted file mode 100644
index a553879..0000000
--- a/storage/framework/views/e8622c5fb0c67bd1ec098292efc31e4f.php
+++ /dev/null
@@ -1,53 +0,0 @@
-getAttributes()))->mapWithKeys(function ($value, $key) { return [Illuminate\Support\Str::camel(str_replace([':', '.'], ' ', $key)) => $value]; })->all(), EXTR_SKIP); ?>
-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); ?>
-
-
- 'filament-forms::components.field-wrapper','data' => ['field' => $field,'inlineLabelVerticalAlignment' => $inlineLabelVerticalAlignment]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? $attributes->all() : [])); ?>
-withName('filament-forms::field-wrapper'); ?>
-shouldRender()): ?>
-startComponent($component->resolveView(), $component->data()); ?>
-
-except(\Illuminate\View\AnonymousComponent::ignoredParameterNames()); ?>
-
-withAttributes(['field' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($field),'inline-label-vertical-alignment' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($inlineLabelVerticalAlignment)]); ?>
-
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/e8d91e93ead2004545f050787ca085e3.php b/storage/framework/views/e8d91e93ead2004545f050787ca085e3.php
deleted file mode 100644
index 2c737be..0000000
--- a/storage/framework/views/e8d91e93ead2004545f050787ca085e3.php
+++ /dev/null
@@ -1,77 +0,0 @@
- null,
- 'logo' => true,
- '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,
- 'logo' => true,
- '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); ?>
-
-
-
\ No newline at end of file
diff --git a/storage/framework/views/ea5a1ff31204d266f5d19cf6324c898a.php b/storage/framework/views/ea5a1ff31204d266f5d19cf6324c898a.php
deleted file mode 100644
index 26c2b96..0000000
--- a/storage/framework/views/ea5a1ff31204d266f5d19cf6324c898a.php
+++ /dev/null
@@ -1,435 +0,0 @@
- 'tableRecordsPerPage',
- 'extremeLinks' => false,
- 'paginator',
- 'pageOptions' => [],
-]));
-
-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(([
- 'currentPageOptionProperty' => 'tableRecordsPerPage',
- 'extremeLinks' => false,
- 'paginator',
- 'pageOptions' => [],
-]), '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); ?>
-
-
-
-
- getFiltersSchema()); ?>
-
-
- renderComponent(); ?>
-
-
-
-
-
-
-
-
-
-
- endSlot(); ?>
-
-
-