@fleetbase/storefront-engine 0.3.17 → 0.3.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/addon/components/customer-panel/orders.hbs +107 -104
  2. package/addon/components/customer-panel/orders.js +52 -45
  3. package/addon/components/modals/incoming-order.hbs +208 -199
  4. package/addon/components/modals/manage-addons.js +6 -2
  5. package/addon/components/modals/order-ready-assign-driver.hbs +1 -1
  6. package/addon/components/order-panel/details.js +0 -2
  7. package/addon/components/order-panel.hbs +314 -1
  8. package/addon/components/order-panel.js +51 -3
  9. package/addon/components/widget/customers.hbs +75 -51
  10. package/addon/components/widget/customers.js +29 -41
  11. package/addon/components/widget/orders.hbs +278 -119
  12. package/addon/components/widget/orders.js +75 -80
  13. package/addon/components/widget/storefront-metrics.hbs +3 -6
  14. package/addon/components/widget/storefront-metrics.js +25 -41
  15. package/addon/controllers/orders/index.js +214 -105
  16. package/addon/controllers/products/index/category/new.js +2 -1
  17. package/addon/controllers/products/index/index.js +0 -23
  18. package/addon/controllers/settings/gateways.js +14 -18
  19. package/addon/helpers/get-tip-amount.js +13 -2
  20. package/addon/models/product-addon-category.js +3 -0
  21. package/addon/routes/application.js +2 -4
  22. package/addon/services/order-actions.js +248 -0
  23. package/addon/services/storefront.js +2 -0
  24. package/addon/styles/storefront-engine.css +55 -0
  25. package/addon/templates/home.hbs +2 -1
  26. package/addon/templates/orders/index/view.hbs +1 -1
  27. package/addon/templates/orders/index.hbs +26 -3
  28. package/addon/templates/products/index/category/new.hbs +4 -1
  29. package/addon/templates/products/index/index.hbs +28 -28
  30. package/addon/templates/settings/gateways.hbs +1 -1
  31. package/addon/templates/settings/index.hbs +2 -2
  32. package/addon/templates/settings.hbs +1 -1
  33. package/app/services/order-actions.js +1 -0
  34. package/composer.json +1 -1
  35. package/extension.json +1 -1
  36. package/package.json +1 -1
  37. package/server/migrations/2023_05_03_025307_create_carts_table.php +1 -1
  38. package/server/migrations/2023_05_03_025307_create_checkouts_table.php +1 -1
  39. package/server/migrations/2023_05_03_025307_create_gateways_table.php +1 -1
  40. package/server/migrations/2023_05_03_025307_create_network_stores_table.php +1 -1
  41. package/server/migrations/2023_05_03_025307_create_networks_table.php +1 -1
  42. package/server/migrations/2023_05_03_025307_create_notification_channels_table.php +1 -1
  43. package/server/migrations/2023_05_03_025307_create_payment_methods_table.php +1 -1
  44. package/server/migrations/2023_05_03_025307_create_product_addon_categories_table.php +1 -1
  45. package/server/migrations/2023_05_03_025307_create_product_addons_table.php +1 -1
  46. package/server/migrations/2023_05_03_025307_create_product_hours_table.php +1 -1
  47. package/server/migrations/2023_05_03_025307_create_product_store_locations_table.php +1 -1
  48. package/server/migrations/2023_05_03_025307_create_product_variant_options_table.php +1 -1
  49. package/server/migrations/2023_05_03_025307_create_product_variants_table.php +1 -1
  50. package/server/migrations/2023_05_03_025307_create_products_table.php +1 -1
  51. package/server/migrations/2023_05_03_025307_create_reviews_table.php +1 -1
  52. package/server/migrations/2023_05_03_025307_create_store_hours_table.php +1 -1
  53. package/server/migrations/2023_05_03_025307_create_store_locations_table.php +1 -1
  54. package/server/migrations/2023_05_03_025307_create_stores_table.php +1 -1
  55. package/server/migrations/2023_05_03_025307_create_votes_table.php +1 -1
  56. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_carts_table.php +1 -1
  57. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_checkouts_table.php +1 -1
  58. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_gateways_table.php +1 -1
  59. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_network_stores_table.php +1 -1
  60. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_networks_table.php +1 -1
  61. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_notification_channels_table.php +1 -1
  62. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_payment_methods_table.php +1 -1
  63. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_product_addon_categories_table.php +1 -1
  64. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_product_addons_table.php +1 -1
  65. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_product_hours_table.php +1 -1
  66. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_product_store_locations_table.php +1 -1
  67. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_product_variant_options_table.php +1 -1
  68. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_product_variants_table.php +1 -1
  69. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_products_table.php +1 -1
  70. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_reviews_table.php +1 -1
  71. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_store_hours_table.php +1 -1
  72. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_store_locations_table.php +1 -1
  73. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_stores_table.php +1 -1
  74. package/server/migrations/2023_05_03_025310_add_foreign_keys_to_votes_table.php +1 -1
  75. package/server/src/Http/Controllers/ActionController.php +2 -1
  76. package/server/src/Http/Controllers/OrderController.php +15 -2
  77. package/server/src/Http/Controllers/ProductController.php +2 -0
  78. package/server/src/Http/Controllers/v1/CheckoutController.php +337 -40
  79. package/server/src/Http/Controllers/v1/CustomerController.php +88 -3
  80. package/server/src/Http/Controllers/v1/ServiceQuoteController.php +5 -5
  81. package/server/src/Http/Controllers/v1/StoreController.php +35 -5
  82. package/server/src/Http/Requests/CreateCustomerRequest.php +4 -0
  83. package/server/src/Http/Requests/CreateStripeSetupIntentRequest.php +31 -0
  84. package/server/src/Http/Requests/CustomerRequest.php +31 -0
  85. package/server/src/Http/Requests/InitializeCheckoutRequest.php +2 -1
  86. package/server/src/Http/Resources/Cart.php +18 -1
  87. package/server/src/Http/Resources/Customer.php +19 -14
  88. package/server/src/Http/Resources/Store.php +5 -1
  89. package/server/src/Models/AddonCategory.php +14 -16
  90. package/server/src/Models/Cart.php +10 -5
  91. package/server/src/Models/Customer.php +2 -2
  92. package/server/src/Models/Gateway.php +9 -4
  93. package/server/src/Models/Product.php +9 -10
  94. package/server/src/Models/ProductAddonCategory.php +2 -0
  95. package/server/src/Models/Store.php +2 -2
  96. package/server/src/Observers/OrderObserver.php +7 -1
  97. package/server/src/Rules/IsValidLocation.php +2 -2
  98. package/server/src/Support/QPay.php +35 -1
  99. package/server/src/Support/Storefront.php +34 -0
  100. package/server/src/Support/StripeUtils.php +38 -0
  101. package/server/src/routes.php +19 -0
  102. package/translations/en-us.yaml +8 -2
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
4
4
  use Illuminate\Database\Schema\Blueprint;
5
5
  use Illuminate\Support\Facades\Schema;
6
6
 
7
- return new class() extends Migration {
7
+ return new class extends Migration {
8
8
  /**
9
9
  * Run the migrations.
10
10
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -6,7 +6,7 @@ use Illuminate\Database\Query\Expression;
6
6
  use Illuminate\Database\Schema\Blueprint;
7
7
  use Illuminate\Support\Facades\Schema;
8
8
 
9
- return new class() extends Migration {
9
+ return new class extends Migration {
10
10
  /**
11
11
  * Run the migrations.
12
12
  *
@@ -87,9 +87,10 @@ class ActionController extends Controller
87
87
  ->where('meta->storefront_id', $store->public_id)
88
88
  ->with(['transaction'])
89
89
  ->whereNotIn('status', ['canceled'])
90
+ ->whereNull('deleted_at')
90
91
  ->get()
91
92
  ->sum(function ($order) {
92
- return $order->transaction->amount;
93
+ return data_get($order, 'meta.total');
93
94
  });
94
95
 
95
96
  return response()->json($metrics);
@@ -5,6 +5,7 @@ namespace Fleetbase\Storefront\Http\Controllers;
5
5
  use Fleetbase\FleetOps\Http\Controllers\Internal\v1\OrderController as FleetbaseOrderController;
6
6
  use Fleetbase\FleetOps\Models\Order;
7
7
  use Fleetbase\Storefront\Notifications\StorefrontOrderPreparing;
8
+ use Fleetbase\Storefront\Support\Storefront;
8
9
  use Illuminate\Http\Request;
9
10
 
10
11
  class OrderController extends FleetbaseOrderController
@@ -38,6 +39,9 @@ class OrderController extends FleetbaseOrderController
38
39
  ], 400);
39
40
  }
40
41
 
42
+ // Patch order config
43
+ Storefront::patchOrderConfig($order);
44
+
41
45
  // update activity to prepating
42
46
  $order->updateStatus('preparing');
43
47
  $order->customer->notify(new StorefrontOrderPreparing($order));
@@ -58,7 +62,7 @@ class OrderController extends FleetbaseOrderController
58
62
  {
59
63
  $adhoc = $request->boolean('adhoc');
60
64
  $driver = $request->input('driver');
61
- /** @var \Fleetbase\Models\Order $order */
65
+ /** @var Order $order */
62
66
  $order = Order::where('uuid', $request->order)->whereNull('deleted_at')->with(['customer'])->first();
63
67
 
64
68
  if (!$order) {
@@ -67,8 +71,11 @@ class OrderController extends FleetbaseOrderController
67
71
  ], 400);
68
72
  }
69
73
 
74
+ // Patch order config
75
+ Storefront::patchOrderConfig($order);
76
+
70
77
  if ($order->isMeta('is_pickup')) {
71
- $order->updateStatus('ready');
78
+ $order->updateStatus('pickup_ready');
72
79
 
73
80
  return response()->json([
74
81
  'status' => 'ok',
@@ -113,6 +120,9 @@ class OrderController extends FleetbaseOrderController
113
120
  ], 400);
114
121
  }
115
122
 
123
+ // Patch order config
124
+ Storefront::patchOrderConfig($order);
125
+
116
126
  // update activity to completed
117
127
  $order->updateStatus('completed');
118
128
 
@@ -138,6 +148,9 @@ class OrderController extends FleetbaseOrderController
138
148
  ], 400);
139
149
  }
140
150
 
151
+ // Patch order config
152
+ Storefront::patchOrderConfig($order);
153
+
141
154
  // update activity to dispatched
142
155
  $order->updateStatus('cancel');
143
156
 
@@ -41,6 +41,8 @@ class ProductController extends StorefrontController
41
41
  $variants = $request->array('product.variants');
42
42
  $files = $request->array('product.files');
43
43
 
44
+ // dd($addonCategories);
45
+
44
46
  // save addon categories
45
47
  $product->setAddonCategories($addonCategories);
46
48