├── .gitignore ├── Checker ├── ProductVariantsParityChecker.php └── ProductVariantsParityCheckerInterface.php ├── Factory ├── ProductFactory.php ├── ProductFactoryInterface.php ├── ProductVariantFactory.php └── ProductVariantFactoryInterface.php ├── Generator ├── CartesianSetBuilder.php ├── ProductVariantGenerator.php ├── ProductVariantGeneratorInterface.php ├── SlugGenerator.php └── SlugGeneratorInterface.php ├── LICENSE ├── Model ├── Product.php ├── ProductAssociation.php ├── ProductAssociationInterface.php ├── ProductAssociationType.php ├── ProductAssociationTypeInterface.php ├── ProductAssociationTypeTranslation.php ├── ProductAssociationTypeTranslationInterface.php ├── ProductAttribute.php ├── ProductAttributeInterface.php ├── ProductAttributeTranslation.php ├── ProductAttributeTranslationInterface.php ├── ProductAttributeValue.php ├── ProductAttributeValueInterface.php ├── ProductInterface.php ├── ProductOption.php ├── ProductOptionInterface.php ├── ProductOptionTranslation.php ├── ProductOptionTranslationInterface.php ├── ProductOptionValue.php ├── ProductOptionValueInterface.php ├── ProductOptionValueTranslation.php ├── ProductOptionValueTranslationInterface.php ├── ProductTranslation.php ├── ProductTranslationInterface.php ├── ProductVariant.php ├── ProductVariantInterface.php ├── ProductVariantTranslation.php └── ProductVariantTranslationInterface.php ├── README.md ├── Repository ├── ProductAssociationTypeRepositoryInterface.php ├── ProductAttributeValueRepositoryInterface.php ├── ProductOptionRepositoryInterface.php ├── ProductRepositoryInterface.php └── ProductVariantRepositoryInterface.php ├── Resolver ├── AvailableProductOptionValuesResolver.php ├── AvailableProductOptionValuesResolverInterface.php ├── DefaultProductVariantResolver.php └── ProductVariantResolverInterface.php ├── composer.json ├── phpspec.yml.dist └── spec ├── Factory ├── ProductFactorySpec.php └── ProductVariantFactorySpec.php ├── Generator ├── CartesianSetBuilderSpec.php ├── ProductVariantGeneratorSpec.php └── SlugGeneratorSpec.php ├── Model ├── ProductAssociationSpec.php ├── ProductAssociationTypeSpec.php ├── ProductAssociationTypeTranslationSpec.php ├── ProductOptionSpec.php ├── ProductSpec.php ├── ProductTranslationSpec.php ├── ProductVariantSpec.php └── ProductVariantTranslationSpec.php └── Resolver ├── AvailableProductOptionValuesResolverSpec.php └── DefaultProductVariantResolverSpec.php /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/.gitignore -------------------------------------------------------------------------------- /Checker/ProductVariantsParityChecker.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Checker/ProductVariantsParityChecker.php -------------------------------------------------------------------------------- /Checker/ProductVariantsParityCheckerInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Checker/ProductVariantsParityCheckerInterface.php -------------------------------------------------------------------------------- /Factory/ProductFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Factory/ProductFactory.php -------------------------------------------------------------------------------- /Factory/ProductFactoryInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Factory/ProductFactoryInterface.php -------------------------------------------------------------------------------- /Factory/ProductVariantFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Factory/ProductVariantFactory.php -------------------------------------------------------------------------------- /Factory/ProductVariantFactoryInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Factory/ProductVariantFactoryInterface.php -------------------------------------------------------------------------------- /Generator/CartesianSetBuilder.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Generator/CartesianSetBuilder.php -------------------------------------------------------------------------------- /Generator/ProductVariantGenerator.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Generator/ProductVariantGenerator.php -------------------------------------------------------------------------------- /Generator/ProductVariantGeneratorInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Generator/ProductVariantGeneratorInterface.php -------------------------------------------------------------------------------- /Generator/SlugGenerator.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Generator/SlugGenerator.php -------------------------------------------------------------------------------- /Generator/SlugGeneratorInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Generator/SlugGeneratorInterface.php -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/LICENSE -------------------------------------------------------------------------------- /Model/Product.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/Product.php -------------------------------------------------------------------------------- /Model/ProductAssociation.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAssociation.php -------------------------------------------------------------------------------- /Model/ProductAssociationInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAssociationInterface.php -------------------------------------------------------------------------------- /Model/ProductAssociationType.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAssociationType.php -------------------------------------------------------------------------------- /Model/ProductAssociationTypeInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAssociationTypeInterface.php -------------------------------------------------------------------------------- /Model/ProductAssociationTypeTranslation.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAssociationTypeTranslation.php -------------------------------------------------------------------------------- /Model/ProductAssociationTypeTranslationInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAssociationTypeTranslationInterface.php -------------------------------------------------------------------------------- /Model/ProductAttribute.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAttribute.php -------------------------------------------------------------------------------- /Model/ProductAttributeInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAttributeInterface.php -------------------------------------------------------------------------------- /Model/ProductAttributeTranslation.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAttributeTranslation.php -------------------------------------------------------------------------------- /Model/ProductAttributeTranslationInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAttributeTranslationInterface.php -------------------------------------------------------------------------------- /Model/ProductAttributeValue.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAttributeValue.php -------------------------------------------------------------------------------- /Model/ProductAttributeValueInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductAttributeValueInterface.php -------------------------------------------------------------------------------- /Model/ProductInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductInterface.php -------------------------------------------------------------------------------- /Model/ProductOption.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductOption.php -------------------------------------------------------------------------------- /Model/ProductOptionInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductOptionInterface.php -------------------------------------------------------------------------------- /Model/ProductOptionTranslation.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductOptionTranslation.php -------------------------------------------------------------------------------- /Model/ProductOptionTranslationInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductOptionTranslationInterface.php -------------------------------------------------------------------------------- /Model/ProductOptionValue.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductOptionValue.php -------------------------------------------------------------------------------- /Model/ProductOptionValueInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductOptionValueInterface.php -------------------------------------------------------------------------------- /Model/ProductOptionValueTranslation.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductOptionValueTranslation.php -------------------------------------------------------------------------------- /Model/ProductOptionValueTranslationInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductOptionValueTranslationInterface.php -------------------------------------------------------------------------------- /Model/ProductTranslation.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductTranslation.php -------------------------------------------------------------------------------- /Model/ProductTranslationInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductTranslationInterface.php -------------------------------------------------------------------------------- /Model/ProductVariant.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductVariant.php -------------------------------------------------------------------------------- /Model/ProductVariantInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductVariantInterface.php -------------------------------------------------------------------------------- /Model/ProductVariantTranslation.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductVariantTranslation.php -------------------------------------------------------------------------------- /Model/ProductVariantTranslationInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Model/ProductVariantTranslationInterface.php -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/README.md -------------------------------------------------------------------------------- /Repository/ProductAssociationTypeRepositoryInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Repository/ProductAssociationTypeRepositoryInterface.php -------------------------------------------------------------------------------- /Repository/ProductAttributeValueRepositoryInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Repository/ProductAttributeValueRepositoryInterface.php -------------------------------------------------------------------------------- /Repository/ProductOptionRepositoryInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Repository/ProductOptionRepositoryInterface.php -------------------------------------------------------------------------------- /Repository/ProductRepositoryInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Repository/ProductRepositoryInterface.php -------------------------------------------------------------------------------- /Repository/ProductVariantRepositoryInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Repository/ProductVariantRepositoryInterface.php -------------------------------------------------------------------------------- /Resolver/AvailableProductOptionValuesResolver.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Resolver/AvailableProductOptionValuesResolver.php -------------------------------------------------------------------------------- /Resolver/AvailableProductOptionValuesResolverInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Resolver/AvailableProductOptionValuesResolverInterface.php -------------------------------------------------------------------------------- /Resolver/DefaultProductVariantResolver.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Resolver/DefaultProductVariantResolver.php -------------------------------------------------------------------------------- /Resolver/ProductVariantResolverInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/Resolver/ProductVariantResolverInterface.php -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/composer.json -------------------------------------------------------------------------------- /phpspec.yml.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/phpspec.yml.dist -------------------------------------------------------------------------------- /spec/Factory/ProductFactorySpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Factory/ProductFactorySpec.php -------------------------------------------------------------------------------- /spec/Factory/ProductVariantFactorySpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Factory/ProductVariantFactorySpec.php -------------------------------------------------------------------------------- /spec/Generator/CartesianSetBuilderSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Generator/CartesianSetBuilderSpec.php -------------------------------------------------------------------------------- /spec/Generator/ProductVariantGeneratorSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Generator/ProductVariantGeneratorSpec.php -------------------------------------------------------------------------------- /spec/Generator/SlugGeneratorSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Generator/SlugGeneratorSpec.php -------------------------------------------------------------------------------- /spec/Model/ProductAssociationSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Model/ProductAssociationSpec.php -------------------------------------------------------------------------------- /spec/Model/ProductAssociationTypeSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Model/ProductAssociationTypeSpec.php -------------------------------------------------------------------------------- /spec/Model/ProductAssociationTypeTranslationSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Model/ProductAssociationTypeTranslationSpec.php -------------------------------------------------------------------------------- /spec/Model/ProductOptionSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Model/ProductOptionSpec.php -------------------------------------------------------------------------------- /spec/Model/ProductSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Model/ProductSpec.php -------------------------------------------------------------------------------- /spec/Model/ProductTranslationSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Model/ProductTranslationSpec.php -------------------------------------------------------------------------------- /spec/Model/ProductVariantSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Model/ProductVariantSpec.php -------------------------------------------------------------------------------- /spec/Model/ProductVariantTranslationSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Model/ProductVariantTranslationSpec.php -------------------------------------------------------------------------------- /spec/Resolver/AvailableProductOptionValuesResolverSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Resolver/AvailableProductOptionValuesResolverSpec.php -------------------------------------------------------------------------------- /spec/Resolver/DefaultProductVariantResolverSpec.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sylius/Product/HEAD/spec/Resolver/DefaultProductVariantResolverSpec.php --------------------------------------------------------------------------------