Integrated TranslationBundle with ResourceBundle

This commit is contained in:
Jan Goralski 2016-02-22 13:32:49 +01:00
parent 49bde71271
commit 4416d572c5
35 changed files with 75 additions and 372 deletions

View file

@ -298,9 +298,11 @@ app/console doctrine:phpcr:document:migrate-class "Symfony\Cmf\Bundle\BlockBundl
app/console doctrine:phpcr:document:migrate-class "Symfony\Cmf\Bundle\BlockBundle\Doctrine\Phpcr\StringBlock" "Sylius\Bundle\ContentBundle\Document\StringBlock"
```
### Translation
### Translation and TranslationBundle
* Moved whole component to ``Resource``
* Integrated ``Translation`` component with ``Resource`` component
* Integrated ``TranslationBundle`` with ``ResourceBundle``
* Renamed ``TranslatableResourceRepository`` to ``TranslatableRepository``
## From 0.15.0 to 0.16.x

View file

@ -67,7 +67,6 @@ suites:
TaxationBundle: { namespace: Sylius\Bundle\TaxationBundle, psr4_prefix: Sylius\Bundle\TaxationBundle, spec_path: src/Sylius/Bundle/TaxationBundle, src_path: src/Sylius/Bundle/TaxationBundle }
TaxonomyBundle: { namespace: Sylius\Bundle\TaxonomyBundle, psr4_prefix: Sylius\Bundle\TaxonomyBundle, spec_path: src/Sylius/Bundle/TaxonomyBundle, src_path: src/Sylius/Bundle/TaxonomyBundle }
ThemeBundle: { namespace: Sylius\Bundle\ThemeBundle, psr4_prefix: Sylius\Bundle\ThemeBundle , spec_path: src/Sylius/Bundle/ThemeBundle, src_path: src/Sylius/Bundle/ThemeBundle }
TranslationBundle: { namespace: Sylius\Bundle\TranslationBundle, psr4_prefix: Sylius\Bundle\TranslationBundle, spec_path: src/Sylius/Bundle/TranslationBundle, src_path: src/Sylius/Bundle/TranslationBundle }
UiBundle: { namespace: Sylius\Bundle\UiBundle, psr4_prefix: Sylius\Bundle\UiBundle, spec_path: src/Sylius/Bundle/UiBundle, src_path: src/Sylius/Bundle/UiBundle }
UserBundle: { namespace: Sylius\Bundle\UserBundle, psr4_prefix: Sylius\Bundle\UserBundle, spec_path: src/Sylius/Bundle/UserBundle, src_path: src/Sylius/Bundle/UserBundle }
VariationBundle: { namespace: Sylius\Bundle\VariationBundle, psr4_prefix: Sylius\Bundle\VariationBundle, spec_path: src/Sylius/Bundle/VariationBundle, src_path: src/Sylius/Bundle/VariationBundle }

View file

@ -57,7 +57,6 @@ class SyliusCoreExtension extends AbstractResourceExtension implements PrependEx
'sylius_taxonomy',
'sylius_user',
'sylius_variation',
'sylius_translation',
'sylius_rbac',
];

View file

@ -40,7 +40,6 @@ abstract class Kernel extends BaseKernel
public function registerBundles()
{
$bundles = [
new \Sylius\Bundle\TranslationBundle\SyliusTranslationBundle(),
new \Sylius\Bundle\InstallerBundle\SyliusInstallerBundle(),
new \Sylius\Bundle\OrderBundle\SyliusOrderBundle(),
new \Sylius\Bundle\MoneyBundle\SyliusMoneyBundle(),

View file

@ -284,7 +284,7 @@ sylius_search:
type: terms
value: ~
sylius_translation:
sylius_resource:
default_locale: %sylius.locale%
locale_provider: sylius.translation.locale_provider.contextual

View file

@ -1,6 +1,10 @@
CHANGELOG
=========
### v0.17.0
* Integrated TranslationBundle.
### v0.16.0
* Introduce Factory for all resources.

View file

@ -38,6 +38,7 @@ class Configuration implements ConfigurationInterface
$this->addResourcesSection($rootNode);
$this->addSettingsSection($rootNode);
$this->addTranslationsSection($rootNode);
return $treeBuilder;
}
@ -144,4 +145,18 @@ class Configuration implements ConfigurationInterface
->end()
;
}
/**
* @param ArrayNodeDefinition $node
*/
private function addTranslationsSection(ArrayNodeDefinition $node)
{
$node
->children()
->scalarNode('driver')->defaultValue(SyliusResourceBundle::DRIVER_DOCTRINE_ORM)->end()
->scalarNode('default_locale')->isRequired()->cannotBeEmpty()->end()
->scalarNode('locale_provider')->defaultValue('sylius.translation.locale_provider.request')->end()
->end()
;
}
}

View file

@ -12,9 +12,9 @@
namespace Sylius\Bundle\ResourceBundle\DependencyInjection\Driver;
use Sylius\Component\Resource\Factory\Factory;
use Sylius\Component\Resource\Factory\TranslatableFactoryInterface;
use Sylius\Component\Resource\Metadata\Metadata;
use Sylius\Component\Resource\Metadata\MetadataInterface;
use Sylius\Component\Resource\Factory\TranslatableFactoryInterface;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Definition;
use Symfony\Component\DependencyInjection\Parameter;
@ -116,15 +116,12 @@ abstract class AbstractDriver implements DriverInterface
*/
protected function addFactory(ContainerBuilder $container, MetadataInterface $metadata)
{
$translatableFactoryInterface = TranslatableFactoryInterface::class;
$factoryClass = $metadata->getClass('factory');
$modelClass = $metadata->getClass('model');
$reflection = new \ReflectionClass($factoryClass);
$definition = new Definition($factoryClass);
if (interface_exists($translatableFactoryInterface) && $reflection->implementsInterface($translatableFactoryInterface)) {
if (in_array(TranslatableFactoryInterface::class, class_implements($factoryClass))) {
$decoratedDefinition = new Definition(Factory::class);
$decoratedDefinition->setArguments([$modelClass]);

View file

@ -11,8 +11,8 @@
namespace Sylius\Bundle\ResourceBundle\DependencyInjection\Driver\Doctrine;
use Sylius\Bundle\ResourceBundle\Doctrine\ODM\MongoDB\TranslatableRepository;
use Sylius\Bundle\ResourceBundle\SyliusResourceBundle;
use Sylius\Bundle\TranslationBundle\Doctrine\ODM\MongoDB\TranslatableResourceRepository;
use Sylius\Component\Resource\Metadata\MetadataInterface;
use Sylius\Component\Resource\Model\TranslatableInterface;
use Symfony\Component\DependencyInjection\ContainerBuilder;
@ -41,13 +41,10 @@ class DoctrineODMDriver extends AbstractDoctrineDriver
{
$modelClass = $metadata->getClass('model');
$reflection = new \ReflectionClass($modelClass);
$translatableInterface = TranslatableInterface::class;
$translatable = interface_exists($translatableInterface) && $reflection->implementsInterface($translatableInterface);
$repositoryClass = $translatable
? TranslatableResourceRepository::class
: new Parameter('sylius.mongodb_odm.repository.class');
$repositoryClass = in_array(TranslatableInterface::class, class_implements($modelClass))
? TranslatableRepository::class
: new Parameter('sylius.mongodb.odm.repository.class')
;
if ($metadata->hasClass('repository')) {
$repositoryClass = $metadata->getClass('repository');

View file

@ -13,7 +13,7 @@ namespace Sylius\Bundle\ResourceBundle\DependencyInjection\Driver\Doctrine;
use Sylius\Bundle\ResourceBundle\SyliusResourceBundle;
use Sylius\Component\Resource\Metadata\MetadataInterface;
use Sylius\Component\Resource\Repository\TranslatableResourceRepositoryInterface;
use Sylius\Component\Resource\Repository\TranslatableRepositoryInterface;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Definition;
use Symfony\Component\DependencyInjection\Parameter;
@ -54,10 +54,9 @@ class DoctrinePHPCRDriver extends AbstractDoctrineDriver
$definition->setLazy(!$repositoryReflection->isFinal());
if ($metadata->hasParameter('translation')) {
$translatableRepositoryInterface = TranslatableResourceRepositoryInterface::class;
$translationConfig = $metadata->getParameter('translation');
if (interface_exists($translatableRepositoryInterface) && $repositoryReflection->implementsInterface($translatableRepositoryInterface)) {
if (in_array(TranslatableRepositoryInterface::class, class_implements($repositoryClass))) {
if (isset($translationConfig['fields'])) {
$definition->addMethodCall('setTranslatableFields', [$translationConfig['fields']]);
}

View file

@ -12,7 +12,6 @@
namespace Sylius\Bundle\ResourceBundle\DependencyInjection;
use Sylius\Bundle\ResourceBundle\DependencyInjection\Driver\DriverProvider;
use Sylius\Bundle\TranslationBundle\SyliusTranslationBundle;
use Sylius\Component\Resource\Metadata\Metadata;
use Symfony\Component\Config\Definition\Processor;
use Symfony\Component\Config\FileLocator;
@ -48,6 +47,9 @@ class SyliusResourceExtension extends Extension implements PrependExtensionInter
$loader->load($configFile);
}
$container->setParameter('sylius.translation.default_locale', $config['default_locale']);
$container->setAlias('sylius.translation.locale_provider', $config['locale_provider']);
foreach ($config['resources'] as $alias => $resourceConfig) {
$metadata = Metadata::fromAliasAndConfiguration($alias, $resourceConfig);
@ -57,7 +59,7 @@ class SyliusResourceExtension extends Extension implements PrependExtensionInter
DriverProvider::get($metadata)->load($container, $metadata);
if ($metadata->hasParameter('translation') && class_exists(SyliusTranslationBundle::class)) {
if ($metadata->hasParameter('translation')) {
$alias = $alias.'_translation';
$resourceConfig = array_merge(['driver' => $resourceConfig['driver']], $resourceConfig['translation']);

View file

@ -9,19 +9,18 @@
* file that was distributed with this source code.
*/
namespace Sylius\Bundle\TranslationBundle\Doctrine\ODM\MongoDB;
namespace Sylius\Bundle\ResourceBundle\Doctrine\ODM\MongoDB;
use Doctrine\MongoDB\Query\Builder as QueryBuilder;
use Sylius\Bundle\ResourceBundle\Doctrine\ODM\MongoDB\DocumentRepository;
use Sylius\Component\Resource\Provider\LocaleProviderInterface;
use Sylius\Component\Resource\Repository\TranslatableResourceRepositoryInterface;
use Sylius\Component\Resource\Repository\TranslatableRepositoryInterface;
/**
* Doctrine ORM driver translatable entity repository.
*
* @author Ivannis Suárez Jérez <ivannis.suarez@gmail.com>
*/
class TranslatableResourceRepository extends DocumentRepository implements TranslatableResourceRepositoryInterface
class TranslatableRepository extends DocumentRepository implements TranslatableRepositoryInterface
{
/**
* @var LocaleProviderInterface

View file

@ -9,7 +9,7 @@
* file that was distributed with this source code.
*/
namespace Sylius\Bundle\TranslationBundle\EventListener;
namespace Sylius\Bundle\ResourceBundle\EventListener;
use Sylius\Component\Resource\Metadata\RegistryInterface;
use Sylius\Component\Resource\Provider\LocaleProviderInterface;

View file

@ -9,7 +9,7 @@
* file that was distributed with this source code.
*/
namespace Sylius\Bundle\TranslationBundle\EventListener;
namespace Sylius\Bundle\ResourceBundle\EventListener;
use Doctrine\Common\EventSubscriber;
use Doctrine\ODM\MongoDB\Event\LifecycleEventArgs;

View file

@ -9,7 +9,7 @@
* file that was distributed with this source code.
*/
namespace Sylius\Bundle\TranslationBundle\EventListener;
namespace Sylius\Bundle\ResourceBundle\EventListener;
use Doctrine\Common\EventSubscriber;
use Doctrine\ORM\Event\LifecycleEventArgs;
@ -17,8 +17,8 @@ use Doctrine\ORM\Event\LoadClassMetadataEventArgs;
use Doctrine\ORM\Events;
use Doctrine\ORM\Mapping\ClassMetadata;
use Doctrine\ORM\Mapping\ClassMetadataInfo;
use Sylius\Component\Translation\Model\TranslatableInterface;
use Sylius\Component\Translation\Model\TranslationInterface;
use Sylius\Component\Resource\Model\TranslatableInterface;
use Sylius\Component\Resource\Model\TranslationInterface;
/**
* @author Gonzalo Vilaseca <gvilaseca@reiss.co.uk>

View file

@ -9,7 +9,7 @@
* file that was distributed with this source code.
*/
namespace Sylius\Bundle\TranslationBundle\GedmoHandler;
namespace Sylius\Bundle\ResourceBundle\GedmoHandler;
use Doctrine\Common\Persistence\Mapping\ClassMetadata;
use Doctrine\Common\Persistence\ObjectManager;

View file

@ -9,7 +9,7 @@
* file that was distributed with this source code.
*/
namespace Sylius\Bundle\TranslationBundle\Provider;
namespace Sylius\Bundle\ResourceBundle\Provider;
use Sylius\Component\Resource\Provider\LocaleProviderInterface;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;

View file

@ -37,6 +37,10 @@
<parameter key="sylius.validator.enabled.class">Sylius\Bundle\ResourceBundle\Validator\EnabledValidator</parameter>
<parameter key="sylius.validator.disabled.class">Sylius\Bundle\ResourceBundle\Validator\DisabledValidator</parameter>
<parameter key="sylius.translation.translatable_listener.doctrine.orm.class">Sylius\Bundle\ResourceBundle\EventListener\ORMTranslatableListener</parameter>
<parameter key="sylius.translation.translatable_listener.doctrine.mongodb_odm.class">Sylius\Bundle\ResourceBundle\EventListener\MongoDBODMTranslatableListener</parameter>
<parameter key="sylius.translation.locale_provider.request.class">Sylius\Bundle\ResourceBundle\Provider\RequestLocaleProvider</parameter>
<!-- Sylius State Machine -->
<parameter key="sylius.state_machine.class">Sylius\Component\Resource\StateMachine\StateMachine</parameter>
@ -77,5 +81,21 @@
<service id="sylius.validator.disabled" class="%sylius.validator.disabled.class%">
<tag name="validator.constraint_validator" alias="sylius_resource_disabled_validator" />
</service>
<service id="sylius.translation.translatable_listener.doctrine.orm" class="%sylius.translation.translatable_listener.doctrine.orm.class%">
<argument type="service" id="sylius.resource_registry" />
<argument type="service" id="sylius.translation.locale_provider" />
<tag name="doctrine.event_subscriber" connection="default" priority="99" />
</service>
<service id="sylius.translation.translatable_listener.doctrine.mongodb_odm" class="%sylius.translation.translatable_listener.doctrine.mongodb_odm.class%">
<argument type="service" id="sylius.resource_registry" />
<argument type="service" id="sylius.translation.locale_provider" />
<tag name="doctrine_mongodb.odm.event_subscriber" connection="default" priority="99" />
</service>
<service id="sylius.translation.locale_provider.request" class="%sylius.translation.locale_provider.request.class%">
<argument>%sylius.translation.default_locale%</argument>
<tag name="kernel.event_subscriber" priority="98" />
</service>
</services>
</container>

View file

@ -51,8 +51,9 @@
"phpspec/phpspec": "^2.4",
"phpunit/phpunit": "^4.8",
"sensio/generator-bundle": "^3.0",
"symfony/form": "^2.7",
"symfony/validator": "^2.7",
"sylius/rbac-bundle": "0.18.*",
"sylius/translation-bundle": "0.18.*",
"twig/twig": "~1.11"
},
"suggest": {
@ -60,7 +61,6 @@
"doctrine/orm": "^2.4.8,<2.5",
"doctrine/phpcr-bundle": "~1.1",
"sylius/rbac-bundle": "0.18.*",
"sylius/translation-bundle": "0.18.*"
},
"scripts": {
"post-install-cmd": [

View file

@ -27,7 +27,7 @@
</field>
<field name="permalink" column="permalink" type="string" unique="false">
<gedmo:slug fields="name" unique="false" >
<gedmo:handler class="Sylius\Bundle\TranslationBundle\GedmoHandler\TranslationSlugHandler">
<gedmo:handler class="Sylius\Bundle\ResourceBundle\GedmoHandler\TranslationSlugHandler">
<gedmo:handler-option name="relationField" value="translatable"/>
<gedmo:handler-option name="relationParentRelationField" value="parent"/>
<gedmo:handler-option name="parentFieldMethod" value="getPermalink"/>

View file

@ -1,5 +0,0 @@
vendor/
bin/
composer.phar
composer.lock

View file

@ -1,18 +0,0 @@
language: php
sudo: false
php:
- 7.0
- 5.6
- 5.5
before_install:
- echo "memory_limit=2048M" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini
- phpenv config-rm xdebug.ini || true
install:
- composer install --no-interaction --prefer-source
script:
- bin/phpspec run -fpretty --verbose

View file

@ -1,6 +0,0 @@
CHANGELOG
=========
### v0.13.0
* Initial dev release.

View file

@ -1,41 +0,0 @@
<?php
/*
* This file is part of the Sylius package.
*
* (c) Paweł Jędrzejewski
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Sylius\Bundle\TranslationBundle\DependencyInjection;
use Sylius\Bundle\ResourceBundle\SyliusResourceBundle;
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
use Symfony\Component\Config\Definition\ConfigurationInterface;
/**
* @author Gonzalo Vilaseca <gvilaseca@reiss.co.uk>
*/
class Configuration implements ConfigurationInterface
{
/**
* {@inheritdoc}
*/
public function getConfigTreeBuilder()
{
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('sylius_translation');
$rootNode
->children()
->scalarNode('driver')->defaultValue(SyliusResourceBundle::DRIVER_DOCTRINE_ORM)->end()
->scalarNode('default_locale')->isRequired()->cannotBeEmpty()->end()
->scalarNode('locale_provider')->defaultValue('sylius.translation.locale_provider.request')->end()
->end()
;
return $treeBuilder;
}
}

View file

@ -1,45 +0,0 @@
<?php
/*
* This file is part of the Sylius package.
*
* (c) Paweł Jędrzejewski
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Sylius\Bundle\TranslationBundle\DependencyInjection;
use Sylius\Bundle\ResourceBundle\DependencyInjection\Extension\AbstractResourceExtension;
use Symfony\Component\Config\Definition\Processor;
use Symfony\Component\Config\FileLocator;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
/**
* @author Gonzalo Vilaseca <gvilaseca@reiss.co.uk>
*/
class SyliusTranslationExtension extends AbstractResourceExtension
{
/**
* {@inheritdoc}
*/
public function load(array $config, ContainerBuilder $container)
{
$processor = new Processor();
$config = $processor->processConfiguration(new Configuration(), $config);
$loader = new XmlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
$configFiles = [
'services.xml',
];
foreach ($configFiles as $configFile) {
$loader->load($configFile);
}
$container->setParameter('sylius.translation.default_locale', $config['default_locale']);
$container->setAlias('sylius.translation.locale_provider', $config['locale_provider']);
}
}

View file

@ -1,74 +0,0 @@
SyliusTranslationBundle [![Build status...](https://secure.travis-ci.org/Sylius/SyliusTranslationBundle.png?branch=master)](http://travis-ci.org/Sylius/SyliusTranslationBundle)
=======================
...
Sylius
------
**Sylius** - Modern ecommerce for Symfony2. Visit [Sylius.org](http://sylius.org).
[phpspec](http://phpspec.net) examples
--------------------------------------
```bash
$ composer install
$ bin/phpspec run -fpretty
```
Documentation
-------------
Documentation is available on [**docs.sylius.org**](http://docs.sylius.org/en/latest/bundles/SyliusTranslationBundle/index.html).
Contributing
------------
All informations about contributing to Sylius can be found on [this page](http://docs.sylius.org/en/latest/contributing/index.html).
Mailing lists
-------------
### Users
Questions? Feel free to ask on [users mailing list](http://groups.google.com/group/sylius).
### Developers
To contribute and develop this bundle, use the [developers mailing list](http://groups.google.com/group/sylius-dev).
Sylius twitter account
----------------------
If you want to keep up with updates, [follow the official Sylius account on twitter](http://twitter.com/Sylius).
Bug tracking
------------
This bundle uses [GitHub issues](https://github.com/Sylius/Sylius/issues).
If you have found bug, please create an issue.
Versioning
----------
Releases will be numbered with the format `major.minor.patch`.
And constructed with the following guidelines.
* Breaking backwards compatibility bumps the major.
* New additions without breaking backwards compatibility bumps the minor.
* Bug fixes and misc changes bump the patch.
For more information on SemVer, please visit [semver.org website](http://semver.org/).
This versioning method is same for all **Sylius** bundles and applications.
MIT License
-----------
License can be found [here](https://github.com/Sylius/SyliusTranslationBundle/blob/master/Resources/meta/LICENSE).
Authors
-------
The bundle was originally created by [Paweł Jędrzejewski](http://pjedrzejewski.com).
See the list of [contributors](https://github.com/Sylius/SyliusTranslationBundle/contributors).

View file

@ -1,42 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
This file is part of the Sylius package.
(c) Paweł Jędrzejewski
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
-->
<container xmlns="http://symfony.com/schema/dic/services"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://symfony.com/schema/dic/services
http://symfony.com/schema/dic/services/services-1.0.xsd">
<parameters>
<parameter key="sylius.translation.translatable_listener.doctrine.orm.class">Sylius\Bundle\TranslationBundle\EventListener\ORMTranslatableListener</parameter>
<parameter key="sylius.translation.translatable_listener.doctrine.mongodb_odm.class">Sylius\Bundle\TranslationBundle\EventListener\MongoDBODMTranslatableListener</parameter>
<parameter key="sylius.translation.locale_provider.request.class">Sylius\Bundle\TranslationBundle\Provider\RequestLocaleProvider</parameter>
</parameters>
<services>
<service id="sylius.translation.translatable_listener.doctrine.orm" class="%sylius.translation.translatable_listener.doctrine.orm.class%">
<argument type="service" id="sylius.resource_registry" />
<argument type="service" id="sylius.translation.locale_provider" />
<tag name="doctrine.event_subscriber" connection="default" priority="99" />
</service>
<service id="sylius.translation.translatable_listener.doctrine.mongodb_odm" class="%sylius.translation.translatable_listener.doctrine.mongodb_odm.class%">
<argument type="service" id="sylius.resource_registry" />
<argument type="service" id="sylius.translation.locale_provider" />
<tag name="doctrine_mongodb.odm.event_subscriber" connection="default" priority="99" />
</service>
<service id="sylius.translation.locale_provider.request" class="%sylius.translation.locale_provider.request.class%">
<argument>%sylius.translation.default_locale%</argument>
<tag name="kernel.event_subscriber" priority="98" />
</service>
</services>
</container>

View file

@ -1,37 +0,0 @@
<?php
/*
* This file is part of the Sylius package.
*
* (c) Paweł Jędrzejewski
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Sylius\Bundle\TranslationBundle;
use Sylius\Bundle\ResourceBundle\AbstractResourceBundle;
use Sylius\Bundle\ResourceBundle\SyliusResourceBundle;
class SyliusTranslationBundle extends AbstractResourceBundle
{
/**
* {@inheritdoc}
*/
public static function getSupportedDrivers()
{
return [
SyliusResourceBundle::DRIVER_DOCTRINE_ORM,
SyliusResourceBundle::DRIVER_DOCTRINE_MONGODB_ODM,
];
}
/**
* {@inheritdoc}
*/
protected function getModelNamespace()
{
return 'Sylius\Component\Resource\Model';
}
}

View file

@ -1,52 +0,0 @@
{
"name": "sylius/translation-bundle",
"type": "symfony-bundle",
"description": "Sylius translation bundle",
"keywords": ["translation", "sylius"],
"homepage": "http://sylius.org",
"license": "MIT",
"authors": [
{
"name": "Paweł Jędrzejewski",
"homepage": "http://pjedrzejewski.com"
},
{
"name": "Sylius project",
"homepage": "http://sylius.org"
},
{
"name": "Community contributions",
"homepage": "http://github.com/Sylius/Sylius/contributors"
}
],
"require": {
"php": "^5.5.9|^7.0",
"stof/doctrine-extensions-bundle": "~1.1",
"sylius/translation": "0.18.*",
"sylius/resource-bundle": "0.18.*",
"symfony/framework-bundle": "^2.7.7"
},
"require-dev": {
"phpspec/phpspec": "^2.4",
"akeneo/phpspec-skip-example-extension": "~1.2",
"doctrine/orm": "^2.4.8,<2.5",
"symfony/form": "^2.7",
"symfony/validator": "^2.7"
},
"config": {
"bin-dir": "bin"
},
"autoload": {
"psr-4": { "Sylius\\Bundle\\TranslationBundle\\": "" }
},
"autoload-dev": {
"psr-4": { "Sylius\\Bundle\\TranslationBundle\\spec\\": "spec/" }
},
"minimum-stability": "dev",
"extra": {
"branch-alias": {
"dev-master": "0.18-dev"
}
}
}

View file

@ -1,8 +0,0 @@
suites:
main:
namespace: Sylius\Bundle\TranslationBundle
psr4_prefix: Sylius\Bundle\TranslationBundle
src_path: .
extensions:
- Akeneo\SkipExampleExtension

View file

@ -1,6 +1,10 @@
CHANGELOG
=========
### v0.17.0
* Integrated Translation component
### v0.16.0
* Introduce Factory and FactoryInterface for creating new resources.

View file

@ -12,7 +12,6 @@
namespace Sylius\Component\Resource\Factory;
use Sylius\Component\Resource\Exception\UnexpectedTypeException;
use Sylius\Component\Resource\Factory\FactoryInterface;
use Sylius\Component\Resource\Model\TranslatableInterface;
use Sylius\Component\Resource\Provider\LocaleProviderInterface;

View file

@ -11,8 +11,6 @@
namespace Sylius\Component\Resource\Factory;
use Sylius\Component\Resource\Factory\FactoryInterface;
/**
* Interface for factories creating translatable resources.
*

View file

@ -11,12 +11,10 @@
namespace Sylius\Component\Resource\Repository;
use Sylius\Component\Resource\Repository\RepositoryInterface;
/**
* @author Gonzalo Vilaseca <gvilaseca@reiss.co.uk>
*/
interface TranslatableResourceRepositoryInterface extends RepositoryInterface
interface TranslatableRepositoryInterface extends RepositoryInterface
{
/**
* @param array $translatableFields