<?php

namespace Lc\CaracoleBundle\Repository\Setting;

use Lc\CaracoleBundle\Repository\SectionStoreTrait;
use Lc\CaracoleBundle\Repository\AbstractStore;
use Lc\SovBundle\Repository\RepositoryQueryInterface;

class SectionSettingStore extends AbstractStore
{
    use SectionStoreTrait;

    protected SectionSettingRepositoryQuery $query;

    public function __construct(SectionSettingRepositoryQuery $query)
    {
        $this->query = $query;
    }

    public function orderByDefault(RepositoryQueryInterface $query): RepositoryQueryInterface
    {
        $query->orderBy('id');
        return $query;
    }

    public function filtersDefault(RepositoryQueryInterface $query): RepositoryQueryInterface
    {
        $query->filterBySection($this->section);
        return $query;
    }

    public function relationsDefault(RepositoryQueryInterface $query): RepositoryQueryInterface
    {
        return $query;
    }
}