Feat: Adding Translations to Payment and Shipping Methods, removing unecessary shipping method fulfillment type
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Core\Shipping\Contracts;
|
||||
|
||||
/**
|
||||
* Optional contract a shipping rate driver implements to declare whether
|
||||
* it fulfils via carrier delivery or in-store pickup — e.g.
|
||||
* Modules\Core\Shipping\Carriers\Acs\AcsRateDriver and BoxNowRateDriver
|
||||
* are unambiguously carrier-only, so this is a hardcoded fact about the
|
||||
* driver, not something a merchant should have to configure per row.
|
||||
*
|
||||
* table-rate-shipping's own generic drivers (flat-rate, ship-by,
|
||||
* free-shipping) don't implement this — they're genuinely ambiguous (a
|
||||
* merchant could configure one for either carrier delivery or store
|
||||
* pickup), so Modules\Core\Shipping\Support\FulfillmentType::resolve()
|
||||
* falls back to ShippingMethod.data['fulfillment_type'] (still merchant-
|
||||
* overridable) only for drivers that don't implement this contract.
|
||||
*/
|
||||
interface DeclaresFulfillmentType
|
||||
{
|
||||
/**
|
||||
* @return 'carrier'|'store_pickup'
|
||||
*/
|
||||
public function fulfillmentType(): string;
|
||||
}
|
||||
Reference in New Issue
Block a user