i have started to build simple plugin to simplify add products on shofy , but i encounter issue
ypeError
vendor/botble/platform/base/src/Forms/FormAbstract.php:587
Botble\Base\Forms\FormAbstract::createFromModel(): Return value must be of type Botble\Marketplace\Forms\ProductForm, Botble\PilarMarketplace\Forms\ProductForm returned
my code is
<?php
namespace Botble\PilarMarketplace\Forms;
use Botble\Base\Forms\FieldOptions\ContentFieldOption;
use Botble\Base\Forms\FieldOptions\EditorFieldOption;
use Botble\Base\Forms\FieldOptions\MediaImageFieldOption;
use Botble\Base\Forms\FieldOptions\NameFieldOption;
use Botble\Base\Forms\FieldOptions\NumberFieldOption;
use Botble\Base\Forms\FieldOptions\SelectFieldOption;
use Botble\Base\Forms\Fields\MediaImageField;
use Botble\Base\Forms\Fields\MultiCheckListField;
use Botble\Base\Forms\Fields\NumberField;
use Botble\Base\Forms\Fields\SelectField;
use Botble\Base\Forms\Fields\TagField;
use Botble\Base\Forms\Fields\TextField;
use Botble\Base\Forms\Fields\TreeCategoryField;
use Botble\Base\Forms\MetaBox;
use Botble\Ecommerce\Enums\GlobalOptionEnum;
use Botble\Ecommerce\Enums\ProductTypeEnum;
use Botble\Ecommerce\Facades\EcommerceHelper;
use Botble\Ecommerce\Facades\ProductCategoryHelper;
use Botble\Ecommerce\Forms\ProductForm as BaseProductForm;
use Botble\Ecommerce\Models\Brand;
use Botble\Ecommerce\Models\GlobalOption;
use Botble\Ecommerce\Models\Product;
use Botble\Ecommerce\Models\ProductAttributeSet;
use Botble\Ecommerce\Models\ProductCollection;
use Botble\Ecommerce\Models\ProductLabel;
use Botble\Ecommerce\Models\ProductVariation;
use Botble\Ecommerce\Models\SpecificationTable;
use Botble\Ecommerce\Models\Tax;
use Botble\Marketplace\Facades\MarketplaceHelper;
use Botble\Marketplace\Forms\Fields\CustomEditorField;
use Botble\Marketplace\Forms\Fields\CustomImagesField;
use Botble\Marketplace\Http\Requests\ProductRequest;
use Botble\Marketplace\Tables\ProductVariationTable;
use Detection\MobileDetect;
use Throwable;
class ProductForm extends BaseProductForm
{
public function setup(): void
{
try {
$mobileDetect = new MobileDetect();
$isMobile = $mobileDetect->isMobile();
} catch (Throwable) {
$isMobile = false;
}
and provider is
<?php
namespace Botble\PilarMarketplace\Providers;
use Botble\Marketplace\Forms\ProductForm as OriginalProductForm;
use Botble\PilarMarketplace\Forms\ProductForm;
use Illuminate\Support\ServiceProvider;
class PilarMarketplaceServiceProvider extends ServiceProvider
{
public function register() {}
public function boot(): void
{ // Override original ProductForm
$this->app->bind(OriginalProductForm::class, ProductForm::class);
}
}