38 lines
1.1 KiB
PHP
38 lines
1.1 KiB
PHP
<?php
|
|
/**
|
|
* @package Plumrocket_CookieConsent
|
|
* @copyright Copyright (c) 2020 Plumrocket Inc. (https://plumrocket.com)
|
|
* @license https://plumrocket.com/license End-user License Agreement
|
|
*/
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Plumrocket\CookieConsent\ViewModel;
|
|
|
|
use Plumrocket\CookieConsent\Api\Data\CategoryInterface;
|
|
|
|
/**
|
|
* @since 1.0.0
|
|
*/
|
|
class ExtractCategoryData
|
|
{
|
|
|
|
/**
|
|
* Get data for js usage.
|
|
*
|
|
* @param \Plumrocket\CookieConsent\Api\Data\CategoryInterface $category
|
|
* @return array
|
|
*/
|
|
public function execute(CategoryInterface $category): array
|
|
{
|
|
return [
|
|
CategoryInterface::KEY => $category->getKey(),
|
|
CategoryInterface::IS_ESSENTIAL => $category->isEssential(),
|
|
CategoryInterface::IS_PRE_CHECKED => $category->isPreChecked(),
|
|
CategoryInterface::NAME => $category->getName(),
|
|
CategoryInterface::DESCRIPTION => $category->getDescription(),
|
|
CategoryInterface::SORT_ORDER => $category->getSortOrder(),
|
|
];
|
|
}
|
|
}
|