├── .github └── workflows │ └── run-checks-tests.yaml ├── .gitignore ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── assets ├── .eslintignore ├── .eslintrc.json ├── .gitignore ├── babel.config.js ├── js │ ├── admin │ │ ├── bootstrap │ │ │ └── file_input.js │ │ ├── components │ │ │ ├── AdministratorForm.js │ │ │ ├── AdvancedSearch.js │ │ │ ├── AjaxConfirm.js │ │ │ ├── Article.js │ │ │ ├── CKEditorPreview.js │ │ │ ├── CategoryDeleteConfirm.js │ │ │ ├── CategoryTreeForm.js │ │ │ ├── CategoryTreeFormItem.js │ │ │ ├── CategoryTreeSorting.js │ │ │ ├── CategoryWithSeoMixDeleteConfirm.js │ │ │ ├── CharactersCounter.js │ │ │ ├── ColorPicker.js │ │ │ ├── Complaint.js │ │ │ ├── ConfirmDelete.js │ │ │ ├── CounterUp.js │ │ │ ├── DynamicPlaceholder.js │ │ │ ├── EntityUrlsNew.js │ │ │ ├── EntityUrlsRow.js │ │ │ ├── ExecuteRefund.js │ │ │ ├── FileItem.js │ │ │ ├── FileUpload.js │ │ │ ├── FilesPicker.js │ │ │ ├── FixedBar.js │ │ │ ├── FlashMessage.js │ │ │ ├── FormChangeInfo.js │ │ │ ├── FreeTransportAndPayment.js │ │ │ ├── Grid.js │ │ │ ├── GridDragAndDrop.js │ │ │ ├── GridInlineEdit.js │ │ │ ├── GridMassAction.js │ │ │ ├── GridMultipleDragAndDrop.js │ │ │ ├── HreflangSetting.js │ │ │ ├── ImportPriceList.js │ │ │ ├── MailTemplate.js │ │ │ ├── MailWhitelist.js │ │ │ ├── MassAction.js │ │ │ ├── MassActionConfirm.js │ │ │ ├── MultiplePicker.js │ │ │ ├── NumberSlider.js │ │ │ ├── OpeningHoursCollection.js │ │ │ ├── OrderItems.js │ │ │ ├── OrderPreview.js │ │ │ ├── OrderTransportAndPaymentPrefiller.js │ │ │ ├── Parameters.js │ │ │ ├── Payment.js │ │ │ ├── PickerWindow.js │ │ │ ├── PriceListProductPicker.js │ │ │ ├── PriceListProductPickerWindow.js │ │ │ ├── Product.js │ │ │ ├── ProductPicker.js │ │ │ ├── ProductVisibility.js │ │ │ ├── ProductsPickerWindow.js │ │ │ ├── PromoCode.js │ │ │ ├── PromoCodeFlags.js │ │ │ ├── PromoCodeGroup.js │ │ │ ├── PromoCodeLimits.js │ │ │ ├── RoleGroups.js │ │ │ ├── SelectAdminDomains.js │ │ │ ├── SelectToggle.js │ │ │ ├── SideMenu.js │ │ │ ├── SortableValues.js │ │ │ ├── StaticConfirmWindow.js │ │ │ ├── Statistics.js │ │ │ ├── SymfonyToolbarSupport.js │ │ │ ├── ToggleMenu.js │ │ │ ├── TransportPriceWithWeightLimitCollection.js │ │ │ ├── advert.js │ │ │ ├── choiceControl.js │ │ │ ├── fileUploadInit.js │ │ │ ├── fileUploadPreview.js │ │ │ ├── getBottomOffset.js │ │ │ ├── index.js │ │ │ ├── initBootstrapFileInput.js │ │ │ ├── initSelect2.js │ │ │ ├── jquery.dmuploader.js │ │ │ └── productsPicker.js │ │ ├── registerAdmin.js │ │ ├── search │ │ │ └── search.js │ │ ├── utils │ │ │ └── Window.js │ │ └── validation │ │ │ ├── customization │ │ │ ├── ShopsysShopBundleComponentTransformersProductParameterValueToProductParameterValuesLocalizedTransformer.js │ │ │ ├── ShopsysShopBundleComponentTransformersRemoveWhitespacesTransformer.js │ │ │ ├── customizeCollectionBundle.js │ │ │ ├── index.js │ │ │ └── validationInit.js │ │ │ ├── form │ │ │ ├── index.js │ │ │ ├── validation.js │ │ │ ├── validationAdvert.js │ │ │ ├── validationArticle.js │ │ │ ├── validationComplaintItem.js │ │ │ ├── validationCustomer.js │ │ │ ├── validationFreTransportAndPayment.js │ │ │ ├── validationHreflangSetting.js │ │ │ ├── validationMailTemplate.js │ │ │ ├── validationOrder.js │ │ │ ├── validationParameterName.js │ │ │ ├── validationPayment.js │ │ │ ├── validationPriceList.js │ │ │ ├── validationPromoCode.js │ │ │ ├── validationStore.js │ │ │ ├── validationTransportPrices.js │ │ │ └── validationUniqueProductCatnum.js │ │ │ └── readme.txt │ └── common │ │ ├── bootstrap │ │ └── tooltip.js │ │ ├── components │ │ ├── CheckboxToggle.js │ │ ├── ToggleElement.js │ │ ├── copyToClipboard.js │ │ ├── datePicker.js │ │ ├── index.js │ │ ├── tabs.js │ │ └── tooltip.js │ │ ├── plugins │ │ └── jquery.fix.clone.js │ │ ├── utils │ │ ├── Ajax.js │ │ ├── DoubleFormSubmitProtection.js │ │ ├── HybridTabs.js │ │ ├── KeyCodes.js │ │ ├── Register.js │ │ ├── Timeout.js │ │ ├── escapeHtml.js │ │ ├── loaderOverlay.js │ │ ├── number.js │ │ ├── priceFormatter.js │ │ └── register.test.js │ │ └── validation │ │ ├── ConstraintAll.js │ │ ├── ConstraintEmail.js │ │ ├── ConstraintEqualTo.js │ │ ├── ConstraintGreaterThan.js │ │ ├── ConstraintGreaterThanOrEqual.js │ │ ├── ConstraintIdenticalTo.js │ │ ├── ConstraintLessThan.js │ │ ├── ConstraintLessThanOrEqual.js │ │ ├── ConstraintNotBlank.js │ │ ├── ConstraintNotEqualTo.js │ │ ├── ConstraintNotIdenticalTo.js │ │ ├── ConstraintNotNull.js │ │ ├── ConstraintRange.js │ │ ├── ShopsysConstraintContains.js │ │ ├── ShopsysConstraintMoneyRange.js │ │ ├── ShopsysConstraintNotInArray.js │ │ ├── ShopsysConstraintNotNegativeMoneyAmount.js │ │ ├── ShopsysConstraintNotSelectedDomainToShow.js │ │ ├── ShopsysConstraintUniqueCollection.js │ │ ├── ShopsysConstraintUniqueEmail.js │ │ ├── ShopsysConstraintUniqueProductParameters.js │ │ ├── ShopsysFrameworkBundleFormConstraintsEmail.js │ │ ├── customizeBundle.js │ │ ├── customizeFpValidator.js │ │ ├── dateTimeToLocalizedStringTransformer.js │ │ ├── index.js │ │ ├── readme.txt │ │ ├── validationHelpers.js │ │ └── validationListeners.js ├── package.json ├── public │ └── admin │ │ ├── fonts │ │ ├── Roboto400.ttf │ │ ├── Roboto400.woff2 │ │ ├── Roboto500.ttf │ │ └── Roboto500.woff2 │ │ ├── images │ │ ├── bg │ │ │ └── disabled.png │ │ ├── custom_checkbox.png │ │ ├── custom_radio.png │ │ ├── flags │ │ │ ├── cs.png │ │ │ ├── de.png │ │ │ ├── en.png │ │ │ ├── hu.png │ │ │ ├── pl.png │ │ │ └── sk.png │ │ ├── icons │ │ │ ├── level.png │ │ │ └── star.png │ │ ├── logo.svg │ │ └── preloader.gif │ │ └── svg │ │ └── filter.svg └── styles │ └── admin │ ├── components │ ├── box │ │ ├── advanced-search.less │ │ ├── dropdown.less │ │ ├── expand.less │ │ ├── login.less │ │ ├── mass-action.less │ │ ├── overview.less │ │ ├── quick-search.less │ │ ├── reset-password.less │ │ ├── sortable.less │ │ └── upload.less │ ├── form │ │ ├── choice-list.less │ │ ├── choice.less │ │ ├── compulsory.less │ │ ├── disabled.less │ │ ├── edit-block.less │ │ ├── error.less │ │ ├── full.less │ │ ├── group.less │ │ ├── inline-edit.less │ │ ├── line-box.less │ │ ├── line.less │ │ ├── price-heading.less │ │ ├── tree.less │ │ └── type-and-go.less │ ├── in │ │ ├── article.less │ │ ├── breadcrumb.less │ │ ├── ckeditor.less │ │ ├── corner.less │ │ ├── disabled.less │ │ ├── domain.less │ │ ├── drop-place.less │ │ ├── grid-control.less │ │ ├── icon.less │ │ ├── iconic-link.less │ │ ├── image.less │ │ ├── letter.less │ │ ├── message.less │ │ ├── overlay.less │ │ ├── paging.less │ │ ├── product-visibility.less │ │ ├── sort-arrows.less │ │ ├── switch.less │ │ └── tab.less │ ├── list │ │ ├── domain.less │ │ ├── files.less │ │ └── main.less │ ├── table │ │ ├── col.less │ │ ├── form.less │ │ ├── grid.less │ │ ├── main.less │ │ ├── params.less │ │ ├── touch-always.less │ │ └── touch.less │ ├── window │ │ ├── content.less │ │ ├── fixed-bar.less │ │ ├── overlay.less │ │ ├── preview.less │ │ └── window.less │ └── wrap │ │ ├── bar.less │ │ ├── border.less │ │ ├── box.less │ │ └── divider.less │ ├── core │ ├── form │ │ ├── btn.less │ │ ├── custom-inputs.less │ │ ├── inline.less │ │ └── input.less │ ├── mixin │ │ ├── base.less │ │ ├── display.less │ │ ├── drawing.less │ │ ├── font-size.less │ │ ├── grid.less │ │ ├── margin.less │ │ └── padding.less │ ├── reset.less │ ├── typography.less │ └── variables.less │ ├── helpers.less │ ├── helpers │ ├── .gitignore │ ├── base.less │ ├── display.less │ ├── font-size.less │ ├── margin.less │ └── padding.less │ ├── layout │ ├── grid.less │ ├── header │ │ ├── navig.less │ │ ├── position.less │ │ └── top-info.less │ ├── layout.less │ └── panel │ │ ├── anchor-menu.less │ │ ├── panel.less │ │ └── side-menu.less │ ├── libs │ ├── .gitignore │ ├── animation.less │ ├── colorpicker │ │ ├── colorpicker-custom.less │ │ └── colorpicker.less │ ├── datepicker │ │ └── datepicker-custom.less │ ├── magnific │ │ ├── magnific-popup-custom.less │ │ └── magnific-popup.less │ ├── number-slider │ │ └── number-slider-custom.less │ ├── select2 │ │ ├── select2-custom.less │ │ └── select2.less │ └── tooltip │ │ ├── tooltip-custom.less │ │ └── tooltip.less │ ├── main.less │ ├── svg-custom.less │ ├── todo.less │ └── wysiwyg-localized.less ├── build.xml ├── composer.json ├── phpstan.neon ├── phpunit.xml ├── postcss.config.js ├── src ├── Command │ ├── AdminLocalesInfoCommand.php │ ├── ChangeAdminPasswordCommand.php │ ├── ChangeEnvironmentCommand.php │ ├── CheckAccessControlRulesCommand.php │ ├── CheckMigrateUploadedFilesCommand.php │ ├── CheckRedisCommand.php │ ├── CheckTimezonesCommand.php │ ├── CleanOpcacheCommand.php │ ├── ConfigureDomainsUrlsCommand.php │ ├── CreateApplicationDirectoriesCommand.php │ ├── CreateDatabaseCommand.php │ ├── CreateDatabaseSchemaCommand.php │ ├── CreateDomainsDataCommand.php │ ├── CreateDomainsDbFunctionsCommand.php │ ├── CronCommand.php │ ├── CronLockCommand.php │ ├── CronWatchCommand.php │ ├── DatabaseDumpCommand.php │ ├── DispatchRecalculationMessageCommand.php │ ├── DomainInfoCommand.php │ ├── DropDatabaseSchemaCommand.php │ ├── ElFinderInstallerCommand.php │ ├── Elasticsearch │ │ ├── AbstractElasticsearchIndexCommand.php │ │ ├── ElasticsearchChangedDataExportCommand.php │ │ ├── ElasticsearchDataExportCommand.php │ │ ├── ElasticsearchIndexesDeleteCommand.php │ │ └── ElasticsearchIndexesMigrateCommand.php │ ├── EntitiesDumpCommand.php │ ├── Exception │ │ ├── CronCommandException.php │ │ ├── CronIsLockedException.php │ │ ├── DifferentTimezonesException.php │ │ ├── MissingLocaleAggregateException.php │ │ ├── MissingLocaleException.php │ │ └── TranslationReplaceSourceCommandException.php │ ├── ExtendedClassesAnnotationsCommand.php │ ├── GenerateFriendlyUrlCommand.php │ ├── ImportDefaultDatabaseSchemaCommand.php │ ├── ListExportScopesCommand.php │ ├── LoadPluginDataFixturesCommand.php │ ├── MaintenanceModeCommand.php │ ├── MigrateUploadedFilesCommand.php │ ├── PhingConfigFixerCommand.php │ ├── RecalculateCategoryTreeCommand.php │ ├── RecalculationsCommand.php │ ├── RedisCleanCacheCommand.php │ ├── RedisCleanCacheOldCommand.php │ ├── ReplaceDomainsUrlsCommand.php │ ├── ReplaceObsoleteIconsCommand.php │ ├── RouterDebugCommandForDomain.php │ ├── RouterMatchCommandForDomain.php │ ├── ScheduleFeedsCommand.php │ ├── TranslationReplaceSourceCommand.php │ └── YamlLintCommand.php ├── Component │ ├── AbstractUploadedFile │ │ ├── AbstractUploadedFile.php │ │ ├── AbstractUploadedFileData.php │ │ ├── AbstractUploadedFileFacade.php │ │ ├── AbstractUploadedFileLocator.php │ │ ├── UploadedFileInterface.php │ │ ├── UploadedFileLocatorInterface.php │ │ └── UploadedFileRepositoryInterface.php │ ├── AddSentryContextSubscriber.php │ ├── ArrayUtils │ │ ├── ArrayHelper.php │ │ └── ArraySorterHelper.php │ ├── AttributeRouteControllerLoader.php │ ├── Breadcrumb │ │ ├── BreadcrumbFacade.php │ │ ├── BreadcrumbGeneratorInterface.php │ │ ├── BreadcrumbItem.php │ │ ├── BreadcrumbResolver.php │ │ ├── DomainBreadcrumbGeneratorInterface.php │ │ └── Exception │ │ │ ├── BreadcrumbGeneratorNotFoundException.php │ │ │ └── UnableToGenerateBreadcrumbItemsException.php │ ├── Bytes │ │ └── BytesHelper.php │ ├── CKEditor │ │ └── CKEditorRendererDecorator.php │ ├── Cache │ │ ├── Exception │ │ │ ├── InMemoryCacheException.php │ │ │ ├── NamespaceCacheKeyNotFoundException.php │ │ │ └── ValueCacheKeyNotFoundException.php │ │ ├── InMemoryCache.php │ │ └── InMemoryCacheResetListener.php │ ├── Cdn │ │ └── CdnFacade.php │ ├── ClassExtension │ │ ├── AnnotationsAdder.php │ │ ├── AnnotationsReplacementsMap.php │ │ ├── AnnotationsReplacer.php │ │ ├── ClassExtensionRegistry.php │ │ ├── DocBlockParser.php │ │ ├── Exception │ │ │ ├── DocBlockParserAmbiguousTagException.php │ │ │ └── DocBlockParserException.php │ │ ├── FileContentsReplacer.php │ │ ├── MethodAnnotationsFactory.php │ │ ├── PropertyAnnotationsFactory.php │ │ └── TypehintHelper.php │ ├── Collector │ │ └── ShopsysFrameworkDataCollector.php │ ├── ConfirmDelete │ │ ├── ConfirmDeleteResponseFactory.php │ │ └── Exception │ │ │ └── InvalidEntityPassedException.php │ ├── Console │ │ ├── DomainChoiceHandler.php │ │ ├── Exception │ │ │ └── NoDomainSetException.php │ │ └── ProgressBarFactory.php │ ├── Cron │ │ ├── Config │ │ │ ├── CronConfig.php │ │ │ ├── CronModuleConfig.php │ │ │ └── Exception │ │ │ │ ├── CronModuleConfigNotFoundException.php │ │ │ │ └── InvalidTimeFormatException.php │ │ ├── CronFacade.php │ │ ├── CronFilter.php │ │ ├── CronModule.php │ │ ├── CronModuleExecutor.php │ │ ├── CronModuleFacade.php │ │ ├── CronModuleFactory.php │ │ ├── CronModuleRepository.php │ │ ├── CronModuleRun.php │ │ ├── CronModuleRunFactory.php │ │ ├── CronTimeInterface.php │ │ ├── CronTimeResolver.php │ │ ├── DeleteOldCronModuleRunsCronModule.php │ │ ├── Exception │ │ │ └── InvalidCronModuleException.php │ │ └── MutexFactory.php │ ├── CurrencyFormatter │ │ └── CurrencyFormatterFactory.php │ ├── CustomerUploadedFile │ │ ├── Config │ │ │ ├── CustomerUploadedFileConfig.php │ │ │ └── CustomerUploadedFileConfigLoader.php │ │ ├── CustomerUploadedFile.php │ │ ├── CustomerUploadedFileData.php │ │ ├── CustomerUploadedFileDataFactory.php │ │ ├── CustomerUploadedFileDeleteDoctrineListener.php │ │ ├── CustomerUploadedFileFacade.php │ │ ├── CustomerUploadedFileFactory.php │ │ ├── CustomerUploadedFileLocator.php │ │ ├── CustomerUploadedFileRepository.php │ │ ├── DirectoryStructureCreator.php │ │ └── Exception │ │ │ ├── CustomerFileException.php │ │ │ └── CustomerFileNotFoundException.php │ ├── DataFixture │ │ ├── AbstractReferenceFixture.php │ │ ├── DomainsForDataFixtureProvider.php │ │ ├── Exception │ │ │ ├── EntityIdIsNotSetException.php │ │ │ ├── EntityNotFoundException.php │ │ │ ├── MethodGetIdDoesNotExistException.php │ │ │ ├── ObjectRequiredException.php │ │ │ ├── PersistentReferenceNotFoundException.php │ │ │ ├── UnknownNameTranslationForOrderStatusReferenceNameException.php │ │ │ └── UnsupportedLocaleException.php │ │ ├── PersistentReference.php │ │ ├── PersistentReferenceFacade.php │ │ ├── PersistentReferenceFactory.php │ │ └── PersistentReferenceRepository.php │ ├── DateTimeHelper │ │ ├── DateTimeHelper.php │ │ └── Exception │ │ │ └── CannotParseDateTimeException.php │ ├── Deprecations │ │ └── DeprecationHelper.php │ ├── Doctrine │ │ ├── Attribute │ │ │ └── RemoveColumn.php │ │ ├── CollateFunction.php │ │ ├── DatabaseConnectionCredentialsProvider.php │ │ ├── DatabaseSchemaFacade.php │ │ ├── DistanceFunction.php │ │ ├── Exception │ │ │ ├── DefaultSchemaImportException.php │ │ │ ├── DuplicatedAliasException.php │ │ │ ├── InvalidCountOfAliasesException.php │ │ │ ├── SqlLoggerAlreadyDisabledException.php │ │ │ ├── SqlLoggerAlreadyEnabledException.php │ │ │ └── UnexpectedTypeException.php │ │ ├── FieldFunction.php │ │ ├── GroupedScalarHydrator.php │ │ ├── MoneyType.php │ │ ├── NormalizedFunction.php │ │ ├── NotNullableColumnsFinder.php │ │ ├── OrderByCollationHelper.php │ │ ├── QueryBuilderExtender.php │ │ ├── RemoveEntityColumnSubscriber.php │ │ ├── SortableNullsWalker.php │ │ ├── SqlLoggerFacade.php │ │ ├── SqlParametersFlattener.php │ │ ├── SqlQuoter.php │ │ └── StringColumnsFinder.php │ ├── Domain │ │ ├── AdminDomainFilterTabsFacade.php │ │ ├── AdminDomainTabsFacade.php │ │ ├── Config │ │ │ ├── DomainConfig.php │ │ │ ├── DomainsConfigDefinition.php │ │ │ ├── DomainsConfigLoader.php │ │ │ ├── DomainsUrlsConfigDefinition.php │ │ │ └── Exception │ │ │ │ └── DomainConfigsDoNotMatchException.php │ │ ├── Domain.php │ │ ├── DomainAwareSecurityHeadersSetter.php │ │ ├── DomainDataCreator.php │ │ ├── DomainDbFunctionsFacade.php │ │ ├── DomainFacade.php │ │ ├── DomainFactory.php │ │ ├── DomainFactoryOverwritingDomainUrl.php │ │ ├── DomainIconProcessor.php │ │ ├── DomainSubscriber.php │ │ ├── DomainUrlReplacer.php │ │ ├── Exception │ │ │ ├── InvalidDomainIdException.php │ │ │ ├── NoDomainSelectedException.php │ │ │ └── UnableToResolveDomainException.php │ │ └── Multidomain │ │ │ ├── DefaultMultidomainEntityClassProvider.php │ │ │ ├── MultidomainEntityClassFinder.php │ │ │ ├── MultidomainEntityClassFinderFacade.php │ │ │ ├── MultidomainEntityClassProviderInterface.php │ │ │ └── MultidomainEntityDataCreator.php │ ├── Elasticsearch │ │ ├── AbstractElasticsearchDataFetcher.php │ │ ├── AbstractExportChangedCronModule.php │ │ ├── AbstractExportCronModule.php │ │ ├── AbstractExportScheduler.php │ │ ├── AbstractExportSubscriber.php │ │ ├── AbstractFilterQuery.php │ │ ├── AbstractIndex.php │ │ ├── Debug │ │ │ ├── ElasticsearchCollector.php │ │ │ ├── ElasticsearchRequestCollection.php │ │ │ ├── ElasticsearchTracer.php │ │ │ └── Exception │ │ │ │ └── NotSupportedException.php │ │ ├── ElasticsearchClientFactory.php │ │ ├── Exception │ │ │ ├── ElasticsearchAliasNotFoundException.php │ │ │ ├── ElasticsearchBulkUpdateException.php │ │ │ ├── ElasticsearchCannotReadDefinitionFileException.php │ │ │ ├── ElasticsearchCreateAliasException.php │ │ │ ├── ElasticsearchCreateIndexException.php │ │ │ ├── ElasticsearchDeleteIndexException.php │ │ │ ├── ElasticsearchIndexAliasAlreadyExistsException.php │ │ │ ├── ElasticsearchIndexAliasNotFoundException.php │ │ │ ├── ElasticsearchIndexNotFoundException.php │ │ │ ├── ElasticsearchInvalidJsonInDefinitionFileException.php │ │ │ ├── ElasticsearchMoreThanOneIndexFoundForAliasException.php │ │ │ ├── ElasticsearchNoResultException.php │ │ │ └── UnsupportedFeatureException.php │ │ ├── IndexDefinition.php │ │ ├── IndexDefinitionLoader.php │ │ ├── IndexDefinitionModifier.php │ │ ├── IndexExportedEvent.php │ │ ├── IndexFacade.php │ │ ├── IndexRegistry.php │ │ ├── IndexRepository.php │ │ └── IndexSupportChangesOnlyInterface.php │ ├── EntityExtension │ │ ├── EntityExtensionParentMetadataCleanerEventSubscriber.php │ │ ├── EntityExtensionSubscriber.php │ │ ├── EntityManagerDecorator.php │ │ ├── EntityNameResolver.php │ │ └── QueryBuilder.php │ ├── EntityLog │ │ ├── Attribute │ │ │ ├── EntityLogIdentify.php │ │ │ ├── ExcludeLog.php │ │ │ ├── Log.php │ │ │ ├── Loggable.php │ │ │ ├── LoggableChild.php │ │ │ ├── LoggableEntityConfig.php │ │ │ ├── LoggableEntityConfigCacheFacade.php │ │ │ ├── LoggableEntityConfigFactory.php │ │ │ └── LoggableParentProperty.php │ │ ├── ChangeSet │ │ │ ├── ChangeSetResolver.php │ │ │ ├── CollectionChanges.php │ │ │ ├── DataTypeResolver │ │ │ │ ├── AbstractDataTypeResolver.php │ │ │ │ ├── DataTypeResolverInterface.php │ │ │ │ ├── DateTimeDataTypeResolver.php │ │ │ │ ├── ManyToOneRelatedEntityDataTypeResolver.php │ │ │ │ ├── MoneyDataTypeResolver.php │ │ │ │ └── ScalarDataTypeResolver.php │ │ │ ├── Formatter │ │ │ │ ├── BooleanDataTypeFormatter.php │ │ │ │ ├── CollectionChangesFormatter.php │ │ │ │ ├── DateTimeDataTypeFormatter.php │ │ │ │ ├── MoneyDataTypeFormatter.php │ │ │ │ ├── ResolvedChangesFormatter.php │ │ │ │ └── ScalarDataTypeFormatter.php │ │ │ └── ResolvedChanges.php │ │ ├── Detection │ │ │ └── DetectionFacade.php │ │ ├── Enum │ │ │ ├── EntityLogActionEnum.php │ │ │ └── EntityLogSourceEnum.php │ │ ├── EventListener │ │ │ └── EntityLogEventListener.php │ │ ├── Exception │ │ │ ├── EntityLogException.php │ │ │ └── NotLoggableException.php │ │ └── Model │ │ │ ├── EntityLog.php │ │ │ ├── EntityLogData.php │ │ │ ├── EntityLogDataFactory.php │ │ │ ├── EntityLogFacade.php │ │ │ ├── EntityLogFactory.php │ │ │ ├── EntityLogRepository.php │ │ │ ├── EntityNameData.php │ │ │ └── Grid │ │ │ └── EntityLogGridFactory.php │ ├── Enum │ │ ├── AbstractEnum.php │ │ └── InvalidEnumCaseException.php │ ├── Environment │ │ ├── EnvironmentFileSetting.php │ │ └── EnvironmentType.php │ ├── Error │ │ ├── BlueScreenErrorRenderer.php │ │ ├── ErrorIdLogProcessor.php │ │ ├── ErrorIdProvider.php │ │ └── ExceptionListener.php │ ├── FileUpload │ │ ├── DeleteOldUploadedFilesCronModule.php │ │ ├── DoctrineListener.php │ │ ├── EntityFileUploadInterface.php │ │ ├── Exception │ │ │ ├── InvalidFileKeyException.php │ │ │ ├── MissingFileClassDirectoryMappingException.php │ │ │ ├── MoveToEntityFailedException.php │ │ │ ├── MoveToFolderFailedException.php │ │ │ ├── UnresolvedNamingConventionException.php │ │ │ └── UploadFailedException.php │ │ ├── FileForUpload.php │ │ ├── FileNamingConvention.php │ │ ├── FileUpload.php │ │ ├── ImageUploadData.php │ │ └── ImageUploadDataFactory.php │ ├── Filesystem │ │ ├── Exception │ │ │ └── DirectoryDoesNotExistException.php │ │ ├── FilepathComparator.php │ │ ├── FilesystemFactoryInterface.php │ │ ├── Flysystem │ │ │ └── VolumeDriver.php │ │ ├── LocalFilesystemFactory.php │ │ └── MainFilesystemFactory.php │ ├── FlashMessage │ │ ├── ErrorExtractor.php │ │ ├── FlashMessage.php │ │ └── FlashMessageTrait.php │ ├── Form │ │ ├── Exception │ │ │ └── InvertedChoiceNotMultipleException.php │ │ ├── FormBuilderHelper.php │ │ ├── FormTimeProvider.php │ │ ├── MultipleFormSetting.php │ │ ├── ResizeFormListener.php │ │ ├── TimedFormTypeExtension.php │ │ └── TimedSpamValidationListener.php │ ├── GrapesJs │ │ ├── EnsureCorrectGrapesJsFormatHelper.php │ │ └── GrapesJsParser.php │ ├── Grid │ │ ├── ActionColumn.php │ │ ├── ArrayDataSource.php │ │ ├── ArrayWithPaginationDataSource.php │ │ ├── CleanStorefrontCacheOnSaveOrderingListener.php │ │ ├── Column.php │ │ ├── DataSourceInterface.php │ │ ├── DispatchAffectedEntityOnSaveOrderingListener.php │ │ ├── Exception │ │ │ ├── DuplicateColumnIdException.php │ │ │ ├── EmptyGridIdException.php │ │ │ ├── GridEditRoleNotSetException.php │ │ │ ├── OrderingNotSupportedException.php │ │ │ ├── PaginationNotSupportedException.php │ │ │ └── RowNotFoundInGridByIdException.php │ │ ├── Grid.php │ │ ├── GridFactory.php │ │ ├── GridFactoryInterface.php │ │ ├── GridRowActionInterface.php │ │ ├── GridView.php │ │ ├── InlineEdit │ │ │ ├── AbstractGridInlineEdit.php │ │ │ ├── Exception │ │ │ │ ├── InvalidFormDataException.php │ │ │ │ └── InvalidServiceException.php │ │ │ ├── GridInlineEditInterface.php │ │ │ ├── GridInlineEditRegistry.php │ │ │ └── InlineEditFacade.php │ │ ├── MoneyConvertingDataSourceDecorator.php │ │ ├── Ordering │ │ │ ├── Exception │ │ │ │ └── EntityIsNotOrderableException.php │ │ │ ├── GridOrderingFacade.php │ │ │ └── OrderableEntityInterface.php │ │ ├── QueryBuilderDataSource.php │ │ └── QueryBuilderWithRowManipulatorDataSource.php │ ├── HttpFoundation │ │ ├── CsvResponse.php │ │ ├── DenyScriptNameInRequestPathListener.php │ │ ├── DownloadFileResponse.php │ │ ├── Exception │ │ │ ├── NoRequestException.php │ │ │ └── TooManyRedirectResponsesException.php │ │ ├── FragmentHandler.php │ │ ├── ResponseListener.php │ │ ├── SubRequestListener.php │ │ ├── TransactionalMasterRequestConditionProvider.php │ │ ├── TransactionalMasterRequestConditionProviderInterface.php │ │ ├── TransactionalMasterRequestListener.php │ │ ├── VaryResponseByXRequestedWithHeaderListener.php │ │ └── XmlResponse.php │ ├── HttpKernel │ │ └── Profiler │ │ │ └── FileProfilerStorage.php │ ├── Image │ │ ├── Config │ │ │ ├── Exception │ │ │ │ ├── DuplicateEntityNameExceptionInvalid.php │ │ │ │ ├── DuplicateTypeNameExceptionInvalid.php │ │ │ │ ├── EntityParseException.php │ │ │ │ ├── ImageEntityConfigNotFoundException.php │ │ │ │ ├── ImageTypeNotFoundException.php │ │ │ │ └── InvalidImageConfigException.php │ │ │ ├── ImageConfig.php │ │ │ ├── ImageConfigDefinition.php │ │ │ ├── ImageConfigLoader.php │ │ │ └── ImageEntityConfig.php │ │ ├── DirectoryStructureCreator.php │ │ ├── Exception │ │ │ ├── EntityIdentifierException.php │ │ │ ├── EntityMultipleImageException.php │ │ │ └── ImageNotFoundException.php │ │ ├── Image.php │ │ ├── ImageDeleteDoctrineListener.php │ │ ├── ImageFacade.php │ │ ├── ImageFactory.php │ │ ├── ImageLocator.php │ │ ├── ImageRepository.php │ │ ├── ImageTranslation.php │ │ ├── ImageUrlWithSizeHelper.php │ │ └── Processing │ │ │ ├── Exception │ │ │ └── FileIsNotSupportedImageException.php │ │ │ └── ImageProcessor.php │ ├── Locale │ │ └── LocaleHelper.php │ ├── Localization │ │ ├── CustomDateTimeFormatPatternRepositoryFactory.php │ │ ├── DateTimeFormatPattern.php │ │ ├── DateTimeFormatPatternRepository.php │ │ ├── DateTimeFormatter.php │ │ ├── DateTimeFormatterInterface.php │ │ ├── DisplayTimeZoneProvider.php │ │ └── DisplayTimeZoneProviderInterface.php │ ├── Mailer │ │ └── MailerHelper.php │ ├── Maintenance │ │ ├── MaintenanceModeFacade.php │ │ └── MaintenanceModeSubscriber.php │ ├── Messenger │ │ ├── AbstractMessageDispatcher.php │ │ ├── CloseIdleConnectionSubscriber.php │ │ ├── DelayedEnvelope │ │ │ ├── DelayEnvelopeMiddleware.php │ │ │ ├── DelayedEnvelopeStamp.php │ │ │ ├── DelayedEnvelopesCollector.php │ │ │ └── DispatchCollectedEnvelopesSubscriber.php │ │ ├── MessageBusDecorator.php │ │ ├── MessageDispatcherDependency.php │ │ └── ResetWorkerOnClosedEntityManagerSubscriber.php │ ├── Microservice │ │ └── MicroserviceClient.php │ ├── Money │ │ ├── Exception │ │ │ ├── InvalidNumericArgumentException.php │ │ │ ├── MoneyException.php │ │ │ └── UnsupportedTypeException.php │ │ ├── HiddenMoney.php │ │ └── Money.php │ ├── Packetery │ │ ├── Packet │ │ │ └── PacketAttributes.php │ │ ├── PacketeryClient.php │ │ ├── PacketeryConfig.php │ │ ├── PacketeryCronModule.php │ │ └── PacketeryRenderer.php │ ├── Paginator │ │ ├── PaginationResult.php │ │ ├── PaginatorInterface.php │ │ └── QueryPaginator.php │ ├── Phing │ │ └── PhingDownloader.php │ ├── Plugin │ │ ├── Exception │ │ │ ├── PluginCrudExtensionAlreadyRegisteredException.php │ │ │ └── UnknownPluginCrudExtensionTypeException.php │ │ ├── PluginCrudExtensionFacade.php │ │ ├── PluginCrudExtensionRegistry.php │ │ ├── PluginDataFixtureFacade.php │ │ └── PluginDataFixtureRegistry.php │ ├── Redis │ │ ├── CleanStorefrontCacheFacade.php │ │ ├── Exception │ │ │ └── RedisMultiModeNotSupportedException.php │ │ ├── RedisClientFacade.php │ │ ├── RedisDomainQueueFacade.php │ │ ├── RedisFacade.php │ │ └── RedisVersionsFacade.php │ ├── Reflection │ │ └── ReflectionHelper.php │ ├── Router │ │ ├── CurrentDomainRouter.php │ │ ├── DomainRouter.php │ │ ├── DomainRouterFactory.php │ │ ├── Exception │ │ │ ├── LocalizedRoutingConfigFileNotFoundException.php │ │ │ ├── NotSupportedException.php │ │ │ └── RouterNotResolvedException.php │ │ ├── FriendlyUrl │ │ │ ├── Exception │ │ │ │ ├── FriendlyUrlIsNotMultidomainException.php │ │ │ │ ├── FriendlyUrlNotFoundException.php │ │ │ │ ├── FriendlyUrlRouteNotFoundException.php │ │ │ │ ├── FriendlyUrlRouteNotSupportedException.php │ │ │ │ ├── MethodGenerateIsNotSupportedException.php │ │ │ │ └── ReachMaxUrlUniqueResolveAttemptException.php │ │ │ ├── FriendlyUrl.php │ │ │ ├── FriendlyUrlCacheKeyProvider.php │ │ │ ├── FriendlyUrlData.php │ │ │ ├── FriendlyUrlDataFactory.php │ │ │ ├── FriendlyUrlDataProviderInterface.php │ │ │ ├── FriendlyUrlDataProviderRegistry.php │ │ │ ├── FriendlyUrlFacade.php │ │ │ ├── FriendlyUrlFactory.php │ │ │ ├── FriendlyUrlGenerator.php │ │ │ ├── FriendlyUrlGeneratorFacade.php │ │ │ ├── FriendlyUrlGridFactory.php │ │ │ ├── FriendlyUrlInlineEdit.php │ │ │ ├── FriendlyUrlMatcher.php │ │ │ ├── FriendlyUrlRepository.php │ │ │ ├── FriendlyUrlRouter.php │ │ │ ├── FriendlyUrlRouterFactory.php │ │ │ ├── FriendlyUrlUniqueResult.php │ │ │ ├── FriendlyUrlUniqueResultFactory.php │ │ │ ├── NormalizeUrlTrailingSlashListener.php │ │ │ └── UrlListData.php │ │ ├── LocalizedRouterFactory.php │ │ ├── NormalizeUrlTrailingSlashSubscriber.php │ │ └── Security │ │ │ ├── Annotation │ │ │ └── CsrfProtection.php │ │ │ └── RouteCsrfProtector.php │ ├── Security │ │ ├── NewPasswordUrlProvider.php │ │ └── ResetPasswordInterface.php │ ├── Setting │ │ ├── Exception │ │ │ ├── InvalidArgumentException.php │ │ │ ├── SettingValueNotFoundException.php │ │ │ └── SettingValueTypeNotMatchValueException.php │ │ ├── Setting.php │ │ ├── SettingValue.php │ │ ├── SettingValueFactory.php │ │ └── SettingValueRepository.php │ ├── String │ │ ├── DatabaseSearchingHelper.php │ │ ├── HashGenerator.php │ │ └── TransformStringHelper.php │ ├── Translation │ │ ├── ConfigConstraintMessageExtractor.php │ │ ├── ConstraintMessageExtractor.php │ │ ├── ConstraintMessagePropertyExtractor.php │ │ ├── ConstraintViolationExtractor.php │ │ ├── CustomTransFiltersVisitor.php │ │ ├── Exception │ │ │ ├── ExtractionException.php │ │ │ ├── InstanceNotInjectedException.php │ │ │ ├── MessageIdArgumentNotPresent.php │ │ │ └── StringValueUnextractableException.php │ │ ├── FrontendApiValidationTranslationDomainDetectorTrait.php │ │ ├── JsFileExtractor.php │ │ ├── MessageIdNormalizer.php │ │ ├── NormalizingExtractorManager.php │ │ ├── PhpFileExtractor.php │ │ ├── PhpFileExtractorFactory.php │ │ ├── PhpParserNodeHelper.php │ │ ├── PoDumper.php │ │ ├── PoFileLoader.php │ │ ├── TransMethodSpecification.php │ │ ├── TranslatableEntityDataCreator.php │ │ ├── TranslationSourceReplacement.php │ │ ├── Translator.php │ │ ├── TwigFileExtractor.php │ │ └── functions.php │ ├── UploadedFile │ │ ├── Config │ │ │ ├── Exception │ │ │ │ ├── DuplicateEntityNameException.php │ │ │ │ ├── DuplicateTypeNameException.php │ │ │ │ ├── InvalidUploadedFileConfigException.php │ │ │ │ ├── NotSupportedTypeNameException.php │ │ │ │ ├── UploadedFileConfigurationParseException.php │ │ │ │ ├── UploadedFileEntityConfigNotFoundException.php │ │ │ │ └── UploadedFileTypeConfigNotFoundException.php │ │ │ ├── UploadedFileConfig.php │ │ │ ├── UploadedFileConfigDefinition.php │ │ │ ├── UploadedFileConfigInterface.php │ │ │ ├── UploadedFileConfigLoader.php │ │ │ ├── UploadedFileEntityConfig.php │ │ │ └── UploadedFileTypeConfig.php │ │ ├── DirectoryStructureCreator.php │ │ ├── Exception │ │ │ ├── EntityIdentifierException.php │ │ │ ├── FileNotFoundException.php │ │ │ └── MultipleFilesNotAllowedException.php │ │ ├── Grid │ │ │ ├── AbstractUploadedFileGridFactory.php │ │ │ ├── FilePickerGridFactory.php │ │ │ └── UploadedFileGridFactory.php │ │ ├── UploadedFile.php │ │ ├── UploadedFileAdminListFacade.php │ │ ├── UploadedFileAdminListRepository.php │ │ ├── UploadedFileData.php │ │ ├── UploadedFileDataFactory.php │ │ ├── UploadedFileDeleteDoctrineListener.php │ │ ├── UploadedFileFacade.php │ │ ├── UploadedFileFactory.php │ │ ├── UploadedFileLocator.php │ │ ├── UploadedFileRelation.php │ │ ├── UploadedFileRelationFactory.php │ │ ├── UploadedFileRelationRepository.php │ │ ├── UploadedFileRepository.php │ │ └── UploadedFileTranslation.php │ ├── Utils │ │ ├── Debug.php │ │ └── Utils.php │ ├── VarDumper │ │ └── functions.php │ └── Xml │ │ └── XmlNormalizerHelper.php ├── Controller │ ├── Admin │ │ ├── AccessController.php │ │ ├── AdminBaseController.php │ │ ├── AdministratorController.php │ │ ├── AdministratorRoleGroupController.php │ │ ├── AdvertController.php │ │ ├── ArticleController.php │ │ ├── BestsellingProductController.php │ │ ├── BillingAddressController.php │ │ ├── BlogArticleController.php │ │ ├── BlogCategoryController.php │ │ ├── BrandController.php │ │ ├── BreadcrumbController.php │ │ ├── CategoryController.php │ │ ├── CategorySeoController.php │ │ ├── ClosedDayController.php │ │ ├── ComplaintController.php │ │ ├── ComplaintStatusController.php │ │ ├── ContactFormSettingsController.php │ │ ├── CountryController.php │ │ ├── CspHeaderController.php │ │ ├── CurrencyController.php │ │ ├── CustomerCommunicationController.php │ │ ├── CustomerController.php │ │ ├── CustomerUserRoleGroupController.php │ │ ├── DefaultController.php │ │ ├── DeliveryAddressController.php │ │ ├── DomainController.php │ │ ├── DomainFilterController.php │ │ ├── FeedController.php │ │ ├── FilePickerController.php │ │ ├── FileUploadController.php │ │ ├── FlagController.php │ │ ├── FlashMessageController.php │ │ ├── GridController.php │ │ ├── HeurekaController.php │ │ ├── InquiryController.php │ │ ├── LanguageConstantController.php │ │ ├── LegalConditionsController.php │ │ ├── LocalizationController.php │ │ ├── LoginController.php │ │ ├── MailController.php │ │ ├── MenuController.php │ │ ├── NavigationController.php │ │ ├── NewsletterController.php │ │ ├── NotificationBarController.php │ │ ├── OrderController.php │ │ ├── OrderStatusController.php │ │ ├── ParameterController.php │ │ ├── ParameterGroupController.php │ │ ├── ParameterValueController.php │ │ ├── PaymentController.php │ │ ├── PersonalDataController.php │ │ ├── PriceListController.php │ │ ├── PricingGroupController.php │ │ ├── ProductController.php │ │ ├── ProductPickerController.php │ │ ├── PromoCodeController.php │ │ ├── RedisController.php │ │ ├── SalesRepresentativeController.php │ │ ├── SearchAdminController.php │ │ ├── SelectAdminDomainsController.php │ │ ├── SeoController.php │ │ ├── SeoPageController.php │ │ ├── SliderController.php │ │ ├── StockController.php │ │ ├── StoreController.php │ │ ├── SuperadminController.php │ │ ├── TopCategoryController.php │ │ ├── TopProductController.php │ │ ├── TransferIssueController.php │ │ ├── TransportAndPaymentController.php │ │ ├── TransportController.php │ │ ├── UnitController.php │ │ ├── UnusedFriendlyUrlController.php │ │ ├── UploadedFileController.php │ │ ├── UserConsentPolicyController.php │ │ ├── VatController.php │ │ └── WatchdogController.php │ ├── ElFinder │ │ └── ElfinderController.php │ └── Front │ │ ├── CustomerUploadedFileController.php │ │ ├── PersonalDataController.php │ │ └── UploadedFileController.php ├── DependencyInjection │ ├── Compiler │ │ ├── AddConstraintValidatorsPass.php │ │ ├── RegisterCronModulesCompilerPass.php │ │ ├── RegisterExtendedEntitiesCompilerPass.php │ │ ├── RegisterPluginCrudExtensionsCompilerPass.php │ │ ├── RegisterPluginDataFixturesCompilerPass.php │ │ ├── RegisterProductFeedConfigsCompilerPass.php │ │ └── RegisterProjectShopsysClassExtensionsCompilerPass.php │ ├── Configuration.php │ ├── ServicesResetter.php │ ├── SetterInjectionTrait.php │ └── ShopsysFrameworkExtension.php ├── Form │ ├── AbstractFileUploadType.php │ ├── AbstractMultiplePickerType.php │ ├── Admin │ │ ├── Administrator │ │ │ ├── AdminDomainsFormType.php │ │ │ ├── AdministratorFormType.php │ │ │ ├── AdministratorResetPasswordFormType.php │ │ │ └── AdministratorRoleGroupFormType.php │ │ ├── AdvancedSearch │ │ │ ├── AdvancedSearchFilterTranslation.php │ │ │ ├── AdvancedSearchOperatorTranslation.php │ │ │ ├── AdvancedSearchOrderFilterTranslation.php │ │ │ └── AdvancedSearchProductFilterTranslation.php │ │ ├── Advert │ │ │ └── AdvertFormType.php │ │ ├── Article │ │ │ └── ArticleFormType.php │ │ ├── BestsellingProduct │ │ │ └── BestsellingProductFormType.php │ │ ├── Blog │ │ │ ├── BlogArticleFormType.php │ │ │ └── BlogCategoryFormType.php │ │ ├── Category │ │ │ ├── CategoryFormType.php │ │ │ └── TopCategory │ │ │ │ └── TopCategoriesFormType.php │ │ ├── CategorySeo │ │ │ ├── CategorySeoFilterFormType.php │ │ │ └── ReadyCategorySeoCombinationFormType.php │ │ ├── Complaint │ │ │ ├── ComplaintFormType.php │ │ │ ├── ComplaintItemFormType.php │ │ │ └── Status │ │ │ │ ├── ComplaintItemsType.php │ │ │ │ └── ComplaintStatusFormType.php │ │ ├── ContactForm │ │ │ └── ContactFormSettingsFormType.php │ │ ├── Country │ │ │ └── CountryFormType.php │ │ ├── CspHeaderSetting │ │ │ └── CspHeaderSettingFormType.php │ │ ├── Customer │ │ │ ├── BillingAddressAndRelatedInfoFormType.php │ │ │ ├── BillingAddressFormType.php │ │ │ ├── DeliveryAddressFormType.php │ │ │ ├── RoleGroup │ │ │ │ └── CustomerUserRoleGroupFormType.php │ │ │ └── User │ │ │ │ ├── CustomerUserFormType.php │ │ │ │ └── CustomerUserUpdateFormType.php │ │ ├── CustomerCommunication │ │ │ └── CustomerUserCommunicationFormType.php │ │ ├── Domain │ │ │ └── DomainFormType.php │ │ ├── FriendlyUrl │ │ │ └── FriendlyUrlFormType.php │ │ ├── GrapesJsMailType.php │ │ ├── Heureka │ │ │ └── HeurekaShopCertificationFormType.php │ │ ├── LanguageConstant │ │ │ └── LanguageConstantFormType.php │ │ ├── LegalConditions │ │ │ ├── PrivacyPolicySettingFormType.php │ │ │ └── TermsAndConditionsSettingFormType.php │ │ ├── Login │ │ │ └── LoginFormType.php │ │ ├── Mail │ │ │ ├── MailSettingFormType.php │ │ │ ├── MailTemplateFormType.php │ │ │ ├── MailTemplateSendFormType.php │ │ │ └── MailWhitelistCollectionType.php │ │ ├── Module │ │ │ └── ModulesFormType.php │ │ ├── Navigation │ │ │ └── NavigationItemFormType.php │ │ ├── NotificationBar │ │ │ └── NotificationBarFormType.php │ │ ├── Order │ │ │ ├── OrderFormType.php │ │ │ ├── OrderItemFormType.php │ │ │ ├── OrderPaymentFormType.php │ │ │ ├── OrderTransportFormType.php │ │ │ └── Status │ │ │ │ └── OrderStatusFormType.php │ │ ├── Payment │ │ │ └── PaymentFormType.php │ │ ├── PaymentTransaction │ │ │ ├── PaymentTransactionType.php │ │ │ └── PaymentTransactionsType.php │ │ ├── PersonalData │ │ │ └── PersonalDataFormType.php │ │ ├── PriceList │ │ │ ├── ImportPriceListFormType.php │ │ │ ├── PriceListFormType.php │ │ │ ├── PriceListProductPickerType.php │ │ │ └── PriceListProductsPickerType.php │ │ ├── Pricing │ │ │ ├── Currency │ │ │ │ ├── CurrencyFormType.php │ │ │ │ └── CurrencySettingsFormType.php │ │ │ └── Group │ │ │ │ ├── PricingGroupFormType.php │ │ │ │ └── PricingGroupSettingsFormType.php │ │ ├── Product │ │ │ ├── Brand │ │ │ │ └── BrandFormType.php │ │ │ ├── Flag │ │ │ │ └── FlagFormType.php │ │ │ ├── Parameter │ │ │ │ ├── ParameterFormType.php │ │ │ │ ├── ParameterGroupFormType.php │ │ │ │ ├── ProductParameterValueFormType.php │ │ │ │ └── Value │ │ │ │ │ ├── ParameterValueConversionFormType.php │ │ │ │ │ ├── ParameterValueConversionListType.php │ │ │ │ │ ├── ParameterValueFormType.php │ │ │ │ │ └── SliderParameterValuesUpdateFormType.php │ │ │ ├── Price │ │ │ │ ├── PricesByPricingGroupsType.php │ │ │ │ ├── PricingGroupPriceType.php │ │ │ │ └── ProductPricesWithVatSelectType.php │ │ │ ├── PriceListOverviewType.php │ │ │ ├── ProductFormType.php │ │ │ ├── ProductMassActionFormType.php │ │ │ ├── TopProduct │ │ │ │ └── TopProductsFormType.php │ │ │ ├── Unit │ │ │ │ ├── UnitFormType.php │ │ │ │ └── UnitSettingFormType.php │ │ │ ├── VariantFormType.php │ │ │ └── VideoTokenType.php │ │ ├── PromoCode │ │ │ ├── Constraint │ │ │ │ ├── UniqueFlags.php │ │ │ │ └── UniqueFlagsValidator.php │ │ │ ├── PromoCodeFlagCollectionType.php │ │ │ ├── PromoCodeFlagType.php │ │ │ ├── PromoCodeFormType.php │ │ │ ├── PromoCodeLimitCollectionType.php │ │ │ ├── PromoCodeLimitType.php │ │ │ └── Transformer │ │ │ │ ├── PromoCodeFlagTransformer.php │ │ │ │ └── PromoCodeLimitTransformer.php │ │ ├── QuickSearch │ │ │ ├── QuickSearchFormData.php │ │ │ └── QuickSearchFormType.php │ │ ├── SalesRepresentative │ │ │ └── SalesRepresentativeFormType.php │ │ ├── Seo │ │ │ ├── DomainConfigCollectionToDomainIdsTransformer.php │ │ │ ├── HreflangSettingFormType.php │ │ │ ├── SeoPageFormType.php │ │ │ ├── SeoRobotsSettingFormType.php │ │ │ └── SeoSettingFormType.php │ │ ├── Slider │ │ │ └── SliderItemFormType.php │ │ ├── Stock │ │ │ ├── ProductStockFormType.php │ │ │ ├── StockFormType.php │ │ │ └── StockSettingsFormType.php │ │ ├── Store │ │ │ ├── ClosedDayFormType.php │ │ │ ├── OpeningHours │ │ │ │ ├── OpeningHoursRangeCollectionFormType.php │ │ │ │ └── OpeningHoursRangeFormType.php │ │ │ └── StoreFormType.php │ │ ├── Superadmin │ │ │ ├── InputPriceTypeFormType.php │ │ │ └── MailWhitelistFormType.php │ │ ├── Transfer │ │ │ └── TransferIssueSearchFormType.php │ │ ├── Transport │ │ │ ├── Price │ │ │ │ └── PriceWithLimitType.php │ │ │ └── TransportFormType.php │ │ ├── TransportAndPayment │ │ │ └── FreeTransportAndPaymentPriceLimitsFormType.php │ │ ├── UploadedFile │ │ │ └── UploadedFileFormType.php │ │ ├── UserConsentPolicy │ │ │ └── UserConsentPolicySettingFormType.php │ │ └── Vat │ │ │ ├── VatFormType.php │ │ │ └── VatSettingsFormType.php │ ├── BasicFileUploadType.php │ ├── BlogCategoriesType.php │ ├── BlogCategoryCheckboxType.php │ ├── CategoriesType.php │ ├── CategoryCheckboxType.php │ ├── ChoiceTypeExtension.php │ ├── CollectionTypeExtension.php │ ├── ColorPickerType.php │ ├── Constraints │ │ ├── Contains.php │ │ ├── ContainsValidator.php │ │ ├── Country.php │ │ ├── CountryValidator.php │ │ ├── Email.php │ │ ├── EmailValidator.php │ │ ├── FieldsAreNotIdentical.php │ │ ├── FieldsAreNotIdenticalValidator.php │ │ ├── FileAbstractFilesystemValidator.php │ │ ├── FileAllowedExtension.php │ │ ├── FileAllowedExtensionValidator.php │ │ ├── FileExtensionMaxLength.php │ │ ├── FileExtensionMaxLengthValidator.php │ │ ├── ImageAbstractFilesystemValidator.php │ │ ├── MoneyRange.php │ │ ├── MoneyRangeValidator.php │ │ ├── MustUploadFile.php │ │ ├── MustUploadFileValidator.php │ │ ├── NotIdenticalToEmailLocalPart.php │ │ ├── NotIdenticalToEmailLocalPartValidator.php │ │ ├── NotInArray.php │ │ ├── NotInArrayValidator.php │ │ ├── NotNegativeMoneyAmount.php │ │ ├── NotNegativeMoneyAmountValidator.php │ │ ├── NotSelectedDomainToShow.php │ │ ├── NotSelectedDomainToShowValidator.php │ │ ├── PositiveMoneyAmount.php │ │ ├── PositiveMoneyAmountValidator.php │ │ ├── UniqueBillingAddress.php │ │ ├── UniqueBillingAddressValidator.php │ │ ├── UniqueCollection.php │ │ ├── UniqueCollectionValidator.php │ │ ├── UniqueEmail.php │ │ ├── UniqueEmailValidator.php │ │ ├── UniqueEntityField.php │ │ ├── UniqueEntityFieldValidator.php │ │ ├── UniqueProductCatnum.php │ │ ├── UniqueProductCatnumValidator.php │ │ ├── UniqueProductParameters.php │ │ ├── UniqueProductParametersValidator.php │ │ ├── UniqueSeoPageSlug.php │ │ ├── UniqueSeoPageSlugValidator.php │ │ ├── UniqueSlugsOnDomains.php │ │ ├── UniqueSlugsOnDomainsValidator.php │ │ ├── WhitelistPattern.php │ │ └── WhitelistPatternValidator.php │ ├── CustomerUserListType.php │ ├── DatePickerType.php │ ├── DateTimeType.php │ ├── DeliveryAddressListType.php │ ├── DisplayOnlyCompanyNameType.php │ ├── DisplayOnlyCustomerType.php │ ├── DisplayOnlyDomainIconType.php │ ├── DisplayOnlyOrderType.php │ ├── DisplayOnlyType.php │ ├── DisplayOnlyUrlType.php │ ├── DisplayVariablesType.php │ ├── DomainType.php │ ├── DomainsType.php │ ├── EmptyMessageChoiceTypeExtension.php │ ├── Exception │ │ ├── InvalidOptionException.php │ │ ├── MissingRouteNameException.php │ │ └── NotMoneyTypeException.php │ ├── FileUploadType.php │ ├── FilesType.php │ ├── FormRenderingConfigurationExtension.php │ ├── FriendlyUrlType.php │ ├── GrapesJsType.php │ ├── GroupType.php │ ├── HoneyPotType.php │ ├── ImageUploadType.php │ ├── InvertChoiceTypeExtension.php │ ├── JsFormValidatorFactory.php │ ├── Locale │ │ └── LocalizedType.php │ ├── LocalizedFullWidthType.php │ ├── MessageType.php │ ├── MoneyTypeExtension.php │ ├── MultiLocaleBasicFileUploadType.php │ ├── MultiLocaleFileUploadType.php │ ├── NumberSliderType.php │ ├── OrderItemsType.php │ ├── OrderListType.php │ ├── PriceAndVatTableByDomainsType.php │ ├── ProductParameterValueType.php │ ├── ProductType.php │ ├── ProductsType.php │ ├── RolesType.php │ ├── SingleCheckboxChoiceType.php │ ├── SortableValuesType.php │ ├── Transformers │ │ ├── BlogCategoriesTypeTransformer.php │ │ ├── CategoriesIdsToCategoriesTransformer.php │ │ ├── CategoriesTypeTransformer.php │ │ ├── CopyTotalPricesOfOrderItemTransformer.php │ │ ├── EmptyWysiwygTransformer.php │ │ ├── FilesIdsToFilesTransformer.php │ │ ├── ImagesIdsToImagesTransformer.php │ │ ├── IndexedBooleansToArrayOfIndexesTransformer.php │ │ ├── InverseMultipleChoiceTransformer.php │ │ ├── InverseTransformer.php │ │ ├── MailWhitelistTransformer.php │ │ ├── NoopDataTransformer.php │ │ ├── NumericToMoneyTransformer.php │ │ ├── OpeningHourTimeToStringTransformer.php │ │ ├── ProductIdToProductTransformer.php │ │ ├── ProductParameterValueToProductParameterValuesLocalizedTransformer.php │ │ ├── ProductsIdsToProductsTransformer.php │ │ ├── RemoveDuplicatesFromArrayTransformer.php │ │ ├── RemoveWhitespacesTransformer.php │ │ └── WysiwygCdnDataTransformer.php │ ├── TransportInputPricesType.php │ ├── UrlListType.php │ ├── ValidationGroup.php │ └── WysiwygTypeExtension.php ├── Migrations │ ├── DataModifiers │ │ └── CountryDataModifierVersion20190121094400.php │ ├── Exception │ │ └── ContainerNotSetException.php │ ├── MultidomainMigrationTrait.php │ ├── Version20151210115739.php │ ├── Version20151230012022.php │ ├── Version20151231104800.php │ ├── Version20160105140120.php │ ├── Version20160108183213.php │ ├── Version20160113151330.php │ ├── Version20160129122637.php │ ├── Version20160314174500.php │ ├── Version20160322180746.php │ ├── Version20160419131007.php │ ├── Version20160420165146.php │ ├── Version20160422164530.php │ ├── Version20160425173252.php │ ├── Version20160503132106.php │ ├── Version20160503140649.php │ ├── Version20160512152113.php │ ├── Version20160531080553.php │ ├── Version20160601124500.php │ ├── Version20160627173212.php │ ├── Version20160715100000.php │ ├── Version20160717105120.php │ ├── Version20160717144201.php │ ├── Version20160805142110.php │ ├── Version20160828201247.php │ ├── Version20160902125810.php │ ├── Version20160902145842.php │ ├── Version20161010151719.php │ ├── Version20161013090245.php │ ├── Version20161111124254.php │ ├── Version20161124152029.php │ ├── Version20161124154622.php │ ├── Version20161125140534.php │ ├── Version20161207135225.php │ ├── Version20161207144725.php │ ├── Version20170207091754.php │ ├── Version20170228101522.php │ ├── Version20170329131658.php │ ├── Version20170418094333.php │ ├── Version20170530101845.php │ ├── Version20170627144556.php │ ├── Version20170629163629.php │ ├── Version20170703131941.php │ ├── Version20170710111348.php │ ├── Version20170710120313.php │ ├── Version20170710120408.php │ ├── Version20170728120619.php │ ├── Version20170801093853.php │ ├── Version20170802141735.php │ ├── Version20170807084807.php │ ├── Version20171005091354.php │ ├── Version20180206151021.php │ ├── Version20180214070314.php │ ├── Version20180216091004.php │ ├── Version20180216091409.php │ ├── Version20180301081843.php │ ├── Version20180306094316.php │ ├── Version20180409055551.php │ ├── Version20180409100239.php │ ├── Version20180411124519.php │ ├── Version20180413102110.php │ ├── Version20180530113304.php │ ├── Version20180530131622.php │ ├── Version20180531141640.php │ ├── Version20180531231229.php │ ├── Version20180603135339.php │ ├── Version20180603135340.php │ ├── Version20180603135341.php │ ├── Version20180603135342.php │ ├── Version20180603135343.php │ ├── Version20180603135344.php │ ├── Version20180603135345.php │ ├── Version20180603135346.php │ ├── Version20180603135347.php │ ├── Version20180702111015.php │ ├── Version20180702111016.php │ ├── Version20180702111017.php │ ├── Version20180702111018.php │ ├── Version20180702111019.php │ ├── Version20180702111020.php │ ├── Version20180724060204.php │ ├── Version20180730135725.php │ ├── Version20180830121204.php │ ├── Version20181008000001.php │ ├── Version20181114102106.php │ ├── Version20181114120915.php │ ├── Version20181114134959.php │ ├── Version20181114145244.php │ ├── Version20181114145250.php │ ├── Version20190121094400.php │ ├── Version20190122130312.php │ ├── Version20190215092226.php │ ├── Version20190220101938.php │ ├── Version20190521071335.php │ ├── Version20190611114955.php │ ├── Version20190823110846.php │ ├── Version20190824181350.php │ ├── Version20190930140221.php │ ├── Version20191029123329.php │ ├── Version20191029210140.php │ ├── Version20191107162719.php │ ├── Version20191108140919.php │ ├── Version20191112122617.php │ ├── Version20191113133455.php │ ├── Version20191113212555.php │ ├── Version20191113231735.php │ ├── Version20191121145700.php │ ├── Version20191126105045.php │ ├── Version20191127133143.php │ ├── Version20191205145631.php │ ├── Version20191210112451.php │ ├── Version20191211124055.php │ ├── Version20191216143436.php │ ├── Version20200127085928.php │ ├── Version20200129073328.php │ ├── Version20200206111017.php │ ├── Version20200211110913.php │ ├── Version20200219145345.php │ ├── Version20200225102504.php │ ├── Version20200310120000.php │ ├── Version20200310130000.php │ ├── Version20200319124638.php │ ├── Version20200325132105.php │ ├── Version20200327080840.php │ ├── Version20200330150340.php │ ├── Version20200416114815.php │ ├── Version20200511110953.php │ ├── Version20200803105229.php │ ├── Version20200819165818.php │ ├── Version20200828131906.php │ ├── Version20200923075659.php │ ├── Version20200930074334.php │ ├── Version20201009082139.php │ ├── Version20201120143414.php │ ├── Version20210127085903.php │ ├── Version20220711114131.php │ ├── Version20220725104726.php │ ├── Version20230120123538.php │ ├── Version20230313123007.php │ ├── Version20230320105359.php │ ├── Version20230404071649.php │ ├── Version20230405111441.php │ ├── Version20230817135234.php │ ├── Version20230907132822.php │ ├── Version20230919173422.php │ ├── Version20231011095432.php │ ├── Version20231020101214.php │ ├── Version20231101182132.php │ ├── Version20231102161313.php │ ├── Version20231102205308.php │ ├── Version20231106135517.php │ ├── Version20231111232939.php │ ├── Version20231112021215.php │ ├── Version20231113135255.php │ ├── Version20231113140422.php │ ├── Version20231114121946.php │ ├── Version20231124121921.php │ ├── Version20231130165217.php │ ├── Version20231204154157.php │ ├── Version20231212114321.php │ ├── Version20231213165330.php │ ├── Version20231214213235.php │ ├── Version20231228112326.php │ ├── Version20231228140243.php │ ├── Version20240102112523.php │ ├── Version20240103095628.php │ ├── Version20240105155555.php │ ├── Version20240108154624.php │ ├── Version20240108154625.php │ ├── Version20240109054610.php │ ├── Version20240111072911.php │ ├── Version20240112094253.php │ ├── Version20240130104139.php │ ├── Version20240131072541.php │ ├── Version20240131163656.php │ ├── Version20240206145944.php │ ├── Version20240209114704.php │ ├── Version20240301101208.php │ ├── Version20240318162418.php │ ├── Version20240325165512.php │ ├── Version20240403091822.php │ ├── Version20240403095810.php │ ├── Version20240403122615.php │ ├── Version20240415095045.php │ ├── Version20240416105031.php │ ├── Version20240421102006.php │ ├── Version20240426045700.php │ ├── Version20240527121326.php │ ├── Version20240604152553.php │ ├── Version20240610181711.php │ ├── Version20240612124051.php │ ├── Version20240612131511.php │ ├── Version20240613105832.php │ ├── Version20240613231000.php │ ├── Version20240613235059.php │ ├── Version20240614142126.php │ ├── Version20240614144002.php │ ├── Version20240617204710.php │ ├── Version20240704105750.php │ ├── Version20240704143616.php │ ├── Version20240709134704.php │ ├── Version20240710123712.php │ ├── Version20240711100044.php │ ├── Version20240712070530.php │ ├── Version20240712133748.php │ ├── Version20240719104316.php │ ├── Version20240722095556.php │ ├── Version20240724062626.php │ ├── Version20240725200526.php │ ├── Version20240729072354.php │ ├── Version20240729082317.php │ ├── Version20240729120703.php │ ├── Version20240730045035.php │ ├── Version20240730070101.php │ ├── Version20240730113802.php │ ├── Version20240731141013.php │ ├── Version20240731150432.php │ ├── Version20240801061521.php │ ├── Version20240801095527.php │ ├── Version20240801114052.php │ ├── Version20240803005343.php │ ├── Version20240806084610.php │ ├── Version20240806175816.php │ ├── Version20240813071845.php │ ├── Version20240813183535.php │ ├── Version20240814132958.php │ ├── Version20240815065344.php │ ├── Version20240816110309.php │ ├── Version20240816164022.php │ ├── Version20240816221930.php │ ├── Version20240822144131.php │ ├── Version20240826114720.php │ ├── Version20240827110317.php │ ├── Version20240829093048.php │ ├── Version20240831121309.php │ ├── Version20240902171506.php │ ├── Version20240906201521.php │ ├── Version20240909162017.php │ ├── Version20240910054629.php │ ├── Version20240911090337.php │ ├── Version20240911092730.php │ ├── Version20240911133739.php │ ├── Version20240924082209.php │ ├── Version20240926162253.php │ ├── Version20241001113136.php │ ├── Version20241002121943.php │ ├── Version20241008072724.php │ ├── Version20241014125411.php │ ├── Version20241017084042.php │ ├── Version20241023142037.php │ ├── Version20241031100638.php │ ├── Version20241101073720.php │ ├── Version20241101081004.php │ ├── Version20241101083720.php │ ├── Version20241104151802.php │ ├── Version20241105132620.php │ ├── Version20241106123834.php │ ├── Version20241112100245.php │ ├── Version20241113124734.php │ ├── Version20241113185044.php │ ├── Version20241114124339.php │ ├── Version20241119123503.php │ ├── Version20241121094752.php │ ├── Version20241126152128.php │ ├── Version20241128111224.php │ ├── Version20241204101113.php │ ├── Version20241205094315.php │ ├── Version20241205144230.php │ ├── Version20241212064226.php │ ├── Version20241216165539.php │ ├── Version20241216210547.php │ ├── Version20241216210633.php │ ├── Version20241220094923.php │ ├── Version20241223020558.php │ ├── Version20250103183756.php │ ├── Version20250114063651.php │ ├── Version20250117110742.php │ ├── Version20250120130000.php │ ├── Version20250120145445.php │ ├── Version20250121131930.php │ ├── Version20250121135043.php │ ├── Version20250121135309.php │ ├── Version20250124092957.php │ ├── Version20250124125113.php │ ├── Version20250127142754.php │ ├── Version20250130153449.php │ ├── Version20250208081702.php │ ├── Version20250209123001.php │ ├── Version20250214133657.php │ ├── Version20250226102020.php │ ├── Version20250302234333.php │ ├── Version20250303130234.php │ ├── Version20250312132504.php │ ├── Version20250313074307.php │ ├── Version20250320124625.php │ ├── Version20250324141622.php │ ├── Version20250326101147.php │ ├── Version20250331122654.php │ ├── Version20250404110544.php │ ├── Version20250407111015.php │ ├── Version20250506081245.php │ ├── Version20250507111946.php │ ├── Version20250516104642.php │ └── Version20250526101812.php ├── Model │ ├── AdminNavigation │ │ ├── BreadcrumbOverrider.php │ │ ├── ConfigureMenuEvent.php │ │ ├── MenuItemsGrantedRolesSubscriber.php │ │ ├── RoutingExtension.php │ │ └── SideMenuBuilder.php │ ├── Administration │ │ └── AdministrationFacade.php │ ├── Administrator │ │ ├── Activity │ │ │ ├── AdministratorActivity.php │ │ │ ├── AdministratorActivityFacade.php │ │ │ ├── AdministratorActivityFactory.php │ │ │ ├── AdministratorActivityRepository.php │ │ │ └── Exception │ │ │ │ └── CurrentAdministratorActivityNotFoundException.php │ │ ├── Administrator.php │ │ ├── AdministratorData.php │ │ ├── AdministratorDataFactory.php │ │ ├── AdministratorFacade.php │ │ ├── AdministratorFactory.php │ │ ├── AdministratorGridFacade.php │ │ ├── AdministratorGridLimit.php │ │ ├── AdministratorGridLimitFactory.php │ │ ├── AdministratorLocalizationFacade.php │ │ ├── AdministratorPasswordFacade.php │ │ ├── AdministratorRepository.php │ │ ├── AdministratorTwoFactorAuthenticationFacade.php │ │ ├── Exception │ │ │ ├── AdministratorNotFoundException.php │ │ │ ├── DeletingLastAdministratorException.php │ │ │ ├── DeletingSelfException.php │ │ │ ├── DeletingSuperadminException.php │ │ │ ├── InvalidGridLimitValueException.php │ │ │ ├── InvalidResetPasswordHashAdministratorException.php │ │ │ └── RememberGridLimitException.php │ │ ├── Mail │ │ │ ├── ResetPasswordMail.php │ │ │ ├── ResetPasswordMailFacade.php │ │ │ ├── TwoFactorAuthenticationMail.php │ │ │ └── TwoFactorAuthenticationMailFacade.php │ │ ├── Role │ │ │ ├── AdministratorRole.php │ │ │ ├── AdministratorRoleData.php │ │ │ ├── AdministratorRoleDataFactory.php │ │ │ ├── AdministratorRoleFacade.php │ │ │ └── AdministratorRoleFactory.php │ │ ├── RoleGroup │ │ │ ├── AdministratorRoleGroup.php │ │ │ ├── AdministratorRoleGroupData.php │ │ │ ├── AdministratorRoleGroupFacade.php │ │ │ ├── AdministratorRoleGroupFactory.php │ │ │ ├── AdministratorRoleGroupRepository.php │ │ │ └── Exception │ │ │ │ ├── AdministratorRoleGroupNotFoundException.php │ │ │ │ └── DuplicateNameException.php │ │ └── Security │ │ │ ├── AdministratorFrontSecurityFacade.php │ │ │ ├── AdministratorRolesChangedFacade.php │ │ │ ├── AdministratorRolesChangedSubscriber.php │ │ │ ├── AdministratorUserProvider.php │ │ │ └── Exception │ │ │ ├── AdministratorIsNotLoggedException.php │ │ │ └── InvalidTokenException.php │ ├── AdvancedSearch │ │ ├── AbstractAdvancedSearchFormFactory.php │ │ ├── AdvancedSearchConfig.php │ │ ├── AdvancedSearchFilterInterface.php │ │ ├── AdvancedSearchProductFacade.php │ │ ├── AdvancedSearchQueryBuilderExtender.php │ │ ├── AdvancedSearchRuleData.php │ │ ├── Exception │ │ │ ├── AdvancedSearchFilterAlreadyExistsException.php │ │ │ ├── AdvancedSearchFilterNotFoundException.php │ │ │ ├── AdvancedSearchFilterOperatorNotFoundException.php │ │ │ └── AdvancedSearchTranslationNotFoundException.php │ │ ├── Filter │ │ │ ├── ProductBrandFilter.php │ │ │ ├── ProductCalculatedSellingDeniedFilter.php │ │ │ ├── ProductCategoryFilter.php │ │ │ ├── ProductCatnumFilter.php │ │ │ ├── ProductFlagFilter.php │ │ │ ├── ProductNameFilter.php │ │ │ ├── ProductPartnoFilter.php │ │ │ └── ProductUponInquiryFilter.php │ │ ├── OrderAdvancedSearchConfig.php │ │ ├── OrderAdvancedSearchFormFactory.php │ │ ├── ProductAdvancedSearchConfig.php │ │ ├── ProductAdvancedSearchFormFactory.php │ │ └── RuleFormViewDataFactory.php │ ├── AdvancedSearchComplaint │ │ ├── AdvancedSearchComplaintFacade.php │ │ ├── AdvancedSearchComplaintFilterTranslation.php │ │ ├── ComplaintAdvancedSearchConfig.php │ │ ├── ComplaintAdvancedSearchFormFactory.php │ │ └── Filter │ │ │ ├── AbstractComplaintContainsFilter.php │ │ │ ├── ComplaintCreateDateFilter.php │ │ │ ├── ComplaintDeliveryCityFilter.php │ │ │ ├── ComplaintDeliveryLastNameFilter.php │ │ │ ├── ComplaintDeliveryPhoneNumberFilter.php │ │ │ ├── ComplaintDeliveryStreetFilter.php │ │ │ ├── ComplaintNumberFilter.php │ │ │ └── OrderNumberFilter.php │ ├── AdvancedSearchOrder │ │ ├── AdvancedSearchOrderFacade.php │ │ └── Filter │ │ │ ├── OrderCityFilter.php │ │ │ ├── OrderCreateDateFilter.php │ │ │ ├── OrderCustomerIdFilter.php │ │ │ ├── OrderEmailFilter.php │ │ │ ├── OrderLastNameFilter.php │ │ │ ├── OrderNameFilter.php │ │ │ ├── OrderNumberFilter.php │ │ │ ├── OrderPhoneNumberFilter.php │ │ │ ├── OrderPriceFilterWithVatFilter.php │ │ │ ├── OrderProductFilter.php │ │ │ ├── OrderStatusFilter.php │ │ │ └── OrderStreetFilter.php │ ├── Advert │ │ ├── Advert.php │ │ ├── AdvertData.php │ │ ├── AdvertDataFactory.php │ │ ├── AdvertFacade.php │ │ ├── AdvertFactory.php │ │ ├── AdvertPositionRegistry.php │ │ ├── AdvertRepository.php │ │ └── Exception │ │ │ ├── AdvertNotFoundException.php │ │ │ └── AdvertPositionNotKnownException.php │ ├── Article │ │ ├── Article.php │ │ ├── ArticleBreadcrumbGenerator.php │ │ ├── ArticleData.php │ │ ├── ArticleDataFactory.php │ │ ├── ArticleDetailFriendlyUrlDataProvider.php │ │ ├── ArticleFacade.php │ │ ├── ArticleFactory.php │ │ ├── ArticleRepository.php │ │ ├── Elasticsearch │ │ │ ├── ArticleElasticsearchDataFetcher.php │ │ │ ├── ArticleElasticsearchFacade.php │ │ │ ├── ArticleElasticsearchRepository.php │ │ │ ├── ArticleExportCronModule.php │ │ │ ├── ArticleExportRepository.php │ │ │ ├── ArticleIndex.php │ │ │ ├── FilterQuery.php │ │ │ └── FilterQueryFactory.php │ │ ├── Exception │ │ │ └── ArticleNotFoundException.php │ │ └── Messenger │ │ │ ├── ArticleExportMessage.php │ │ │ ├── ArticleExportMessageDispatcher.php │ │ │ └── ArticleExportMessageHandler.php │ ├── Blog │ │ ├── Article │ │ │ ├── BlogArticle.php │ │ │ ├── BlogArticleBlogCategoryDomain.php │ │ │ ├── BlogArticleBlogCategoryDomainFactory.php │ │ │ ├── BlogArticleBreadcrumbGenerator.php │ │ │ ├── BlogArticleData.php │ │ │ ├── BlogArticleDataFactory.php │ │ │ ├── BlogArticleDetailFriendlyUrlDataProvider.php │ │ │ ├── BlogArticleDomain.php │ │ │ ├── BlogArticleFacade.php │ │ │ ├── BlogArticleFactory.php │ │ │ ├── BlogArticleGridFactory.php │ │ │ ├── BlogArticleRepository.php │ │ │ ├── BlogArticleTranslation.php │ │ │ ├── BlogArticleVisibilityRepository.php │ │ │ ├── Elasticsearch │ │ │ │ ├── BlogArticleElasticsearchDataFetcher.php │ │ │ │ ├── BlogArticleElasticsearchFacade.php │ │ │ │ ├── BlogArticleElasticsearchRepository.php │ │ │ │ ├── BlogArticleExportChangedCronModule.php │ │ │ │ ├── BlogArticleExportCronModule.php │ │ │ │ ├── BlogArticleExportQueueFacade.php │ │ │ │ ├── BlogArticleExportRepository.php │ │ │ │ ├── BlogArticleExportScheduler.php │ │ │ │ ├── BlogArticleExportSubscriber.php │ │ │ │ ├── BlogArticleIndex.php │ │ │ │ ├── FilterQuery.php │ │ │ │ └── FilterQueryFactory.php │ │ │ └── Exception │ │ │ │ ├── BlogArticleDomainNotFoundException.php │ │ │ │ └── BlogArticleNotFoundException.php │ │ ├── BlogVisibilityFacade.php │ │ ├── BlogVisibilityRecalculationListener.php │ │ ├── BlogVisibilityRecalculationScheduler.php │ │ └── Category │ │ │ ├── BlogCategory.php │ │ │ ├── BlogCategoryBreadcrumbGenerator.php │ │ │ ├── BlogCategoryData.php │ │ │ ├── BlogCategoryDataFactory.php │ │ │ ├── BlogCategoryDetailFriendlyUrlDataProvider.php │ │ │ ├── BlogCategoryDomain.php │ │ │ ├── BlogCategoryFacade.php │ │ │ ├── BlogCategoryFactory.php │ │ │ ├── BlogCategoryRepository.php │ │ │ ├── BlogCategoryTranslation.php │ │ │ ├── BlogCategoryVisibilityRepository.php │ │ │ ├── BlogCategoryWithPreloadedChildren.php │ │ │ ├── BlogCategoryWithPreloadedChildrenFactory.php │ │ │ └── Exception │ │ │ ├── BlogCategoryDomainNotFoundException.php │ │ │ ├── BlogCategoryNotFoundException.php │ │ │ └── RootLevelBlogCategoryAlreadyExistsException.php │ ├── Cart │ │ ├── AddProductResult.php │ │ ├── Cart.php │ │ ├── CartFacade.php │ │ ├── CartFactory.php │ │ ├── CartPromoCodeFacade.php │ │ ├── CartRepository.php │ │ ├── Exception │ │ │ ├── InvalidCartItemException.php │ │ │ └── InvalidQuantityException.php │ │ ├── Item │ │ │ ├── CartItem.php │ │ │ ├── CartItemFactory.php │ │ │ └── DeleteOldCartsCronModule.php │ │ ├── Payment │ │ │ ├── CartPaymentData.php │ │ │ ├── CartPaymentDataFactory.php │ │ │ └── CartPaymentFacade.php │ │ ├── Transport │ │ │ ├── CartTransportData.php │ │ │ ├── CartTransportDataFactory.php │ │ │ └── CartTransportFacade.php │ │ └── Watcher │ │ │ └── CartWatcher.php │ ├── Category │ │ ├── AutomatedFilter │ │ │ ├── CategoryAutomatedFilterFacade.php │ │ │ ├── CategoryAutomatedFilterInterface.php │ │ │ ├── NewProductsCategoryAutomatedFilter.php │ │ │ ├── OnStockCategoryAutomatedFilter.php │ │ │ └── SpecialPricesCategoryAutomatedFilter.php │ │ ├── Category.php │ │ ├── CategoryBreadcrumbGenerator.php │ │ ├── CategoryData.php │ │ ├── CategoryDataFactory.php │ │ ├── CategoryDomain.php │ │ ├── CategoryEvent.php │ │ ├── CategoryFacade.php │ │ ├── CategoryFactory.php │ │ ├── CategoryNestedSetCalculatorHelper.php │ │ ├── CategoryParameter.php │ │ ├── CategoryParameterFacade.php │ │ ├── CategoryParameterFactory.php │ │ ├── CategoryParameterRepository.php │ │ ├── CategoryRepository.php │ │ ├── CategoryTranslation.php │ │ ├── CategoryVisibilityRecalculationScheduler.php │ │ ├── CategoryVisibilityRepository.php │ │ ├── CategoryWithLazyLoadedVisibleChildren.php │ │ ├── CategoryWithLazyLoadedVisibleChildrenFactory.php │ │ ├── CategoryWithPreloadedChildren.php │ │ ├── CategoryWithPreloadedChildrenFactory.php │ │ ├── Exception │ │ │ ├── CategoryDomainNotFoundException.php │ │ │ ├── CategoryNotFoundException.php │ │ │ └── RootCategoryNotFoundException.php │ │ └── TopCategory │ │ │ ├── TopCategory.php │ │ │ ├── TopCategoryFacade.php │ │ │ ├── TopCategoryFactory.php │ │ │ └── TopCategoryRepository.php │ ├── CategorySeo │ │ ├── CategorySeoFacade.php │ │ ├── CategorySeoFiltersData.php │ │ ├── CategorySeoFriendlyUrlDataProvider.php │ │ ├── CategorySeoMix.php │ │ ├── DeleteReadyCategorySeoMixFacade.php │ │ ├── Exception │ │ │ ├── ReadyCategorySeoMixNotFoundException.php │ │ │ ├── ReadyCategorySeoMixUrlsContainBadDomainUrlException.php │ │ │ ├── ReadyCategorySeoMixUrlsDoNotContainMainFriendlyUrlException.php │ │ │ ├── ReadyCategorySeoMixUrlsDoNotContainUrlForCorrectDomainException.php │ │ │ ├── SelectedCategorySeoMixCombinationIsNotValidException.php │ │ │ └── UnableToFindReadyCategorySeoMixException.php │ │ ├── ReadyCategorySeoMix.php │ │ ├── ReadyCategorySeoMixData.php │ │ ├── ReadyCategorySeoMixDataFactory.php │ │ ├── ReadyCategorySeoMixFacade.php │ │ ├── ReadyCategorySeoMixFactory.php │ │ ├── ReadyCategorySeoMixGridFactory.php │ │ ├── ReadyCategorySeoMixParameterParameterValue.php │ │ ├── ReadyCategorySeoMixParameterParameterValueFactory.php │ │ ├── ReadyCategorySeoMixRepository.php │ │ ├── SelectedCategorySeoMixCombination.php │ │ └── SelectedCategorySeoMixCombinationFactory.php │ ├── CombinedArticle │ │ ├── CombinedArticleElasticsearchFacade.php │ │ └── CombinedArticleElasticsearchRepository.php │ ├── Complaint │ │ ├── Complaint.php │ │ ├── ComplaintData.php │ │ ├── ComplaintDataFactory.php │ │ ├── ComplaintFacade.php │ │ ├── ComplaintFactory.php │ │ ├── ComplaintGridFactory.php │ │ ├── ComplaintItem.php │ │ ├── ComplaintItemData.php │ │ ├── ComplaintItemDataFactory.php │ │ ├── ComplaintItemFactory.php │ │ ├── ComplaintNumberSequence.php │ │ ├── ComplaintNumberSequenceRepository.php │ │ ├── ComplaintRepository.php │ │ ├── ComplaintResolutionEnum.php │ │ ├── Exception │ │ │ └── ComplaintNotFoundException.php │ │ ├── Mail │ │ │ ├── ComplaintMail.php │ │ │ └── ComplaintMailFacade.php │ │ └── Status │ │ │ ├── ComplaintStatus.php │ │ │ ├── ComplaintStatusData.php │ │ │ ├── ComplaintStatusDataFactory.php │ │ │ ├── ComplaintStatusFacade.php │ │ │ ├── ComplaintStatusFactory.php │ │ │ ├── ComplaintStatusRepository.php │ │ │ ├── ComplaintStatusTranslation.php │ │ │ ├── ComplaintStatusTypeEnum.php │ │ │ ├── Exception │ │ │ ├── ComplaintStatusDeletionForbiddenException.php │ │ │ └── ComplaintStatusNotFoundException.php │ │ │ └── Grid │ │ │ ├── ComplaintStatusGridFactory.php │ │ │ └── ComplaintStatusInlineEdit.php │ ├── ContactForm │ │ ├── ContactFormData.php │ │ ├── ContactFormFacade.php │ │ ├── ContactFormSettingsData.php │ │ ├── ContactFormSettingsDataFactory.php │ │ └── ContactFormSettingsFacade.php │ ├── Country │ │ ├── Country.php │ │ ├── CountryData.php │ │ ├── CountryDataFactory.php │ │ ├── CountryDomain.php │ │ ├── CountryFacade.php │ │ ├── CountryFactory.php │ │ ├── CountryRepository.php │ │ ├── CountryTranslation.php │ │ ├── Exception │ │ │ ├── CountryDomainNotFoundException.php │ │ │ └── CountryNotFoundException.php │ │ └── Grid │ │ │ └── CountryGridFactory.php │ ├── Customer │ │ ├── BillingAddress.php │ │ ├── BillingAddressData.php │ │ ├── BillingAddressDataFactory.php │ │ ├── BillingAddressFacade.php │ │ ├── BillingAddressFactory.php │ │ ├── BillingAddressRepository.php │ │ ├── Customer.php │ │ ├── CustomerData.php │ │ ├── CustomerDataFactory.php │ │ ├── CustomerFacade.php │ │ ├── CustomerFactory.php │ │ ├── CustomerRepository.php │ │ ├── DeliveryAddress.php │ │ ├── DeliveryAddressData.php │ │ ├── DeliveryAddressDataFactory.php │ │ ├── DeliveryAddressFacade.php │ │ ├── DeliveryAddressFactory.php │ │ ├── DeliveryAddressRepository.php │ │ ├── Exception │ │ │ ├── BillingAddressCompanyNumberIsNotUniqueException.php │ │ │ ├── BillingAddressNotFoundException.php │ │ │ ├── CustomerNotFoundException.php │ │ │ ├── CustomerUserIsNotLoggedException.php │ │ │ ├── CustomerUserNotFoundByEmailAndDomainException.php │ │ │ ├── CustomerUserNotFoundException.php │ │ │ ├── DeliveryAddressNotFoundException.php │ │ │ ├── DuplicateEmailException.php │ │ │ ├── EmptyCustomerUserIdentifierException.php │ │ │ └── InvalidResetPasswordHashUserException.php │ │ ├── Mail │ │ │ ├── CustomerActivationMail.php │ │ │ ├── CustomerMailFacade.php │ │ │ ├── RegistrationMail.php │ │ │ ├── ResetPasswordMail.php │ │ │ └── ResetPasswordMailFacade.php │ │ ├── UniqueBillingAddressChecker.php │ │ └── User │ │ │ ├── CurrentCustomerUser.php │ │ │ ├── CustomerUser.php │ │ │ ├── CustomerUserData.php │ │ │ ├── CustomerUserDataFactory.php │ │ │ ├── CustomerUserFacade.php │ │ │ ├── CustomerUserFactory.php │ │ │ ├── CustomerUserIdentifier.php │ │ │ ├── CustomerUserIdentifierFactory.php │ │ │ ├── CustomerUserListAdminFacade.php │ │ │ ├── CustomerUserLoginInformationProvider.php │ │ │ ├── CustomerUserPasswordFacade.php │ │ │ ├── CustomerUserRefreshTokenChain.php │ │ │ ├── CustomerUserRefreshTokenChainData.php │ │ │ ├── CustomerUserRefreshTokenChainDataFactory.php │ │ │ ├── CustomerUserRefreshTokenChainFacade.php │ │ │ ├── CustomerUserRefreshTokenChainFactory.php │ │ │ ├── CustomerUserRefreshTokenChainRepository.php │ │ │ ├── CustomerUserRepository.php │ │ │ ├── CustomerUserUpdateData.php │ │ │ ├── CustomerUserUpdateDataFactory.php │ │ │ ├── FrontendCustomerUserProvider.php │ │ │ ├── RemoveOldCustomerUserRefreshTokenChainsCronModule.php │ │ │ └── Role │ │ │ ├── CustomerUserRole.php │ │ │ ├── CustomerUserRoleGroup.php │ │ │ ├── CustomerUserRoleGroupData.php │ │ │ ├── CustomerUserRoleGroupDataFactory.php │ │ │ ├── CustomerUserRoleGroupFacade.php │ │ │ ├── CustomerUserRoleGroupFactory.php │ │ │ ├── CustomerUserRoleGroupGridFactory.php │ │ │ ├── CustomerUserRoleGroupRepository.php │ │ │ ├── CustomerUserRoleGroupSetting.php │ │ │ ├── CustomerUserRoleGroupTranslation.php │ │ │ ├── CustomerUserRoleResolver.php │ │ │ └── Exception │ │ │ └── CustomerUserRoleGroupNotFoundException.php │ ├── Feed │ │ ├── Exception │ │ │ ├── FeedNameNotUniqueException.php │ │ │ ├── FeedNotFoundException.php │ │ │ ├── TemplateBlockNotFoundException.php │ │ │ └── UnknownFeedTypeException.php │ │ ├── FeedConfig.php │ │ ├── FeedCronModule.php │ │ ├── FeedExport.php │ │ ├── FeedExportCreationDataQueue.php │ │ ├── FeedExportFactory.php │ │ ├── FeedFacade.php │ │ ├── FeedInfoInterface.php │ │ ├── FeedInterface.php │ │ ├── FeedItemInterface.php │ │ ├── FeedModule.php │ │ ├── FeedModuleFacade.php │ │ ├── FeedModuleFactory.php │ │ ├── FeedModuleRepository.php │ │ ├── FeedPathProvider.php │ │ ├── FeedRegistry.php │ │ ├── FeedRenderer.php │ │ └── FeedRendererFactory.php │ ├── GoPay │ │ ├── BankSwift │ │ │ ├── GoPayBankSwift.php │ │ │ ├── GoPayBankSwiftData.php │ │ │ ├── GoPayBankSwiftDataFactory.php │ │ │ ├── GoPayBankSwiftFacade.php │ │ │ ├── GoPayBankSwiftFactory.php │ │ │ └── GoPayBankSwiftRepository.php │ │ ├── Exception │ │ │ ├── GoPayNotConfiguredException.php │ │ │ ├── GoPayNotEnabledOnDomainException.php │ │ │ ├── GoPayPaymentDownloadException.php │ │ │ └── GoPaySendPaymentException.php │ │ ├── GoPayAvailablePaymentsCronModule.php │ │ ├── GoPayClient.php │ │ ├── GoPayClientFactory.php │ │ ├── GoPayFacade.php │ │ ├── GoPayOrderMapper.php │ │ ├── GoPayOrderStatus.php │ │ ├── GoPayRepository.php │ │ ├── OrderGoPayStatusUpdateCronModule.php │ │ └── PaymentMethod │ │ │ ├── GoPayPaymentMethod.php │ │ │ ├── GoPayPaymentMethodData.php │ │ │ ├── GoPayPaymentMethodDataFactory.php │ │ │ ├── GoPayPaymentMethodFacade.php │ │ │ ├── GoPayPaymentMethodFactory.php │ │ │ └── GoPayPaymentMethodRepository.php │ ├── Heureka │ │ ├── Exception │ │ │ └── LocaleNotSupportedException.php │ │ ├── HeurekaFacade.php │ │ ├── HeurekaSetting.php │ │ ├── HeurekaShopCertificationFactory.php │ │ └── HeurekaShopCertificationLocaleHelper.php │ ├── ImageSitemap │ │ ├── ImageSitemapCronModule.php │ │ ├── ImageSitemapDumper.php │ │ ├── ImageSitemapDumperFactory.php │ │ ├── ImageSitemapFacade.php │ │ ├── ImageSitemapFilePrefixer.php │ │ ├── ImageSitemapIndex.php │ │ ├── ImageSitemapItem.php │ │ ├── ImageSitemapItemImage.php │ │ ├── ImageSitemapListener.php │ │ └── ImageSitemapPopulateEvent.php │ ├── Inquiry │ │ ├── Exception │ │ │ └── InquiryNotFoundException.php │ │ ├── Inquiry.php │ │ ├── InquiryData.php │ │ ├── InquiryDataFactory.php │ │ ├── InquiryFacade.php │ │ ├── InquiryFactory.php │ │ ├── InquiryGridFactory.php │ │ ├── InquiryRepository.php │ │ └── Mail │ │ │ ├── InquiryMail.php │ │ │ ├── InquiryMailFacade.php │ │ │ └── InquiryMailTemplateVariablesProvider.php │ ├── LanguageConstant │ │ ├── Exception │ │ │ └── LanguageConstantNotFoundException.php │ │ ├── LanguageConstant.php │ │ ├── LanguageConstantData.php │ │ ├── LanguageConstantDataFactory.php │ │ ├── LanguageConstantFacade.php │ │ ├── LanguageConstantFactory.php │ │ ├── LanguageConstantGridFactory.php │ │ ├── LanguageConstantRepository.php │ │ └── LanguageConstantTranslation.php │ ├── LegalConditions │ │ └── LegalConditionsFacade.php │ ├── Localization │ │ ├── AbstractTranslatableEntity.php │ │ ├── DbIndexesFacade.php │ │ ├── DbIndexesRepository.php │ │ ├── Exception │ │ │ ├── AdminLocaleNotFoundException.php │ │ │ ├── ImplicitLocaleNotSetException.php │ │ │ ├── InvalidLocaleException.php │ │ │ ├── UndefinedLegacyCurrencyException.php │ │ │ └── UnsupportedCurrencyException.php │ │ ├── IntlCurrencyRepository.php │ │ ├── Localization.php │ │ ├── LocalizationListener.php │ │ ├── TranslatableEntityTrait.php │ │ └── TranslatableListener.php │ ├── Mail │ │ ├── Email.php │ │ ├── EventListener │ │ │ └── EnvelopeListener.php │ │ ├── Exception │ │ │ ├── InvalidMailTemplateVariablesConfigurationException.php │ │ │ ├── MailTemplateAlreadyExistsException.php │ │ │ ├── MailTemplateNotFoundException.php │ │ │ └── ResetPasswordHashNotValidException.php │ │ ├── Grid │ │ │ └── MailTemplateGridFactory.php │ │ ├── MailTemplate.php │ │ ├── MailTemplateAttachmentFilepathProvider.php │ │ ├── MailTemplateBuilder.php │ │ ├── MailTemplateConfiguration.php │ │ ├── MailTemplateData.php │ │ ├── MailTemplateDataFactory.php │ │ ├── MailTemplateFacade.php │ │ ├── MailTemplateFactory.php │ │ ├── MailTemplateRepository.php │ │ ├── MailTemplateSender │ │ │ ├── AdministratorResetPasswordMailTemplateSender.php │ │ │ ├── ComplaintMailTemplateSender.php │ │ │ ├── CustomerMailTemplateSender.php │ │ │ ├── DummyResetPasswordUser.php │ │ │ ├── DummyTwoFactorUser.php │ │ │ ├── Exception │ │ │ │ └── NoSenderForMailTemplateException.php │ │ │ ├── InquiryMailTemplateSender.php │ │ │ ├── MailTemplateSenderFacade.php │ │ │ ├── MailTemplateSenderInterface.php │ │ │ ├── OrderMailTemplateSender.php │ │ │ ├── TwoFactorMailSender.php │ │ │ └── WatchdogMailTemplateSender.php │ │ ├── MailTemplateVariables.php │ │ ├── Mailer.php │ │ ├── MailerSettingProvider.php │ │ ├── MessageData.php │ │ ├── MessageFactoryInterface.php │ │ └── Setting │ │ │ ├── MailSetting.php │ │ │ └── MailSettingFacade.php │ ├── Module │ │ ├── EnabledModule.php │ │ ├── EnabledModuleFactory.php │ │ ├── EnabledModuleRepository.php │ │ ├── Exception │ │ │ ├── NotUniqueModuleLabelException.php │ │ │ └── UnsupportedModuleException.php │ │ ├── ModuleFacade.php │ │ └── ModuleList.php │ ├── MultidomainEntityClassProvider.php │ ├── Navigation │ │ ├── Exception │ │ │ └── NavigationItemNotFoundException.php │ │ ├── NavigationItem.php │ │ ├── NavigationItemCategory.php │ │ ├── NavigationItemCategoryFacade.php │ │ ├── NavigationItemCategoryFactory.php │ │ ├── NavigationItemCategoryRepository.php │ │ ├── NavigationItemData.php │ │ ├── NavigationItemDataFactory.php │ │ ├── NavigationItemDetail.php │ │ ├── NavigationItemDetailFactory.php │ │ ├── NavigationItemFacade.php │ │ ├── NavigationItemFactory.php │ │ └── NavigationItemRepository.php │ ├── Newsletter │ │ ├── NewsletterFacade.php │ │ ├── NewsletterRepository.php │ │ ├── NewsletterSubscriber.php │ │ ├── NewsletterSubscriberFactory.php │ │ └── NewsletterSubscriberNotFoundException.php │ ├── NotificationBar │ │ ├── Exception │ │ │ └── NotificationBarNotFoundException.php │ │ ├── NotificationBar.php │ │ ├── NotificationBarData.php │ │ ├── NotificationBarDataFactory.php │ │ ├── NotificationBarFacade.php │ │ ├── NotificationBarFactory.php │ │ └── NotificationBarRepository.php │ ├── NumberSequence │ │ ├── AbstractNumberSequence.php │ │ ├── AbstractNumberSequenceRepository.php │ │ └── Exception │ │ │ └── NumberSequenceNotFoundException.php │ ├── Order │ │ ├── ContentPage │ │ │ ├── OrderContentPageFacade.php │ │ │ └── OrderContentPageSettingFacade.php │ │ ├── Exception │ │ │ ├── OrderHashGenerateException.php │ │ │ ├── OrderNotFoundException.php │ │ │ └── OrderNumberSequenceNotFoundException.php │ │ ├── Item │ │ │ ├── Exception │ │ │ │ ├── InvalidArgumentException.php │ │ │ │ ├── MainVariantCannotBeOrderedException.php │ │ │ │ ├── OrderItemHasNoIdException.php │ │ │ │ ├── OrderItemHasOnlyOneTotalPriceException.php │ │ │ │ ├── OrderItemNotFoundException.php │ │ │ │ ├── OrderItemUnitPricesAreInconsistentButTotalsAreNotForcedException.php │ │ │ │ └── WrongItemTypeException.php │ │ │ ├── OrderItem.php │ │ │ ├── OrderItemData.php │ │ │ ├── OrderItemDataFactory.php │ │ │ ├── OrderItemFacade.php │ │ │ ├── OrderItemFactory.php │ │ │ ├── OrderItemPriceCalculation.php │ │ │ ├── OrderItemTypeEnum.php │ │ │ ├── QuantifiedItemPrice.php │ │ │ ├── QuantifiedItemPriceInterface.php │ │ │ └── QuantifiedProduct.php │ │ ├── Listing │ │ │ ├── OrderListAdminFacade.php │ │ │ └── OrderListAdminRepository.php │ │ ├── Mail │ │ │ ├── OrderMail.php │ │ │ └── OrderMailFacade.php │ │ ├── Messenger │ │ │ ├── HeurekaPlacedOrderMessageHandler.php │ │ │ ├── PlacedOrderMessage.php │ │ │ └── PlacedOrderMessageDispatcher.php │ │ ├── Order.php │ │ ├── OrderData.php │ │ ├── OrderDataFactory.php │ │ ├── OrderEditResult.php │ │ ├── OrderFacade.php │ │ ├── OrderFactory.php │ │ ├── OrderHashGeneratorRepository.php │ │ ├── OrderNumberSequence.php │ │ ├── OrderNumberSequenceRepository.php │ │ ├── OrderPriceCalculation.php │ │ ├── OrderRepository.php │ │ ├── OrderTotalPrice.php │ │ ├── OrderTotalPriceInterface.php │ │ ├── OrderUrlGenerator.php │ │ ├── PlaceOrderFacade.php │ │ ├── Processing │ │ │ ├── OrderInput.php │ │ │ ├── OrderInputFactory.php │ │ │ ├── OrderProcessingData.php │ │ │ ├── OrderProcessingStack.php │ │ │ ├── OrderProcessor.php │ │ │ └── OrderProcessorMiddleware │ │ │ │ ├── AbstractPromoCodeMiddleware.php │ │ │ │ ├── AddPaymentMiddleware.php │ │ │ │ ├── AddProductsMiddleware.php │ │ │ │ ├── AddRoundingMiddleware.php │ │ │ │ ├── AddTransportMiddleware.php │ │ │ │ ├── ApplyFreeTransportAndPaymentPromoCodeMiddleware.php │ │ │ │ ├── ApplyNominalPromoCodeMiddleware.php │ │ │ │ ├── ApplyPercentagePromoCodeMiddleware.php │ │ │ │ ├── FreeTransportAndPaymentInformationMiddleware.php │ │ │ │ ├── OrderProcessorMiddlewareInterface.php │ │ │ │ ├── PersonalPickupPointMiddleware.php │ │ │ │ ├── SetCustomerUserMiddleware.php │ │ │ │ └── SetDeliveryAddressByDeliveryAddressUuidMiddleware.php │ │ ├── PromoCode │ │ │ ├── CurrentPromoCodeFacade.php │ │ │ ├── DiscountCalculation.php │ │ │ ├── Exception │ │ │ │ ├── AlreadyAppliedPromoCodeException.php │ │ │ │ ├── AvailableForRegisteredCustomerUserOnly.php │ │ │ │ ├── InvalidPromoCodeException.php │ │ │ │ ├── LimitNotReachedException.php │ │ │ │ ├── NoLongerValidPromoCodeDateTimeException.php │ │ │ │ ├── NotAvailableForCustomerUserPricingGroup.php │ │ │ │ ├── NotYetValidPromoCodeDateTimeException.php │ │ │ │ ├── PromoCodeException.php │ │ │ │ ├── PromoCodeNotFoundException.php │ │ │ │ └── PromoCodeWithoutRelationWithAnyProductFromCurrentCartException.php │ │ │ ├── Grid │ │ │ │ ├── PromoCodeGridFactory.php │ │ │ │ └── PromoCodeMassGeneratedBatchGridFactory.php │ │ │ ├── ProductPromoCodeFiller.php │ │ │ ├── PromoCode.php │ │ │ ├── PromoCodeApplicableProductsTotalPriceCalculator.php │ │ │ ├── PromoCodeBrand │ │ │ │ ├── PromoCodeBrand.php │ │ │ │ ├── PromoCodeBrandFactory.php │ │ │ │ └── PromoCodeBrandRepository.php │ │ │ ├── PromoCodeCategory │ │ │ │ ├── PromoCodeCategory.php │ │ │ │ ├── PromoCodeCategoryFactory.php │ │ │ │ └── PromoCodeCategoryRepository.php │ │ │ ├── PromoCodeData.php │ │ │ ├── PromoCodeDataFactory.php │ │ │ ├── PromoCodeFacade.php │ │ │ ├── PromoCodeFactory.php │ │ │ ├── PromoCodeFlag │ │ │ │ ├── PromoCodeFlag.php │ │ │ │ ├── PromoCodeFlagFactory.php │ │ │ │ └── PromoCodeFlagRepository.php │ │ │ ├── PromoCodeLimit │ │ │ │ ├── PromoCodeLimit.php │ │ │ │ ├── PromoCodeLimitFactory.php │ │ │ │ └── PromoCodeLimitRepository.php │ │ │ ├── PromoCodePricingGroup │ │ │ │ ├── PromoCodePricingGroup.php │ │ │ │ ├── PromoCodePricingGroupFactory.php │ │ │ │ └── PromoCodePricingGroupRepository.php │ │ │ ├── PromoCodeProduct │ │ │ │ ├── PromoCodeProduct.php │ │ │ │ ├── PromoCodeProductFactory.php │ │ │ │ └── PromoCodeProductRepository.php │ │ │ ├── PromoCodeRepository.php │ │ │ └── PromoCodeTypeEnum.php │ │ ├── Status │ │ │ ├── Exception │ │ │ │ ├── OrderStatusDeletionForbiddenException.php │ │ │ │ └── OrderStatusNotFoundException.php │ │ │ ├── Grid │ │ │ │ ├── OrderStatusGridFactory.php │ │ │ │ └── OrderStatusInlineEdit.php │ │ │ ├── OrderStatus.php │ │ │ ├── OrderStatusData.php │ │ │ ├── OrderStatusDataFactory.php │ │ │ ├── OrderStatusFacade.php │ │ │ ├── OrderStatusFactory.php │ │ │ ├── OrderStatusRepository.php │ │ │ ├── OrderStatusTranslation.php │ │ │ └── OrderStatusTypeEnum.php │ │ └── Watcher │ │ │ └── TransportAndPaymentCheckResult.php │ ├── Payment │ │ ├── AbstractPaymentTypeEnum.php │ │ ├── Exception │ │ │ ├── PaymentDomainNotFoundException.php │ │ │ ├── PaymentNotFoundException.php │ │ │ └── PaymentPriceNotFoundException.php │ │ ├── Grid │ │ │ └── PaymentGridFactory.php │ │ ├── IndependentPaymentVisibilityCalculation.php │ │ ├── Payment.php │ │ ├── PaymentData.php │ │ ├── PaymentDataFactory.php │ │ ├── PaymentDomain.php │ │ ├── PaymentFacade.php │ │ ├── PaymentFactory.php │ │ ├── PaymentPrice.php │ │ ├── PaymentPriceCalculation.php │ │ ├── PaymentPriceFactory.php │ │ ├── PaymentPriceProvider.php │ │ ├── PaymentRepository.php │ │ ├── PaymentSetupCreationData.php │ │ ├── PaymentSetupCreationDataFactory.php │ │ ├── PaymentTranslation.php │ │ ├── PaymentTypeEnum.php │ │ ├── PaymentTypeProvider.php │ │ ├── PaymentVisibilityCalculation.php │ │ ├── Service │ │ │ ├── Exception │ │ │ │ └── PaymentServiceFacadeNotRegisteredException.php │ │ │ ├── PaymentServiceFacade.php │ │ │ └── PaymentServiceInterface.php │ │ └── Transaction │ │ │ ├── Exception │ │ │ ├── PaymentTransactionHasNoAssignedPayment.php │ │ │ └── PaymentTransactionNotFoundException.php │ │ │ ├── PaymentTransaction.php │ │ │ ├── PaymentTransactionData.php │ │ │ ├── PaymentTransactionDataFactory.php │ │ │ ├── PaymentTransactionFacade.php │ │ │ ├── PaymentTransactionFactory.php │ │ │ ├── PaymentTransactionRepository.php │ │ │ └── Refund │ │ │ ├── PaymentTransactionRefundData.php │ │ │ └── PaymentTransactionRefundDataFactory.php │ ├── PersonalData │ │ ├── Mail │ │ │ ├── PersonalDataAccessMail.php │ │ │ ├── PersonalDataAccessMailFacade.php │ │ │ └── PersonalDataExportMail.php │ │ ├── PersonalDataAccessRequest.php │ │ ├── PersonalDataAccessRequestData.php │ │ ├── PersonalDataAccessRequestDataFactory.php │ │ ├── PersonalDataAccessRequestFacade.php │ │ ├── PersonalDataAccessRequestFactory.php │ │ ├── PersonalDataAccessRequestRepository.php │ │ ├── PersonalDataBreadcrumbGenerator.php │ │ └── PersonalDataExportFacade.php │ ├── PriceList │ │ ├── Exception │ │ │ └── PriceListNotFoundException.php │ │ ├── ImportPriceListResult.php │ │ ├── ImportPriceListResultFactory.php │ │ ├── PriceList.php │ │ ├── PriceListCsvColumnsEnum.php │ │ ├── PriceListData.php │ │ ├── PriceListDataFactory.php │ │ ├── PriceListFacade.php │ │ ├── PriceListFactory.php │ │ ├── PriceListGridFactory.php │ │ ├── PriceListProductPrice.php │ │ ├── PriceListProductPriceData.php │ │ ├── PriceListProductPriceDataFactory.php │ │ ├── PriceListProductPriceFactory.php │ │ └── PriceListRepository.php │ ├── Pricing │ │ ├── BasePriceCalculation.php │ │ ├── Currency │ │ │ ├── Currency.php │ │ │ ├── CurrencyData.php │ │ │ ├── CurrencyDataFactory.php │ │ │ ├── CurrencyEvent.php │ │ │ ├── CurrencyFacade.php │ │ │ ├── CurrencyFactory.php │ │ │ ├── CurrencyRepository.php │ │ │ ├── Exception │ │ │ │ ├── CurrencyNotFoundException.php │ │ │ │ ├── DeletingNotAllowedToDeleteCurrencyException.php │ │ │ │ └── InvalidCurrencyRoundingTypeException.php │ │ │ └── Grid │ │ │ │ ├── CurrencyGridFactory.php │ │ │ │ └── CurrencyInlineEdit.php │ │ ├── DelayedPricingSetting.php │ │ ├── Exception │ │ │ ├── InvalidArgumentException.php │ │ │ ├── InvalidInputPriceTypeException.php │ │ │ ├── InvalidRoundingTypeException.php │ │ │ └── NoProductPriceForPricingGroupException.php │ │ ├── Group │ │ │ ├── Exception │ │ │ │ └── PricingGroupNotFoundException.php │ │ │ ├── Grid │ │ │ │ ├── PricingGroupGridFactory.php │ │ │ │ └── PricingGroupInlineEdit.php │ │ │ ├── PricingGroup.php │ │ │ ├── PricingGroupData.php │ │ │ ├── PricingGroupDataFactory.php │ │ │ ├── PricingGroupEvent.php │ │ │ ├── PricingGroupFacade.php │ │ │ ├── PricingGroupFactory.php │ │ │ ├── PricingGroupRepository.php │ │ │ └── PricingGroupSettingFacade.php │ │ ├── InputPriceCalculation.php │ │ ├── InputPriceRecalculationScheduler.php │ │ ├── InputPriceRecalculator.php │ │ ├── Price.php │ │ ├── PriceCalculation.php │ │ ├── PriceConverter.php │ │ ├── PriceInterface.php │ │ ├── PricingSetting.php │ │ ├── Rounding.php │ │ ├── SpecialPrice │ │ │ ├── SpecialPrice.php │ │ │ ├── SpecialPriceFacade.php │ │ │ ├── SpecialPriceFactory.php │ │ │ └── SpecialPriceRepository.php │ │ └── Vat │ │ │ ├── Exception │ │ │ ├── VatMarkedAsDeletedDeleteException.php │ │ │ ├── VatNotFoundException.php │ │ │ └── VatWithReplacedDeleteException.php │ │ │ ├── Vat.php │ │ │ ├── VatData.php │ │ │ ├── VatDataFactory.php │ │ │ ├── VatDeletionCronModule.php │ │ │ ├── VatFacade.php │ │ │ ├── VatFactory.php │ │ │ ├── VatGridFactory.php │ │ │ ├── VatInlineEdit.php │ │ │ └── VatRepository.php │ ├── Product │ │ ├── Accessory │ │ │ ├── ProductAccessory.php │ │ │ ├── ProductAccessoryFacade.php │ │ │ ├── ProductAccessoryFactory.php │ │ │ └── ProductAccessoryRepository.php │ │ ├── AffectedProductsFacade.php │ │ ├── AffectedProductsRepository.php │ │ ├── Availability │ │ │ ├── AvailabilityStatusEnum.php │ │ │ ├── ProductAvailabilityFacade.php │ │ │ └── ProductStoreAvailabilityInformation.php │ │ ├── BestsellingProduct │ │ │ ├── AutomaticBestsellingProductRepository.php │ │ │ ├── BestsellingProductCombinator.php │ │ │ ├── BestsellingProductFacade.php │ │ │ ├── CachedBestsellingProductFacade.php │ │ │ ├── ManualBestsellingProduct.php │ │ │ ├── ManualBestsellingProductFacade.php │ │ │ ├── ManualBestsellingProductFactory.php │ │ │ └── ManualBestsellingProductRepository.php │ │ ├── Brand │ │ │ ├── Brand.php │ │ │ ├── BrandBreadcrumbGenerator.php │ │ │ ├── BrandData.php │ │ │ ├── BrandDataFactory.php │ │ │ ├── BrandDetailFriendlyUrlDataProvider.php │ │ │ ├── BrandDomain.php │ │ │ ├── BrandEvent.php │ │ │ ├── BrandFacade.php │ │ │ ├── BrandFactory.php │ │ │ ├── BrandRepository.php │ │ │ ├── BrandTranslation.php │ │ │ └── Exception │ │ │ │ ├── BrandDomainNotFoundException.php │ │ │ │ └── BrandNotFoundException.php │ │ ├── Collection │ │ │ ├── Exception │ │ │ │ ├── ProductImageUrlNotLoadedException.php │ │ │ │ ├── ProductParametersNotLoadedException.php │ │ │ │ └── ProductUrlNotLoadedException.php │ │ │ ├── ProductCollectionFacade.php │ │ │ ├── ProductParametersBatchLoader.php │ │ │ └── ProductUrlsBatchLoader.php │ │ ├── Elasticsearch │ │ │ ├── ProductExportRepository.php │ │ │ ├── ProductIndex.php │ │ │ ├── ProductRecalculationCronModule.php │ │ │ └── Scope │ │ │ │ ├── Exception │ │ │ │ ├── InvalidScopeException.php │ │ │ │ ├── ScopeRuleAlreadyExistsException.php │ │ │ │ └── ScopeRuleDoesNotExistException.php │ │ │ │ ├── ProductExportFieldProvider.php │ │ │ │ ├── ProductExportScopeConfig.php │ │ │ │ ├── ProductExportScopeConfigFacade.php │ │ │ │ └── ProductExportScopeRule.php │ │ ├── Exception │ │ │ ├── InvalidOrderingModeException.php │ │ │ ├── MainVariantCannotBeVariantException.php │ │ │ ├── ProductCannotBeTransformedException.php │ │ │ ├── ProductDomainNotFoundException.php │ │ │ ├── ProductIsAlreadyVariantException.php │ │ │ ├── ProductIsNotVariantException.php │ │ │ ├── ProductNotFoundException.php │ │ │ ├── ProductVisibilityNotFoundException.php │ │ │ ├── VariantCanBeAddedOnlyToMainVariantException.php │ │ │ └── VariantException.php │ │ ├── Filter │ │ │ ├── BrandFilterChoiceRepository.php │ │ │ ├── FlagFilterChoiceRepository.php │ │ │ ├── ParameterFilterChoice.php │ │ │ ├── ParameterFilterChoiceRepository.php │ │ │ ├── ParameterFilterData.php │ │ │ ├── PriceRange.php │ │ │ ├── PriceRangeRepository.php │ │ │ ├── ProductFilterConfig.php │ │ │ ├── ProductFilterConfigFactory.php │ │ │ ├── ProductFilterConfigIdsData.php │ │ │ ├── ProductFilterConfigIdsDataFactory.php │ │ │ ├── ProductFilterCountData.php │ │ │ ├── ProductFilterData.php │ │ │ ├── ProductFilterDataFactory.php │ │ │ └── ProductFilterElasticFacade.php │ │ ├── Flag │ │ │ ├── Exception │ │ │ │ └── FlagNotFoundException.php │ │ │ ├── Flag.php │ │ │ ├── FlagBreadcrumbGenerator.php │ │ │ ├── FlagData.php │ │ │ ├── FlagDataFactory.php │ │ │ ├── FlagDependenciesData.php │ │ │ ├── FlagDependenciesDataFactory.php │ │ │ ├── FlagDetailFriendlyUrlDataProvider.php │ │ │ ├── FlagEvent.php │ │ │ ├── FlagFacade.php │ │ │ ├── FlagFactory.php │ │ │ ├── FlagGridFactory.php │ │ │ ├── FlagRepository.php │ │ │ └── FlagTranslation.php │ │ ├── Image │ │ │ └── ProductImageFacade.php │ │ ├── List │ │ │ ├── Exception │ │ │ │ ├── ProductAlreadyInListException.php │ │ │ │ ├── ProductNotInListException.php │ │ │ │ └── UnknownProductListTypeException.php │ │ │ ├── ProductList.php │ │ │ ├── ProductListData.php │ │ │ ├── ProductListDataFactory.php │ │ │ ├── ProductListFacade.php │ │ │ ├── ProductListFactory.php │ │ │ ├── ProductListItem.php │ │ │ ├── ProductListItemFactory.php │ │ │ ├── ProductListRepository.php │ │ │ ├── ProductListTypeEnum.php │ │ │ └── RemoveOldProductListsCronModule.php │ │ ├── Listing │ │ │ ├── ProductListAdminFacade.php │ │ │ ├── ProductListAdminRepository.php │ │ │ ├── ProductListOrderingConfig.php │ │ │ └── ProductListOrderingModeForListFacade.php │ │ ├── MassAction │ │ │ ├── Exception │ │ │ │ └── UnsupportedSelectionType.php │ │ │ ├── ProductMassActionData.php │ │ │ ├── ProductMassActionFacade.php │ │ │ └── ProductMassActionRepository.php │ │ ├── Parameter │ │ │ ├── Exception │ │ │ │ ├── ParameterGroupNotFoundException.php │ │ │ │ ├── ParameterNotFoundException.php │ │ │ │ └── ParameterValueNotFoundException.php │ │ │ ├── Parameter.php │ │ │ ├── ParameterData.php │ │ │ ├── ParameterDataFactory.php │ │ │ ├── ParameterEvent.php │ │ │ ├── ParameterFacade.php │ │ │ ├── ParameterFactory.php │ │ │ ├── ParameterGridFactory.php │ │ │ ├── ParameterGroup.php │ │ │ ├── ParameterGroupData.php │ │ │ ├── ParameterGroupDataFactory.php │ │ │ ├── ParameterGroupEvent.php │ │ │ ├── ParameterGroupFacade.php │ │ │ ├── ParameterGroupFactory.php │ │ │ ├── ParameterGroupTranslation.php │ │ │ ├── ParameterRepository.php │ │ │ ├── ParameterTranslation.php │ │ │ ├── ParameterValue.php │ │ │ ├── ParameterValueConversionData.php │ │ │ ├── ParameterValueConversionDataFactory.php │ │ │ ├── ParameterValueData.php │ │ │ ├── ParameterValueDataFactory.php │ │ │ ├── ParameterValueFactory.php │ │ │ ├── ProductParameterValue.php │ │ │ ├── ProductParameterValueData.php │ │ │ ├── ProductParameterValueDataFactory.php │ │ │ ├── ProductParameterValueFactory.php │ │ │ ├── ProductParameterValuesLocalizedData.php │ │ │ └── ProductParameterValuesLocalizedDataFactory.php │ │ ├── Pricing │ │ │ ├── Exception │ │ │ │ └── MainVariantPriceCalculationException.php │ │ │ ├── PriceFactory.php │ │ │ ├── ProductInputPriceFacade.php │ │ │ ├── ProductManualInputPrice.php │ │ │ ├── ProductManualInputPriceFacade.php │ │ │ ├── ProductManualInputPriceFactory.php │ │ │ ├── ProductManualInputPriceRepository.php │ │ │ ├── ProductPrice.php │ │ │ ├── ProductPriceCalculation.php │ │ │ ├── ProductPriceCalculationForCustomerUser.php │ │ │ ├── ProductPriceInterface.php │ │ │ └── QuantifiedProductPriceCalculation.php │ │ ├── Product.php │ │ ├── ProductBreadcrumbGenerator.php │ │ ├── ProductCachedAttributesFacade.php │ │ ├── ProductCategoryDomain.php │ │ ├── ProductCategoryDomainFactory.php │ │ ├── ProductData.php │ │ ├── ProductDataFactory.php │ │ ├── ProductDetailFriendlyUrlDataProvider.php │ │ ├── ProductDomain.php │ │ ├── ProductElasticsearchProvider.php │ │ ├── ProductFacade.php │ │ ├── ProductFactory.php │ │ ├── ProductFrontendLimitProvider.php │ │ ├── ProductGridFactory.php │ │ ├── ProductInputPriceData.php │ │ ├── ProductInputPriceDataFactory.php │ │ ├── ProductListFriendlyUrlDataProvider.php │ │ ├── ProductOnCurrentDomainElasticFacade.php │ │ ├── ProductQueryParams.php │ │ ├── ProductRepository.php │ │ ├── ProductSellingDeniedRecalculator.php │ │ ├── ProductTranslation.php │ │ ├── ProductTypeEnum.php │ │ ├── ProductVariantFacade.php │ │ ├── ProductVisibility.php │ │ ├── ProductVisibilityFacade.php │ │ ├── ProductVisibilityFactory.php │ │ ├── ProductVisibilityRepository.php │ │ ├── Recalculation │ │ │ ├── AbstractProductRecalculationMessage.php │ │ │ ├── DispatchAffectedProductsSubscriber.php │ │ │ ├── DispatchAllProductsMessage.php │ │ │ ├── DispatchAllProductsMessageHandler.php │ │ │ ├── DispatchProductIdsBatchMessage.php │ │ │ ├── DispatchProductIdsBatchMessageHandler.php │ │ │ ├── ProductRecalculationDeduplicationFacade.php │ │ │ ├── ProductRecalculationDispatcher.php │ │ │ ├── ProductRecalculationDispatcherExecutor.php │ │ │ ├── ProductRecalculationFacade.php │ │ │ ├── ProductRecalculationMessageFailedListener.php │ │ │ ├── ProductRecalculationMessageHandler.php │ │ │ ├── ProductRecalculationPriorityEnum.php │ │ │ ├── ProductRecalculationPriorityHighMessage.php │ │ │ ├── ProductRecalculationPriorityRegularMessage.php │ │ │ ├── ProductRecalculationRepository.php │ │ │ └── UnknownProductRecalculationPriorityException.php │ │ ├── Search │ │ │ ├── AggregationResultToProductFilterCountDataTransformer.php │ │ │ ├── FilterQuery.php │ │ │ ├── FilterQueryFactory.php │ │ │ ├── ProductElasticsearchConverter.php │ │ │ ├── ProductElasticsearchRepository.php │ │ │ ├── ProductFilterCountDataElasticsearchRepository.php │ │ │ ├── ProductFilterDataToQueryTransformer.php │ │ │ ├── ProductIdsResult.php │ │ │ └── ProductsResult.php │ │ ├── TopProduct │ │ │ ├── TopProduct.php │ │ │ ├── TopProductFacade.php │ │ │ ├── TopProductFactory.php │ │ │ └── TopProductRepository.php │ │ └── Unit │ │ │ ├── Exception │ │ │ └── UnitNotFoundException.php │ │ │ ├── Unit.php │ │ │ ├── UnitData.php │ │ │ ├── UnitDataFactory.php │ │ │ ├── UnitEvent.php │ │ │ ├── UnitFacade.php │ │ │ ├── UnitFactory.php │ │ │ ├── UnitGridFactory.php │ │ │ ├── UnitInlineEdit.php │ │ │ ├── UnitRepository.php │ │ │ └── UnitTranslation.php │ ├── ProductVideo │ │ ├── ProductVideo.php │ │ ├── ProductVideoData.php │ │ ├── ProductVideoDataFactory.php │ │ ├── ProductVideoFacade.php │ │ ├── ProductVideoFactory.php │ │ ├── ProductVideoRepository.php │ │ ├── ProductVideoTranslations.php │ │ └── ProductVideoTranslationsRepository.php │ ├── SalesRepresentative │ │ ├── Exception │ │ │ └── SalesRepresentativeNotFoundException.php │ │ ├── SalesRepresentative.php │ │ ├── SalesRepresentativeData.php │ │ ├── SalesRepresentativeDataFactory.php │ │ ├── SalesRepresentativeFacade.php │ │ ├── SalesRepresentativeFactory.php │ │ ├── SalesRepresentativeGridFactory.php │ │ └── SalesRepresentativeRepository.php │ ├── Security │ │ ├── AccessControl │ │ │ ├── AccessControlRule.php │ │ │ ├── AccessControlRulesAttributeFinder.php │ │ │ ├── RouteAccessControlData.php │ │ │ └── RouteAccessControlDataProvider.php │ │ ├── AdminLogoutHandler.php │ │ ├── AdministratorChecker.php │ │ ├── AdministratorLoginFacade.php │ │ ├── CustomerLoginHandler.php │ │ ├── Exception │ │ │ ├── LoginAsRememberedUserException.php │ │ │ └── LoginWithDefaultPasswordException.php │ │ ├── Filesystem │ │ │ ├── Exception │ │ │ │ └── InstanceNotInjectedException.php │ │ │ └── FilemanagerAccess.php │ │ ├── LoginAdministratorAsUserUrlProvider.php │ │ ├── LoginListener.php │ │ ├── LogoutListener.php │ │ ├── Roles.php │ │ ├── TimelimitLoginInterface.php │ │ └── UniqueLoginInterface.php │ ├── Seo │ │ ├── HreflangLink.php │ │ ├── HreflangLinksFacade.php │ │ ├── Page │ │ │ ├── Exception │ │ │ │ ├── DefaultSeoPageCannotBeDeletedException.php │ │ │ │ ├── SeoPageDomainNotFoundException.php │ │ │ │ └── SeoPageNotFoundException.php │ │ │ ├── SeoPage.php │ │ │ ├── SeoPageData.php │ │ │ ├── SeoPageDataFactory.php │ │ │ ├── SeoPageDomain.php │ │ │ ├── SeoPageFacade.php │ │ │ ├── SeoPageFactory.php │ │ │ ├── SeoPageGridFactory.php │ │ │ ├── SeoPageRepository.php │ │ │ └── SeoPageSlugTransformer.php │ │ └── SeoSettingFacade.php │ ├── Sitemap │ │ ├── SitemapCronModule.php │ │ ├── SitemapDumper.php │ │ ├── SitemapDumperFactory.php │ │ ├── SitemapFacade.php │ │ ├── SitemapFilePrefixer.php │ │ ├── SitemapItem.php │ │ ├── SitemapListener.php │ │ ├── SitemapRepository.php │ │ └── UrlConcrete.php │ ├── Slider │ │ ├── Exception │ │ │ └── SliderItemNotFoundException.php │ │ ├── SliderItem.php │ │ ├── SliderItemData.php │ │ ├── SliderItemDataFactory.php │ │ ├── SliderItemFacade.php │ │ ├── SliderItemFactory.php │ │ └── SliderItemRepository.php │ ├── Statistics │ │ ├── StatisticsFacade.php │ │ ├── StatisticsProcessingFacade.php │ │ ├── StatisticsRepository.php │ │ ├── ValueByDateTimeDataPoint.php │ │ └── ValueByDateTimeDataPointFormatter.php │ ├── Stock │ │ ├── Exception │ │ │ ├── StockDomainNotFoundException.php │ │ │ └── StockNotFoundException.php │ │ ├── ProductStock.php │ │ ├── ProductStockData.php │ │ ├── ProductStockDataFactory.php │ │ ├── ProductStockFacade.php │ │ ├── ProductStockFactory.php │ │ ├── ProductStockRepository.php │ │ ├── Stock.php │ │ ├── StockData.php │ │ ├── StockDataFactory.php │ │ ├── StockDomain.php │ │ ├── StockEvent.php │ │ ├── StockFacade.php │ │ ├── StockFactory.php │ │ ├── StockRepository.php │ │ ├── StockSettingsData.php │ │ ├── StockSettingsDataFacade.php │ │ └── StockSettingsDataFactory.php │ ├── Store │ │ ├── ClosedDay │ │ │ ├── ClosedDay.php │ │ │ ├── ClosedDayData.php │ │ │ ├── ClosedDayDataFactory.php │ │ │ ├── ClosedDayFacade.php │ │ │ ├── ClosedDayFactory.php │ │ │ ├── ClosedDayRepository.php │ │ │ ├── Exception │ │ │ │ └── ClosedDayNotFoundException.php │ │ │ └── Grid │ │ │ │ └── ClosedDayGridFactory.php │ │ ├── Exception │ │ │ ├── StoreByUuidNotFoundException.php │ │ │ └── StoreNotFoundException.php │ │ ├── OpeningHours │ │ │ ├── Exception │ │ │ │ └── OpeningHoursNotFoundException.php │ │ │ ├── OpeningHours.php │ │ │ ├── OpeningHoursData.php │ │ │ ├── OpeningHoursDataFactory.php │ │ │ ├── OpeningHoursFactory.php │ │ │ ├── OpeningHoursRange.php │ │ │ ├── OpeningHoursRangeData.php │ │ │ ├── OpeningHoursRangeDataFactory.php │ │ │ ├── OpeningHoursRangeFactory.php │ │ │ └── StoreOpeningHoursProvider.php │ │ ├── Store.php │ │ ├── StoreData.php │ │ ├── StoreDataFactory.php │ │ ├── StoreFacade.php │ │ ├── StoreFactory.php │ │ ├── StoreFriendlyUrlProvider.php │ │ ├── StoreRepository.php │ │ └── StoresBreadcrumbGenerator.php │ ├── Transfer │ │ ├── Exception │ │ │ └── UnknownServiceTransferException.php │ │ ├── Issue │ │ │ ├── TransferIssue.php │ │ │ ├── TransferIssueData.php │ │ │ ├── TransferIssueDataFactory.php │ │ │ ├── TransferIssueFacade.php │ │ │ ├── TransferIssueFactory.php │ │ │ ├── TransferIssueLogCleanerCronModule.php │ │ │ └── TransferIssueRepository.php │ │ ├── Transfer.php │ │ ├── TransferFacade.php │ │ ├── TransferFactory.php │ │ ├── TransferIdentificationInterface.php │ │ ├── TransferLogger.php │ │ ├── TransferLoggerFactory.php │ │ ├── TransferLoggerInterface.php │ │ └── TransferRepository.php │ ├── Transport │ │ ├── AbstractTransportTypeEnum.php │ │ ├── Exception │ │ │ ├── TransportDomainNotFoundException.php │ │ │ ├── TransportNotFoundException.php │ │ │ └── TransportPriceNotFoundException.php │ │ ├── Grid │ │ │ └── TransportGridFactory.php │ │ ├── IndependentTransportVisibilityCalculation.php │ │ ├── PriceWithLimitData.php │ │ ├── Transport.php │ │ ├── TransportData.php │ │ ├── TransportDataFactory.php │ │ ├── TransportDomain.php │ │ ├── TransportFacade.php │ │ ├── TransportFactory.php │ │ ├── TransportInputPricesData.php │ │ ├── TransportInputPricesDataFactory.php │ │ ├── TransportPrice.php │ │ ├── TransportPriceCalculation.php │ │ ├── TransportPriceFacade.php │ │ ├── TransportPriceFactory.php │ │ ├── TransportPriceProvider.php │ │ ├── TransportPriceRepository.php │ │ ├── TransportRepository.php │ │ ├── TransportTranslation.php │ │ ├── TransportTypeEnum.php │ │ ├── TransportTypeProvider.php │ │ └── TransportVisibilityCalculation.php │ ├── TransportAndPayment │ │ └── FreeTransportAndPaymentFacade.php │ ├── UploadedFile │ │ ├── UploadedFileFormData.php │ │ └── UploadedFileFormDataFactory.php │ ├── UserConsentPolicy │ │ └── UserConsentPolicyFacade.php │ └── Watchdog │ │ ├── Exception │ │ └── WatchdogNotFoundException.php │ │ ├── Mail │ │ ├── WatchdogMail.php │ │ ├── WatchdogMailFacade.php │ │ └── WatchdogMailTemplateVariablesProvider.php │ │ ├── Watchdog.php │ │ ├── WatchdogCronModule.php │ │ ├── WatchdogData.php │ │ ├── WatchdogDataFactory.php │ │ ├── WatchdogFacade.php │ │ ├── WatchdogFactory.php │ │ ├── WatchdogGridFactory.php │ │ └── WatchdogRepository.php ├── Resources │ ├── config │ │ ├── directories.yaml │ │ ├── packages_registry.yaml │ │ ├── parameters_common.yaml │ │ ├── paths.yaml │ │ ├── routing.yaml │ │ ├── services.yaml │ │ ├── services │ │ │ ├── commands.yaml │ │ │ ├── forms.yaml │ │ │ └── twig.yaml │ │ ├── services_acc.yaml │ │ ├── services_dev.yaml │ │ └── services_test.yaml │ ├── database │ │ └── schema.sql │ ├── translations │ │ ├── customerMessages.cs.po │ │ ├── customerMessages.en.po │ │ ├── dataFixtures.cs.po │ │ ├── dataFixtures.en.po │ │ ├── messages.cs.po │ │ ├── messages.en.po │ │ ├── validators.cs.po │ │ └── validators.en.po │ └── views │ │ ├── Admin │ │ ├── Content │ │ │ ├── Administrator │ │ │ │ ├── RoleGroup │ │ │ │ │ ├── detail.html.twig │ │ │ │ │ ├── edit.html.twig │ │ │ │ │ ├── list.html.twig │ │ │ │ │ └── new.html.twig │ │ │ │ ├── detail.html.twig │ │ │ │ ├── disableTwoFactorAuthentication.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── enableTwoFactorAuthenticationByEmail.html.twig │ │ │ │ ├── enableTwoFactorAuthenticationByGoogleAuth.html.twig │ │ │ │ ├── invalidResetPasswordHash.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ ├── new.html.twig │ │ │ │ └── resetPassword.html.twig │ │ │ ├── Advert │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── Article │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── BestsellingProduct │ │ │ │ ├── detail.html.twig │ │ │ │ └── list.html.twig │ │ │ ├── Blog │ │ │ │ ├── Article │ │ │ │ │ ├── detail.html.twig │ │ │ │ │ ├── edit.html.twig │ │ │ │ │ ├── list.html.twig │ │ │ │ │ ├── listGrid.html.twig │ │ │ │ │ └── new.html.twig │ │ │ │ └── Category │ │ │ │ │ ├── detail.html.twig │ │ │ │ │ ├── edit.html.twig │ │ │ │ │ ├── list.html.twig │ │ │ │ │ └── new.html.twig │ │ │ ├── Brand │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── Category │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── CategorySeo │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ ├── newCategory.html.twig │ │ │ │ ├── newCombinations.html.twig │ │ │ │ ├── newFilters.html.twig │ │ │ │ ├── readyCombination.html.twig │ │ │ │ └── readyCombinationEditButton.html.twig │ │ │ ├── ClosedDay │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── Complaint │ │ │ │ ├── AdvancedSearch │ │ │ │ │ ├── advancedSearch.html.twig │ │ │ │ │ └── ruleForm.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── quickSearchFormContent.html.twig │ │ │ ├── ComplaintStatus │ │ │ │ ├── list.html.twig │ │ │ │ └── listGrid.html.twig │ │ │ ├── ContactFormSettings │ │ │ │ └── contactFormSettings.html.twig │ │ │ ├── Country │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── CspHeader │ │ │ │ └── setting.html.twig │ │ │ ├── Currency │ │ │ │ ├── currencySettings.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ └── listGrid.html.twig │ │ │ ├── Customer │ │ │ │ ├── BillingAddress │ │ │ │ │ ├── detail.html.twig │ │ │ │ │ └── edit.html.twig │ │ │ │ ├── DeliveryAddress │ │ │ │ │ ├── detail.html.twig │ │ │ │ │ ├── edit.html.twig │ │ │ │ │ └── new.html.twig │ │ │ │ ├── RoleGroup │ │ │ │ │ ├── detail.html.twig │ │ │ │ │ ├── edit.html.twig │ │ │ │ │ ├── list.html.twig │ │ │ │ │ └── new.html.twig │ │ │ │ ├── User │ │ │ │ │ ├── detail.html.twig │ │ │ │ │ ├── edit.html.twig │ │ │ │ │ └── new.html.twig │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── CustomerCommunication │ │ │ │ └── orderSubmitted.html.twig │ │ │ ├── Default │ │ │ │ ├── cronDetail.html.twig │ │ │ │ ├── cronListGrid.html.twig │ │ │ │ ├── cronModuleRunsListGrid.html.twig │ │ │ │ ├── index.html.twig │ │ │ │ └── searchResult.html.twig │ │ │ ├── Domain │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ └── listGrid.html.twig │ │ │ ├── EntityLog │ │ │ │ └── listGrid.html.twig │ │ │ ├── Feed │ │ │ │ ├── feedDeliveryDaysForOutOfStockProductsInfo.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listDelivery.html.twig │ │ │ │ └── listGrid.html.twig │ │ │ ├── FilePicker │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── quickSearchFormContent.html.twig │ │ │ ├── Flag │ │ │ │ ├── deleteForbidden.html.twig │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── Heureka │ │ │ │ └── setting.html.twig │ │ │ ├── Inquiry │ │ │ │ ├── detail.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── quickSearchFormContent.html.twig │ │ │ ├── LanguageConstant │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ └── listGrid.html.twig │ │ │ ├── LegalConditions │ │ │ │ ├── privacyPolicy.html.twig │ │ │ │ └── termsAndConditions.html.twig │ │ │ ├── Login │ │ │ │ ├── LoginFormTwoFA.html.twig │ │ │ │ ├── loginFailed.html.twig │ │ │ │ └── loginForm.html.twig │ │ │ ├── Mail │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ ├── mailTemplateSend.html.twig │ │ │ │ ├── setting.html.twig │ │ │ │ └── variablesList.html.twig │ │ │ ├── Navigation │ │ │ │ ├── Item │ │ │ │ │ ├── detail.html.twig │ │ │ │ │ ├── edit.html.twig │ │ │ │ │ └── new.html.twig │ │ │ │ └── itemsList.html.twig │ │ │ ├── Newsletter │ │ │ │ ├── list.html.twig │ │ │ │ └── listGrid.html.twig │ │ │ ├── NotificationBar │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── Order │ │ │ │ ├── AdvancedSearch │ │ │ │ │ ├── advancedSearch.html.twig │ │ │ │ │ └── ruleForm.html.twig │ │ │ │ ├── addProduct.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ ├── orderItem.html.twig │ │ │ │ ├── preview.html.twig │ │ │ │ └── quickSearchFormContent.html.twig │ │ │ ├── OrderStatus │ │ │ │ ├── list.html.twig │ │ │ │ └── listGrid.html.twig │ │ │ ├── Parameter │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── ParameterGroup │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── ParameterValue │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── values.html.twig │ │ │ ├── Payment │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── PersonalData │ │ │ │ └── index.html.twig │ │ │ ├── PriceList │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── import.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── Pricing │ │ │ │ └── Groups │ │ │ │ │ ├── list.html.twig │ │ │ │ │ ├── listGrid.html.twig │ │ │ │ │ └── pricingGroupSettings.html.twig │ │ │ ├── Product │ │ │ │ ├── AdvancedSearch │ │ │ │ │ ├── advancedSearch.html.twig │ │ │ │ │ └── ruleForm.html.twig │ │ │ │ ├── createVariant.html.twig │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ ├── new.html.twig │ │ │ │ ├── quickSearchFormContent.html.twig │ │ │ │ ├── visibility.html.twig │ │ │ │ └── visibilityItems.html.twig │ │ │ ├── ProductPicker │ │ │ │ ├── list.html.twig │ │ │ │ └── listGrid.html.twig │ │ │ ├── PromoCode │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ ├── listMassGeneratedBatch.html.twig │ │ │ │ ├── new.html.twig │ │ │ │ └── newMassGenerate.html.twig │ │ │ ├── SalesRepresentative │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── Seo │ │ │ │ ├── Page │ │ │ │ │ ├── detail.html.twig │ │ │ │ │ ├── edit.html.twig │ │ │ │ │ ├── list.html.twig │ │ │ │ │ ├── listGrid.html.twig │ │ │ │ │ └── new.html.twig │ │ │ │ ├── hreflangSetting.html.twig │ │ │ │ ├── robotsSetting.html.twig │ │ │ │ └── seoSetting.html.twig │ │ │ ├── Slider │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── Stock │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ ├── new.html.twig │ │ │ │ └── settings.html.twig │ │ │ ├── Store │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── StorefrontCache │ │ │ │ └── clean.html.twig │ │ │ ├── Superadmin │ │ │ │ ├── cssDocumentation.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ ├── mailWhitelist.html.twig │ │ │ │ ├── modules.html.twig │ │ │ │ ├── pricing.html.twig │ │ │ │ └── urlsListGrid.html.twig │ │ │ ├── TopCategory │ │ │ │ └── list.html.twig │ │ │ ├── TopProduct │ │ │ │ └── list.html.twig │ │ │ ├── Transfer │ │ │ │ └── Issue │ │ │ │ │ └── list.html.twig │ │ │ ├── Transport │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── TransportAndPayment │ │ │ │ ├── freeTransportAndPaymentLimitSetting.html.twig │ │ │ │ └── list.html.twig │ │ │ ├── Unit │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── setting.html.twig │ │ │ ├── UnusedFriendlyUrl │ │ │ │ ├── list.html.twig │ │ │ │ └── quickSearchFormContent.html.twig │ │ │ ├── UploadedFile │ │ │ │ ├── detail.html.twig │ │ │ │ ├── edit.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── new.html.twig │ │ │ ├── UserConsentPolicy │ │ │ │ └── setting.html.twig │ │ │ ├── Vat │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ ├── roundingSetting.html.twig │ │ │ │ └── vatSettings.html.twig │ │ │ └── Watchdog │ │ │ │ ├── Detail │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── quickSearchFormContent.html.twig │ │ │ │ ├── detail.html.twig │ │ │ │ ├── list.html.twig │ │ │ │ ├── listGrid.html.twig │ │ │ │ └── quickSearchFormContent.html.twig │ │ ├── Form │ │ │ ├── Product │ │ │ │ ├── Price │ │ │ │ │ ├── priceListOverviewType.html.twig │ │ │ │ │ ├── pricesByPricingGroupsType.html.twig │ │ │ │ │ └── productPricesWithVatSelectType.html.twig │ │ │ │ ├── productDetailFormTheme.html.twig │ │ │ │ └── productVideoValue.html.twig │ │ │ ├── abstractFileuploadFields.html.twig │ │ │ ├── abstractMultiplePicker.html.twig │ │ │ ├── adminDomainsForm.html.twig │ │ │ ├── blogCategoriesType.html.twig │ │ │ ├── blogCategoryCheckboxType.html.twig │ │ │ ├── colorpickerFields.html.twig │ │ │ ├── complaintItems.html.twig │ │ │ ├── customerUserListFields.html.twig │ │ │ ├── deliveryAddressListFields.html.twig │ │ │ ├── displayOnlyCompanyName.html.twig │ │ │ ├── displayOnlyCustomer.html.twig │ │ │ ├── displayOnlyDomainIconFields.html.twig │ │ │ ├── displayOnlyFields.html.twig │ │ │ ├── displayOnlyOrder.html.twig │ │ │ ├── displayOnlyUrl.html.twig │ │ │ ├── displayVariablesFormTheme.html.twig │ │ │ ├── filesPicker.html.twig │ │ │ ├── fileuploadFields.html.twig │ │ │ ├── grapesJsMailType.html.twig │ │ │ ├── grapesJsType.html.twig │ │ │ ├── hreflangSettingFormTheme.html.twig │ │ │ ├── imageuploadFields.html.twig │ │ │ ├── languageConstantFormTheme.html.twig │ │ │ ├── localizedFullWidth.html.twig │ │ │ ├── mailWhitelistFormTheme.html.twig │ │ │ ├── message.html.twig │ │ │ ├── multiLocaleBasicFileuploadFields.html.twig │ │ │ ├── multiLocaleFileuploadFields.html.twig │ │ │ ├── numberSlider.html.twig │ │ │ ├── orderItems.html.twig │ │ │ ├── orderlistFields.html.twig │ │ │ ├── parameterValueConversionList.html.twig │ │ │ ├── paymentTransactionsFormTheme.html.twig │ │ │ ├── priceListProductsPickerType.html.twig │ │ │ ├── priceandvattableByDomainsFields.html.twig │ │ │ ├── productParameterValue.html.twig │ │ │ ├── promoCodeFlagFormTheme.html.twig │ │ │ ├── promoCodeLimitFormTheme.html.twig │ │ │ ├── rolesType.html.twig │ │ │ ├── seoFormRowMacros.html.twig │ │ │ ├── storeOpeningHoursFormTheme.html.twig │ │ │ ├── theme.html.twig │ │ │ └── transportPricesFormTheme.html.twig │ │ ├── Grid │ │ │ └── Grid.html.twig │ │ ├── Inline │ │ │ ├── Breadcrumb │ │ │ │ └── breadcrumb.html.twig │ │ │ ├── Domain │ │ │ │ ├── filter.html.twig │ │ │ │ ├── locales.html.twig │ │ │ │ └── tabs.html.twig │ │ │ ├── FixedBar │ │ │ │ └── fixedBar.html.twig │ │ │ ├── FlashMessage │ │ │ │ ├── index.html.twig │ │ │ │ └── messages.html.twig │ │ │ ├── Icon │ │ │ │ └── info_icon.html.twig │ │ │ └── Menu │ │ │ │ └── menu.html.twig │ │ ├── Layout │ │ │ ├── base.html.twig │ │ │ ├── displayUuid.html.twig │ │ │ ├── layout.html.twig │ │ │ ├── layoutBlank.html.twig │ │ │ ├── layoutWindow.html.twig │ │ │ └── layoutWithPanel.html.twig │ │ └── Menu │ │ │ └── side_menu.html.twig │ │ ├── Common │ │ ├── image.html.twig │ │ └── maintenance.html.twig │ │ ├── Components │ │ ├── Collector │ │ │ ├── elasticSearch.html.twig │ │ │ └── shopsysFramework.html.twig │ │ ├── ConfirmDelete │ │ │ ├── directDelete.html.twig │ │ │ └── setNewAndDelete.html.twig │ │ ├── MailerSettingInfo │ │ │ └── mailerSettingInfo.html.twig │ │ └── RequiredSettings │ │ │ └── requiredSettings.html.twig │ │ ├── Front │ │ └── Content │ │ │ └── PersonalData │ │ │ ├── adress.xml.twig │ │ │ ├── complaints.xml.twig │ │ │ ├── export.xml.twig │ │ │ ├── orders.xml.twig │ │ │ └── watchdogs.xml.twig │ │ ├── Mail │ │ ├── ContactForm │ │ │ └── mail.html.twig │ │ └── Order │ │ │ ├── addresses.html.twig │ │ │ ├── billingAddress.html.twig │ │ │ ├── deliveryAddress.html.twig │ │ │ ├── note.html.twig │ │ │ ├── paymentInfo.html.twig │ │ │ ├── paymentInstructions.html.twig │ │ │ ├── products.html.twig │ │ │ ├── roundingInfo.html.twig │ │ │ ├── transportInfo.html.twig │ │ │ └── transportInstructions.html.twig │ │ └── Packetery │ │ └── createPacket.xml.twig ├── ShopsysFrameworkBundle.php └── Twig │ ├── CKEditorExtension.php │ ├── CategorySeoExtension.php │ ├── CropZerosExtension.php │ ├── CsrfExtension.php │ ├── CustomerExtensionTwig.php │ ├── DateTimeFormatterExtension.php │ ├── DomainExtension.php │ ├── Exception │ ├── HoneyPotRenderedBeforePasswordException.php │ └── InvalidArgumentException.php │ ├── FileThumbnail │ ├── FileThumbnailExtension.php │ └── FileThumbnailInfo.php │ ├── FileUploadExtension.php │ ├── FormDetailExtension.php │ ├── FormExtension.php │ ├── GrapesJsMailExtension.php │ ├── HiddenPriceExtension.php │ ├── HoneyPotExtension.php │ ├── IconExtension.php │ ├── ImageExtension.php │ ├── InputPriceLabelExtension.php │ ├── JoinNoneEmptyExtension.php │ ├── JsFormValidatorTwigExtension.php │ ├── LocalizationExtension.php │ ├── MailTemplateExtension.php │ ├── MailerSettingExtension.php │ ├── ModuleExtension.php │ ├── MoneyExtension.php │ ├── NameFallbackExtension.php │ ├── NoVarDumperExtension.php │ ├── NumberFormatterExtension.php │ ├── PaymentTransactionExtension.php │ ├── PriceExtension.php │ ├── ProductExtension.php │ ├── ProductVisibilityExtension.php │ ├── RequestExtension.php │ ├── RequiredSettingExtension.php │ ├── RouterExtension.php │ ├── SeoExtension.php │ ├── TranslationExtension.php │ ├── UploadedFileExtension.php │ └── VarDumperExtension.php └── tests ├── Test ├── Codeception │ ├── AbstractCheckbox.php │ ├── ActorInterface.php │ ├── AdminCheckbox.php │ ├── AdminRadiobutton.php │ └── FrontCheckbox.php ├── IsMoneyEqual.php ├── IsPriceEqual.php ├── MiddlewareTestCase.php ├── MoneyExporter.php ├── PriceExporter.php ├── ProductIndexBackupFacade.php ├── Provider │ ├── TestCurrencyProvider.php │ └── TestOrderProvider.php ├── SetTranslatorTrait.php └── TestTranslatableListener.php ├── Unit ├── Command │ └── CheckRedisCommandTest.php ├── Component │ ├── Bytes │ │ └── BytesHelperTest.php │ ├── Cache │ │ └── InMemoryCacheTest.php │ ├── ClassExtension │ │ ├── AnnotationsAdderTest.php │ │ ├── AnnotationsReplacerTest.php │ │ ├── DocBlockParserTest.php │ │ ├── MethodAnnotationsFactoryTest.php │ │ ├── PropertyAnnotationsFactoryTest.php │ │ └── Source │ │ │ ├── AnnotationsAdderTest │ │ │ ├── DummyClassWithAnAnnotation.php │ │ │ ├── DummyClassWithMethodAnnotation.php │ │ │ └── DummyClassWithNoAnnotation.php │ │ │ ├── DummyClassForAnnotationsReplacer.php │ │ │ ├── MethodAnnotationsFactoryTest │ │ │ ├── BaseClass.php │ │ │ ├── BaseClass2.php │ │ │ ├── BaseClass3.php │ │ │ ├── BaseClass4.php │ │ │ ├── BaseClass5.php │ │ │ ├── ChildClass.php │ │ │ ├── ChildClass2.php │ │ │ ├── ChildClass3.php │ │ │ ├── ChildClass4.php │ │ │ └── ChildClass5.php │ │ │ └── PropertyAnnotationsFactoryTest │ │ │ ├── BaseClass.php │ │ │ ├── BaseClass2.php │ │ │ ├── BaseClass3.php │ │ │ ├── BaseClass4.php │ │ │ ├── ChildClass.php │ │ │ ├── ChildClass2.php │ │ │ ├── ChildClass3.php │ │ │ └── ChildClass4.php │ ├── Constraints │ │ ├── FileExtensionMaxLengthValidatorTest.php │ │ └── UniqueSlugsOnDomainsValidatorTest.php │ ├── Cron │ │ ├── CronFacadeTest.php │ │ ├── CronFilterTest.php │ │ ├── CronModuleExecutorTest.php │ │ ├── CronModuleRepositoryTest.php │ │ └── CronTimeResolverTest.php │ ├── DataFixture │ │ └── PersistentReferenceFacadeTest.php │ ├── Doctrine │ │ ├── NotNullableColumnsFinderTest.php │ │ ├── QueryBuilderExtenderTest.php │ │ ├── SqlParametersFlattenerTest.php │ │ ├── StringColumnsFinderTest.php │ │ └── __fixtures │ │ │ ├── Product.php │ │ │ └── ProductData.php │ ├── Domain │ │ ├── DomainDataCreatorTest.php │ │ ├── DomainSubscriberTest.php │ │ ├── DomainTest.php │ │ └── Multidomain │ │ │ └── MultidomainEntityClassFinderTest.php │ ├── Elasticsearch │ │ ├── IndexDefinitionTest.php │ │ ├── IndexFacadeTest.php │ │ ├── IndexRegistryTest.php │ │ └── __fixtures │ │ │ ├── CategoryIndex.php │ │ │ └── definitions │ │ │ ├── invalidJson │ │ │ └── product │ │ │ │ └── 1.json │ │ │ └── valid │ │ │ └── product │ │ │ └── 1.json │ ├── EntityExtension │ │ └── EntityNameResolverTest.php │ ├── Filesystem │ │ ├── FilepathComparatorTest.php │ │ └── Resources │ │ │ ├── dir │ │ │ └── fileInside │ │ │ └── fileOutside │ ├── Form │ │ ├── FormTimeProviderTest.php │ │ └── MultipleFormSettingTest.php │ ├── GrapesJs │ │ └── GrapesJsParserTest.php │ ├── Grid │ │ └── GridTest.php │ ├── HttpFoundation │ │ ├── FragmentHandlerTest.php │ │ └── SubRequestListenerTest.php │ ├── Image │ │ ├── Config │ │ │ ├── ImageConfigLoaderTest.php │ │ │ └── ImageConfigTest.php │ │ ├── DirectoryStructureCreatorTest.php │ │ ├── ImageFactoryTest.php │ │ └── ImageLocatorTest.php │ ├── Localization │ │ └── DateTimeFormatterTest.php │ ├── Messenger │ │ └── CloseIdleConnectionSubscriberTest.php │ ├── Money │ │ └── MoneyTest.php │ ├── Paginator │ │ └── PaginationResultTest.php │ ├── Router │ │ ├── CurrentDomainRouterTest.php │ │ ├── DomainRouterFactoryTest.php │ │ ├── DomainRouterTest.php │ │ ├── FriendlyUrl │ │ │ ├── FriendlyUrlFactoryTest.php │ │ │ └── FriendlyUrlUniqueResultFactoryTest.php │ │ ├── LocalizedRouterFactoryTest.php │ │ ├── Resources │ │ │ ├── routing_front_cs.yaml │ │ │ └── routing_front_en.yaml │ │ └── Security │ │ │ ├── ControllerNotProtected.php │ │ │ ├── ControllerProtected.php │ │ │ └── RouteCsrfProtectorTest.php │ ├── Setting │ │ ├── SettingTest.php │ │ └── SettingValueTest.php │ ├── String │ │ ├── DatabaseSearchingTest.php │ │ ├── HashGeneratorTest.php │ │ └── TransformStringTest.php │ ├── Transformers │ │ ├── IndexedBooleansToArrayOfIndexesTransformerTest.php │ │ ├── ProductIdToProductTransformerTest.php │ │ ├── RemoveDuplicatesFromArrayTransformerTest.php │ │ └── RemoveWhitespacesTransformerTest.php │ ├── Translation │ │ ├── ConfigConstraintMessageExtractorTest.php │ │ ├── ConstraintMessagePropertyExtractorTest.php │ │ ├── ConstraintViolationExtractorTest.php │ │ ├── JsFileExtractorTest.php │ │ ├── MessageIdNormalizerTest.php │ │ ├── PhpFileExtractorTest.php │ │ ├── PoDumperTest.php │ │ ├── Resources │ │ │ ├── ConstraintClass.php │ │ │ ├── ConstraintViolationClass.php │ │ │ ├── Controller.php │ │ │ ├── DummyMutation.types.yaml │ │ │ ├── NonConstraintClass.php │ │ │ ├── dump.po │ │ │ └── translationsDump.json │ │ └── TranslatorTest.php │ ├── UploadedFile │ │ ├── Config │ │ │ ├── UploadedFileConfigLoaderTest.php │ │ │ ├── UploadedFileConfigTest.php │ │ │ └── test_config_uploaded_files.yaml │ │ ├── Dummy.php │ │ ├── UploadedFileDeleteDoctrineListenerTest.php │ │ ├── UploadedFileFactoryTest.php │ │ ├── UploadedFileLocatorData │ │ │ └── entityName │ │ │ │ └── dummy.txt │ │ └── UploadedFileLocatorTest.php │ └── UtilsTest.php ├── Form │ ├── Admin │ │ └── Country │ │ │ └── CountryFormTypeTest.php │ └── DateTimeTypeTest.php ├── Migrations │ └── DataModifiers │ │ └── CountryDataModifierVersion20190121094400Test.php ├── Model │ ├── AdvancedSearch │ │ ├── AdvancedSearchQueryBuilderExtenderTest.php │ │ └── RuleFormViewDataFactoryTest.php │ ├── Blog │ │ └── Article │ │ │ └── Elasticsearch │ │ │ ├── BlogArticleElasticsearchDataFetcherTest.php │ │ │ ├── BlogArticleElasticsearchRepositoryTest.php │ │ │ └── FilterQueryTest.php │ ├── Cart │ │ └── CartTest.php │ ├── Category │ │ ├── CategoryFactoryTest.php │ │ └── CategoryNestedSetCalculatorTest.php │ ├── Customer │ │ ├── CurrentCustomerUserTest.php │ │ ├── CustomerUserIdentifierTest.php │ │ ├── CustomerUserUpdateDataFactoryTest.php │ │ ├── Mock │ │ │ └── TokenMock.php │ │ ├── TestCustomerProvider.php │ │ ├── UserFactoryTest.php │ │ └── UserTest.php │ ├── Feed │ │ └── FeedCronModuleTest.php │ ├── Localization │ │ └── IntlCurrencyRepositoryTest.php │ ├── Mail │ │ ├── EnvelopeListenerTest.php │ │ └── MailTemplateVariablesTest.php │ ├── Newsletter │ │ └── NewsletterFacadeTest.php │ ├── Order │ │ ├── Item │ │ │ ├── OrderItemPriceCalculationTest.php │ │ │ └── OrderItemTest.php │ │ ├── OrderDataTest.php │ │ ├── OrderFacadeHeurekaTest.php │ │ ├── OrderPriceCalculationTest.php │ │ ├── OrderTest.php │ │ ├── Processing │ │ │ ├── OrderProcessingTest.php │ │ │ └── OrderProcessorMiddleware │ │ │ │ ├── AddPaymentMiddlewareTest.php │ │ │ │ ├── AddProductsMiddlewareTest.php │ │ │ │ ├── AddRoundingMiddlewareTest.php │ │ │ │ ├── AddTransportMiddlewareTest.php │ │ │ │ ├── ApplyFreeTransportAndPaymentPromoCodeMiddlewareTest.php │ │ │ │ ├── ApplyNominalPromoCodeMiddlewareTest.php │ │ │ │ ├── ApplyPercentagePromoCodeMiddlewareTest.php │ │ │ │ ├── FreeTransportAndPaymentInformationMiddlewareTest.php │ │ │ │ ├── PersonalPickupPointMiddlewareTest.php │ │ │ │ ├── SetCustomerUserMiddlewareTest.php │ │ │ │ └── SetDeliveryAddressByDeliveryAddressUuidMiddlewareTest.php │ │ └── Status │ │ │ └── OrderStatusTest.php │ ├── Payment │ │ ├── IndependentPaymentVisibilityCalculationTest.php │ │ └── PaymentPriceCalculationTest.php │ ├── Pricing │ │ ├── BasePriceCalculationTest.php │ │ ├── InputPriceCalculationTest.php │ │ ├── PriceCalculationTest.php │ │ ├── PriceTest.php │ │ ├── RoundingTest.php │ │ └── Vat │ │ │ └── VatFacadeTest.php │ ├── Product │ │ ├── BestsellingProduct │ │ │ └── BestsellingProductCombinatorTest.php │ │ ├── Pricing │ │ │ ├── ProductPriceCalculationForCustomerUserTest.php │ │ │ └── ProductPriceCalculationTest.php │ │ ├── ProductDataFactoryTest.php │ │ ├── ProductFactoryTest.php │ │ ├── ProductTest.php │ │ ├── ProductVisibilityFacadeTest.php │ │ ├── Search │ │ │ └── ProductElasticsearchConverterTest.php │ │ └── TestProductProvider.php │ ├── Security │ │ ├── Filesystem │ │ │ ├── FilemanagerAccessTest.php │ │ │ ├── sandbox │ │ │ │ ├── dummyFile │ │ │ │ └── subdirectory │ │ │ │ │ └── dummyFile │ │ │ └── sandboxSecreet │ │ │ │ └── dummyFile │ │ └── LoginListenerTest.php │ └── Transport │ │ ├── TransportPriceCalculationTest.php │ │ ├── TransportTest.php │ │ └── TransportVisibilityCalculationTest.php ├── TestCase.php └── Twig │ ├── CropZerosExtensionTest.php │ ├── DateTimeFormatterExtensionTest.php │ └── FileThumbnail │ └── FileThumbnailExtensionTest.php └── autoload.php /.gitignore: -------------------------------------------------------------------------------- 1 | /.php_cs.cache 2 | /components 3 | /vendor 4 | /composer.lock 5 | /.phpunit.cache 6 | -------------------------------------------------------------------------------- /assets/.eslintignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | 3 | -------------------------------------------------------------------------------- /assets/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | package-lock.json 3 | -------------------------------------------------------------------------------- /assets/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | [ 4 | '@babel/preset-env', 5 | { 6 | targets: { 7 | node: 'current' 8 | } 9 | } 10 | ] 11 | ] 12 | }; 13 | -------------------------------------------------------------------------------- /assets/js/admin/components/ColorPicker.js: -------------------------------------------------------------------------------- 1 | import '@claviska/jquery-minicolors'; 2 | import Register from '../../common/utils/Register'; 3 | 4 | export default class ColorPicker { 5 | 6 | static init ($container) { 7 | $container.filterAllNodes('.js-color-picker').minicolors({ 8 | theme: 'bootstrap' 9 | }); 10 | } 11 | 12 | } 13 | 14 | (new Register()).registerCallback(ColorPicker.init, 'ColorPicker.init'); 15 | -------------------------------------------------------------------------------- /assets/js/admin/components/CounterUp.js: -------------------------------------------------------------------------------- 1 | import counterUp from 'counterup2'; 2 | import Register from '../../common/utils/Register'; 3 | 4 | export default class CounterUp { 5 | 6 | static init () { 7 | document.querySelectorAll('.js-counter').forEach(counterItem => { 8 | counterUp(counterItem, { 9 | duration: 1000, 10 | delay: 10 11 | }); 12 | }); 13 | } 14 | 15 | } 16 | 17 | (new Register().registerCallback(CounterUp.init, 'CounterUp.init')); 18 | -------------------------------------------------------------------------------- /assets/js/admin/components/MassAction.js: -------------------------------------------------------------------------------- 1 | import Register from '../../common/utils/Register'; 2 | 3 | export default class MassAction { 4 | static init ($container) { 5 | $container.filterAllNodes('#js-mass-action-button').click(() => $('#js-mass-action').toggleClass('active')); 6 | } 7 | } 8 | 9 | (new Register()).registerCallback(MassAction.init, 'MassAction.init'); 10 | -------------------------------------------------------------------------------- /assets/js/admin/components/fileUploadInit.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/js/admin/components/getBottomOffset.js: -------------------------------------------------------------------------------- 1 | export function getBottomOffset () { 2 | const windowFixedBarHeight = $('.js-window-fixed-bar').height() || 0; 3 | const symfonyBarHeight = $('.sf-toolbar').height() || 0; 4 | 5 | return windowFixedBarHeight + symfonyBarHeight; 6 | } 7 | -------------------------------------------------------------------------------- /assets/js/admin/components/initBootstrapFileInput.js: -------------------------------------------------------------------------------- 1 | import '../bootstrap/file_input'; 2 | import Register from '../../common/utils/Register'; 3 | 4 | export function initBootstrapFileInput ($container) { 5 | $container.filterAllNodes('input[type=file]').bootstrapFileInput(); 6 | $container.filterAllNodes('.file-inputs').bootstrapFileInput(); 7 | } 8 | 9 | (new Register()).registerCallback(initBootstrapFileInput, 'initBootstrapFileInput'); 10 | -------------------------------------------------------------------------------- /assets/js/admin/validation/customization/index.js: -------------------------------------------------------------------------------- 1 | import './customizeCollectionBundle'; 2 | import './ShopsysShopBundleComponentTransformersRemoveWhitespacesTransformer'; 3 | import './ShopsysShopBundleComponentTransformersProductParameterValueToProductParameterValuesLocalizedTransformer'; 4 | import './validationInit'; 5 | -------------------------------------------------------------------------------- /assets/js/admin/validation/customization/validationInit.js: -------------------------------------------------------------------------------- 1 | import CustomizeBundle from '../../../common/validation/customizeBundle'; 2 | import Register from '../../../common/utils/Register'; 3 | 4 | export function validationInit () { 5 | const $formattedFormErrors = CustomizeBundle.getFormattedFormErrors(document); 6 | $('.js-flash-message.in-message--danger').append($formattedFormErrors); 7 | } 8 | 9 | (new Register()).registerCallback(validationInit); 10 | -------------------------------------------------------------------------------- /assets/js/admin/validation/form/validation.js: -------------------------------------------------------------------------------- 1 | export const VALIDATION_GROUP_DEFAULT = 'Default'; 2 | -------------------------------------------------------------------------------- /assets/js/admin/validation/form/validationComplaintItem.js: -------------------------------------------------------------------------------- 1 | import Register from '../../../common/utils/Register'; 2 | 3 | function validationComplaintItem ($container) { 4 | window.$('form[name="complaint_form"]').jsFormValidator({ 5 | callbacks: { 6 | validateQuantityIsLessOrEqualThanOrdered: function () { 7 | // JS validation is not necessary 8 | } 9 | } 10 | }); 11 | } 12 | 13 | (new Register()).registerCallback(validationComplaintItem); 14 | -------------------------------------------------------------------------------- /assets/js/admin/validation/form/validationHreflangSetting.js: -------------------------------------------------------------------------------- 1 | import Register from '../../../common/utils/Register'; 2 | 3 | export default function validationHreflangSetting () { 4 | const hreflangForm = $('#hreflang_setting_form_hreflang_collection'); 5 | hreflangForm.jsFormValidator({ 6 | callbacks: { 7 | validateDomainUniqueness: function () { 8 | 9 | } 10 | } 11 | }); 12 | } 13 | 14 | (new Register()).registerCallback(validationHreflangSetting, 'validationHreflangSetting'); 15 | -------------------------------------------------------------------------------- /assets/js/admin/validation/form/validationParameterName.js: -------------------------------------------------------------------------------- 1 | import Register from '../../../common/utils/Register'; 2 | 3 | function validationParameterName ($container) { 4 | window.$('form[name="parameter_form"]').jsFormValidator({ 5 | callbacks: { 6 | validateUniqueParameterName: function () { 7 | // JS validation is not necessary 8 | } 9 | } 10 | }); 11 | } 12 | 13 | (new Register()).registerCallback(validationParameterName); 14 | -------------------------------------------------------------------------------- /assets/js/admin/validation/form/validationTransportPrices.js: -------------------------------------------------------------------------------- 1 | import Register from '../../../common/utils/Register'; 2 | 3 | function validationTransportPrices ($container) { 4 | window.$('form[name="transport_form"]').jsFormValidator({ 5 | callbacks: { 6 | validateTransportPricesOnDomain: function () { 7 | // JS validation is not necessary 8 | } 9 | } 10 | }); 11 | } 12 | 13 | (new Register()).registerCallback(validationTransportPrices); 14 | -------------------------------------------------------------------------------- /assets/js/common/components/index.js: -------------------------------------------------------------------------------- 1 | import './datePicker'; 2 | import './tabs'; 3 | import './ToggleElement'; 4 | import './tooltip'; 5 | import './CheckboxToggle'; 6 | import './copyToClipboard'; 7 | -------------------------------------------------------------------------------- /assets/js/common/components/tooltip.js: -------------------------------------------------------------------------------- 1 | import Register from '../utils/Register'; 2 | import '../../common/bootstrap/tooltip'; 3 | 4 | export const tooltip = ($container) => $container.filterAllNodes('.js-tooltip[title]').tooltip(); 5 | 6 | (new Register()).registerCallback(tooltip, 'tooltip'); 7 | -------------------------------------------------------------------------------- /assets/js/common/utils/KeyCodes.js: -------------------------------------------------------------------------------- 1 | export const KeyCodes = { 2 | ENTER: 13, 3 | ESCAPE: 27, 4 | BACKSPACE: 8 5 | }; 6 | -------------------------------------------------------------------------------- /assets/js/common/utils/escapeHtml.js: -------------------------------------------------------------------------------- 1 | export const escapeHtml = (string) => $('').text(string).html(); 2 | -------------------------------------------------------------------------------- /assets/js/common/utils/number.js: -------------------------------------------------------------------------------- 1 | export const parseNumber = (value) => { 2 | if (!value) { 3 | return null; 4 | } 5 | 6 | const compareValue = value.toString().replace(',', '.'); 7 | const regexpNumber = /^[-+]?[0-9]+((\.|,)?[0-9]+)?$/; 8 | if (regexpNumber.test(compareValue)) { 9 | return parseFloat(compareValue); 10 | } else { 11 | return null; 12 | } 13 | }; 14 | 15 | export const formatDecimalNumber = (value, scale) => value.toFixed(scale); 16 | -------------------------------------------------------------------------------- /assets/js/common/utils/priceFormatter.js: -------------------------------------------------------------------------------- 1 | export const formatPrice = (price, locale, currency) => { 2 | return new Intl.NumberFormat(locale, { 3 | style: 'currency', 4 | currency: currency 5 | }).format(price); 6 | }; 7 | -------------------------------------------------------------------------------- /assets/public/admin/fonts/Roboto400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/fonts/Roboto400.ttf -------------------------------------------------------------------------------- /assets/public/admin/fonts/Roboto400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/fonts/Roboto400.woff2 -------------------------------------------------------------------------------- /assets/public/admin/fonts/Roboto500.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/fonts/Roboto500.ttf -------------------------------------------------------------------------------- /assets/public/admin/fonts/Roboto500.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/fonts/Roboto500.woff2 -------------------------------------------------------------------------------- /assets/public/admin/images/bg/disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/bg/disabled.png -------------------------------------------------------------------------------- /assets/public/admin/images/custom_checkbox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/custom_checkbox.png -------------------------------------------------------------------------------- /assets/public/admin/images/custom_radio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/custom_radio.png -------------------------------------------------------------------------------- /assets/public/admin/images/flags/cs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/flags/cs.png -------------------------------------------------------------------------------- /assets/public/admin/images/flags/de.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/flags/de.png -------------------------------------------------------------------------------- /assets/public/admin/images/flags/en.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/flags/en.png -------------------------------------------------------------------------------- /assets/public/admin/images/flags/hu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/flags/hu.png -------------------------------------------------------------------------------- /assets/public/admin/images/flags/pl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/flags/pl.png -------------------------------------------------------------------------------- /assets/public/admin/images/flags/sk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/flags/sk.png -------------------------------------------------------------------------------- /assets/public/admin/images/icons/level.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/icons/level.png -------------------------------------------------------------------------------- /assets/public/admin/images/icons/star.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/icons/star.png -------------------------------------------------------------------------------- /assets/public/admin/images/preloader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shopsys/framework/36c10f102e8bbf9f3f2916d41fa5ee27949ab19d/assets/public/admin/images/preloader.gif -------------------------------------------------------------------------------- /assets/public/admin/svg/filter.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/styles/admin/components/box/expand.less: -------------------------------------------------------------------------------- 1 | .box-expand { 2 | margin-bottom: 10px; 3 | 4 | background: @bg-box; 5 | 6 | &__heading { 7 | margin: 0; 8 | padding: 10px 20px 10px 40px; 9 | position: relative; 10 | 11 | font-size: 14px; 12 | text-transform: uppercase; 13 | font-weight: 700; 14 | cursor: pointer; 15 | } 16 | 17 | &__hidden { 18 | padding: 20px; 19 | } 20 | } 21 | 22 | 23 | -------------------------------------------------------------------------------- /assets/styles/admin/components/form/edit-block.less: -------------------------------------------------------------------------------- 1 | .form-edit-block { 2 | display: flex; 3 | flex-direction: row; 4 | align-items: center; 5 | 6 | &__info { 7 | padding: 0 5px; 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /assets/styles/admin/components/form/inline-edit.less: -------------------------------------------------------------------------------- 1 | .form-inline-edit { 2 | display: inline-block; 3 | height: @input-height; 4 | 5 | font-size: 0; 6 | 7 | &__item { 8 | display: inline; 9 | height: @input-height; 10 | line-height: @input-height; 11 | 12 | font-size: 14px; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /assets/styles/admin/components/in/disabled.less: -------------------------------------------------------------------------------- 1 | .in-disabled { 2 | pointer-events: none; 3 | opacity: 0.45; 4 | 5 | cursor: not-allowed; 6 | } -------------------------------------------------------------------------------- /assets/styles/admin/components/in/drop-place.less: -------------------------------------------------------------------------------- 1 | .in-drop-place { 2 | td { 3 | height: 40px; 4 | 5 | background: @color-e; 6 | } 7 | } -------------------------------------------------------------------------------- /assets/styles/admin/components/in/letter.less: -------------------------------------------------------------------------------- 1 | .in-letter { 2 | display: inline-block; 3 | padding: 3px; 4 | min-width: 20px; 5 | margin-right: 2px; 6 | 7 | color: @color-f; 8 | font-size: 11px; 9 | font-weight: 700; 10 | background: @bg-primary; 11 | text-align: center; 12 | } -------------------------------------------------------------------------------- /assets/styles/admin/components/table/touch-always.less: -------------------------------------------------------------------------------- 1 | .table-touch-always { 2 | width: 100%; 3 | overflow: auto; 4 | 5 | &__in { 6 | width: 232px; 7 | 8 | @media @query-md { 9 | width: 490px; 10 | } 11 | 12 | @media @query-lg { 13 | width: 600px; 14 | } 15 | 16 | @media @query-xl { 17 | width: 900px; 18 | } 19 | 20 | @media @query-xl { 21 | width: 100%; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /assets/styles/admin/components/table/touch.less: -------------------------------------------------------------------------------- 1 | .table-touch { 2 | width: 100%; 3 | overflow: auto; 4 | 5 | &__in { 6 | width: 900px; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /assets/styles/admin/components/window/overlay.less: -------------------------------------------------------------------------------- 1 | #js-overlay { 2 | background: rgba(36,51,58,0.5); 3 | width: 100%; 4 | height: 100%; 5 | position: fixed; 6 | top: 0px; 7 | left: 0px; 8 | z-index:10001; 9 | } 10 | -------------------------------------------------------------------------------- /assets/styles/admin/components/wrap/border.less: -------------------------------------------------------------------------------- 1 | @wrap-border-gap: @item-gap; 2 | @wrap-border-inner-gap-small: 15px; 3 | 4 | .wrap-border { 5 | padding-bottom: @wrap-border-gap; 6 | 7 | &--small { 8 | padding-bottom: @wrap-border-inner-gap-small; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /assets/styles/admin/core/form/inline.less: -------------------------------------------------------------------------------- 1 | @form-inline-height: @input-height; 2 | 3 | .form-inline { 4 | position: relative; 5 | 6 | .btn { 7 | height: @form-inline-height; 8 | vertical-align: middle; 9 | } 10 | 11 | .input { 12 | display: inline-block; 13 | line-height: @form-inline-height; 14 | vertical-align: middle; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /assets/styles/admin/core/mixin/display.less: -------------------------------------------------------------------------------- 1 | .display-generator(@postfix: ~'') { 2 | &-block@{postfix} { 3 | display: block; 4 | } 5 | 6 | &-inline@{postfix} { 7 | display: inline; 8 | } 9 | 10 | &-inline-block@{postfix} { 11 | display: inline-block; 12 | } 13 | 14 | &-none@{postfix} { 15 | display: none; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /assets/styles/admin/core/mixin/grid.less: -------------------------------------------------------------------------------- 1 | .column-generator(@i, @step, @max, @postfix: ~'') when (@i <= @max) { 2 | &--@{i}@{postfix} { 3 | width: ~'@{i}%'; 4 | } 5 | 6 | .column-generator(@i + @step, @step, @max, @postfix); 7 | } 8 | 9 | .column-special-generator(@i, @postfix: ~'') when (@i > 0) { 10 | @size: extract(@col-special, @i); 11 | 12 | &--@{size}@{postfix} { 13 | width: ~'@{size}%'; 14 | } 15 | 16 | .column-special-generator(@i - 1, @postfix); 17 | } 18 | -------------------------------------------------------------------------------- /assets/styles/admin/helpers.less: -------------------------------------------------------------------------------- 1 | // Core 2 | @import "core/mixin/font-size.less"; 3 | @import "core/mixin/margin.less"; 4 | @import "core/mixin/padding.less"; 5 | @import "core/mixin/display.less"; 6 | 7 | @import "helpers/base.less"; 8 | @import "helpers/margin.less"; 9 | @import "helpers/padding.less"; 10 | @import "helpers/font-size.less"; 11 | @import "helpers/display.less"; 12 | -------------------------------------------------------------------------------- /assets/styles/admin/helpers/.gitignore: -------------------------------------------------------------------------------- 1 | /helpers-generated.less -------------------------------------------------------------------------------- /assets/styles/admin/helpers/display.less: -------------------------------------------------------------------------------- 1 | .display { 2 | .display-generator(); 3 | 4 | @media @query-tablet { 5 | .display-generator(extract(@postfixes, 1)); 6 | } 7 | 8 | @media @query-mobile { 9 | .display-generator(extract(@postfixes, 2)); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /assets/styles/admin/helpers/font-size.less: -------------------------------------------------------------------------------- 1 | @font-size-minimum: 10; 2 | @font-size-stepper: 4; 3 | @font-size-maximum: 26; 4 | @font-size-special: 11, 12, 13, 16, 20; 5 | @font-size-special-lenght: length(@font-size-special); 6 | @font-size-unit: 'px'; 7 | 8 | .font-size { 9 | .font-size-generator(@font-size-minimum, @font-size-stepper, @font-size-maximum); 10 | .font-size-special-generator(@font-size-special-lenght); 11 | } 12 | -------------------------------------------------------------------------------- /assets/styles/admin/layout/header/position.less: -------------------------------------------------------------------------------- 1 | .position { 2 | float: left; 3 | padding: 17px 20px 18px; 4 | width: @width-panel; 5 | 6 | &__title { 7 | display: block; 8 | opacity: 0.7; 9 | 10 | font-size: 12px; 11 | font-weight: 700; 12 | } 13 | 14 | &__actual { 15 | font-size: 14px; 16 | font-weight: 700; 17 | } 18 | } -------------------------------------------------------------------------------- /assets/styles/admin/layout/panel/panel.less: -------------------------------------------------------------------------------- 1 | .panel { 2 | border-top: 3px solid @color-border; 3 | 4 | &:first-child { 5 | border-top: none; 6 | } 7 | 8 | &__in { 9 | padding: 20px 15px; 10 | 11 | &__title { 12 | margin-bottom: 10px; 13 | 14 | color: @color-action; 15 | font-size: 14px; 16 | font-weight: 700; 17 | text-transform: uppercase; 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /assets/styles/admin/libs/.gitignore: -------------------------------------------------------------------------------- 1 | /sprites.less 2 | /svg.less -------------------------------------------------------------------------------- /assets/styles/admin/libs/colorpicker/colorpicker-custom.less: -------------------------------------------------------------------------------- 1 | .minicolors-panel { 2 | z-index: 100; 3 | } 4 | .minicolors-input { 5 | width: @input-width / 2; 6 | } 7 | .minicolors-theme-bootstrap .minicolors-swatch { 8 | width: @input-height - 6px; 9 | height: @input-height - 6px; 10 | } 11 | -------------------------------------------------------------------------------- /assets/styles/admin/libs/datepicker/datepicker-custom.less: -------------------------------------------------------------------------------- 1 | .ui-datepicker { 2 | z-index: 100 !important; 3 | } -------------------------------------------------------------------------------- /assets/styles/admin/libs/tooltip/tooltip-custom.less: -------------------------------------------------------------------------------- 1 | .tooltip { 2 | z-index: 499; 3 | } 4 | 5 | .tooltip-inner { 6 | min-width: 120px; 7 | white-space: normal; 8 | word-break: break-word; 9 | overflow-wrap: break-word; 10 | } 11 | -------------------------------------------------------------------------------- /assets/styles/admin/svg-custom.less: -------------------------------------------------------------------------------- 1 | svg { 2 | --icon-size: 1.4em; 3 | display: inline-block; 4 | vertical-align: bottom; 5 | width: var(--icon-size); 6 | height: var(--icon-size); 7 | } 8 | -------------------------------------------------------------------------------- /assets/styles/admin/wysiwyg-localized.less: -------------------------------------------------------------------------------- 1 | body { 2 | padding-left: 40px; 3 | } 4 | -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | 'autoprefixer': { browserlist: ['last 3 versions'] }, 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /src/Command/Exception/CronCommandException.php: -------------------------------------------------------------------------------- 1 | name = []; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/Model/Complaint/Status/ComplaintStatusTypeEnum.php: -------------------------------------------------------------------------------- 1 | statusChanged; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/Model/Order/PromoCode/Exception/PromoCodeException.php: -------------------------------------------------------------------------------- 1 | name = []; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/Model/Order/Status/OrderStatusTypeEnum.php: -------------------------------------------------------------------------------- 1 | 13 | */ 14 | abstract public function getAllIndexedByTranslations(): array; 15 | } 16 | -------------------------------------------------------------------------------- /src/Model/Payment/Exception/PaymentNotFoundException.php: -------------------------------------------------------------------------------- 1 | name = []; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/Model/Product/Parameter/ParameterValueConversionData.php: -------------------------------------------------------------------------------- 1 | 16 | */ 17 | public $manualInputPricesByPricingGroupId = []; 18 | } 19 | -------------------------------------------------------------------------------- /src/Model/Product/Recalculation/AbstractProductRecalculationMessage.php: -------------------------------------------------------------------------------- 1 | name = []; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/Model/ProductVideo/ProductVideoData.php: -------------------------------------------------------------------------------- 1 | 16 | */ 17 | public $pluginData = []; 18 | 19 | /** 20 | * @var int|null 21 | */ 22 | public $feedDeliveryDaysForOutOfStockProducts; 23 | } 24 | -------------------------------------------------------------------------------- /src/Model/Store/ClosedDay/Exception/ClosedDayNotFoundException.php: -------------------------------------------------------------------------------- 1 | 13 | */ 14 | abstract public function getAllIndexedByTranslations(): array; 15 | } 16 | -------------------------------------------------------------------------------- /src/Model/Transport/Exception/TransportNotFoundException.php: -------------------------------------------------------------------------------- 1 | 8 | {{ form(form) }} 9 | 10 | 11 | {% block admin_log %}{% endblock %} 12 | {% endblock %} 13 | -------------------------------------------------------------------------------- /src/Resources/views/Admin/Content/Administrator/RoleGroup/edit.html.twig: -------------------------------------------------------------------------------- 1 | {% extends '@ShopsysFramework/Admin/Content/Administrator/RoleGroup/detail.html.twig' %} 2 | 3 | {% block title %}- {{ 'Editing administrator role group'|trans }} - {{ administratorRoleGroup.name }}{% endblock %} 4 | {% block h1 %}{{ 'Editing administrator role group'|trans }} - {{ administratorRoleGroup.name }}{% endblock %} 5 | -------------------------------------------------------------------------------- /src/Resources/views/Admin/Content/Administrator/RoleGroup/new.html.twig: -------------------------------------------------------------------------------- 1 | {% extends '@ShopsysFramework/Admin/Content/Administrator/RoleGroup/detail.html.twig' %} 2 | 3 | {% block title %}- {{ 'New administrator role group'|trans }}{% endblock %} 4 | {% block h1 %}{{ 'New administrator role group'|trans }}{% endblock %} 5 | -------------------------------------------------------------------------------- /src/Resources/views/Admin/Content/Administrator/invalidResetPasswordHash.html.twig: -------------------------------------------------------------------------------- 1 | {% extends '@ShopsysFramework/Admin/Layout/layoutBlank.html.twig' %} 2 | 3 | {% block title %}- {{ 'Reset administrator password'|trans }}{% endblock %} 4 | 5 | {% block content %} 6 | 7 |
{{ 'Invalid reset password hash for administrator'|trans }}
10 |3 | {{ orderRoundingItem.name }}: {{ orderRoundingTotalPrice.priceWithVat|priceTextWithCurrencyByCurrencyIdAndLocale(order.currency.id, orderLocale)|hidePrice(order.customerUser) }} 4 |
5 | -------------------------------------------------------------------------------- /src/Resources/views/Mail/Order/transportInstructions.html.twig: -------------------------------------------------------------------------------- 1 | {% trans_default_domain 'customerMessages' %} 2 | {% trans into orderLocale %}Instructions{% endtrans %}: {{ order.transportItem.transport.instructions(orderLocale)|raw }}