├── .github └── dependabot.yml ├── .gitignore ├── AzurePipelines ├── api-gateway-pipeline.yml ├── common-pipeline.yml ├── community-api-pipeline.yml ├── history-api-pipeline.yml ├── identity-provider-pipeline.yml ├── infrastructure-pipeline.yml ├── library-api-pipeline.yml ├── search-api-pipeline.yml ├── storage-api-pipeline.yml ├── subscriptions-api-pipeline.yml ├── templates │ ├── build-push-publish.yml │ ├── deploy-using-kustomize.yml │ └── deploy-using-terraform.yml ├── users-api-pipeline.yml ├── video-manager-api.yml ├── video-manager-signalrhub.yml ├── video-processor-application-pipeline.yml ├── video-store-api-pipeline.yml ├── web-client-pipeline.yml └── web-status-pipeline.yml ├── Backend ├── .dockerignore ├── .gitignore ├── BuildingBlocks │ ├── Application │ │ ├── Application.csproj │ │ ├── Contracts │ │ │ ├── IAppRequest.cs │ │ │ ├── ICommand.cs │ │ │ └── IQuery.cs │ │ ├── DomainEventsDispatching │ │ │ ├── DomainEventsDispatcher.cs │ │ │ └── Extensions │ │ │ │ └── ServicesExtensions.cs │ │ ├── DtoModels │ │ │ └── FailedResponseDTO.cs │ │ ├── FailedResponseHandling │ │ │ ├── Convertors │ │ │ │ ├── AppExceptionConvertor.cs │ │ │ │ ├── BusinessRuleValidationExceptionConvertor.cs │ │ │ │ ├── ExceptionConvertors.cs │ │ │ │ ├── HttpRequestExceptionConvertor.cs │ │ │ │ ├── IExceptionConvertor.cs │ │ │ │ └── ValidationExceptionConvertor.cs │ │ │ ├── Extensions │ │ │ │ └── MvcBuilderExtensions.cs │ │ │ └── FailedResponseFilter.cs │ │ ├── Handlers │ │ │ ├── ICommandHandler.cs │ │ │ └── IQueryHandler.cs │ │ ├── Identities │ │ │ ├── Configurations │ │ │ │ └── ClientCredentials.cs │ │ │ ├── Extensions │ │ │ │ └── ServicesExtensions.cs │ │ │ └── Handlers │ │ │ │ └── BearerTokenHandler.cs │ │ ├── PipelineBehaviours │ │ │ ├── ActivityPipelineBehaviour.cs │ │ │ └── ValidatingPipelineBehaviour.cs │ │ ├── Utilities │ │ │ └── HttpClientUtilities.cs │ │ └── Validations │ │ │ └── Extensions │ │ │ └── RuleBuilderExtensions.cs │ ├── Domain │ │ ├── Contracts │ │ │ └── IUnitOfWork.cs │ │ ├── Domain.csproj │ │ ├── DomainEntity.cs │ │ ├── Entity.cs │ │ ├── Events │ │ │ ├── IDomainEvent.cs │ │ │ ├── IDomainEventEmitter.cs │ │ │ ├── IDomainEventHandler.cs │ │ │ ├── IDomainEventsAccessor.cs │ │ │ └── IDomainEventsDispatcher.cs │ │ ├── Exceptions │ │ │ └── BusinessRuleValidationException.cs │ │ ├── IAggregateRoot.cs │ │ ├── IgnoreMemberAttribute.cs │ │ ├── Rules │ │ │ ├── CharactersRule.cs │ │ │ ├── DefinedEnumRule.cs │ │ │ ├── IBusinessRule.cs │ │ │ ├── LengthRule.cs │ │ │ └── RegexMatchingRule.cs │ │ ├── TransactionalEvents │ │ │ ├── Contracts │ │ │ │ └── ITransactionalEventsContext.cs │ │ │ ├── Outbox │ │ │ │ ├── OutboxMessage.cs │ │ │ │ └── TransactionalEventsContextExtensions.cs │ │ │ └── TransactionalEvent.cs │ │ └── ValueObject.cs │ ├── EventBus.Helper │ │ ├── EventBus.Helper.csproj │ │ ├── Idempotency │ │ │ └── IdempotentIntegrationEventHandler.cs │ │ └── RoutingSlips │ │ │ ├── Contracts │ │ │ ├── IRoutingSlip.cs │ │ │ ├── IRoutingSlipBuilder.cs │ │ │ ├── IRoutingSlipCheckpoint.cs │ │ │ ├── IRoutingSlipCheckpointLog.cs │ │ │ ├── IRoutingSlipCheckpointProceedContext.cs │ │ │ ├── IRoutingSlipCheckpointRollbackContext.cs │ │ │ ├── IRoutingSlipProceedResult.cs │ │ │ └── IRoutingSlipRollbackResult.cs │ │ │ ├── Extensions │ │ │ └── TransactionalEventsRepositoryExtensions.cs │ │ │ ├── RoutingSlip.cs │ │ │ ├── RoutingSlipBuilder.cs │ │ │ ├── RoutingSlipCheckpoint.cs │ │ │ ├── RoutingSlipCheckpointHandler.cs │ │ │ ├── RoutingSlipCheckpointLog.cs │ │ │ ├── RoutingSlipCheckpointProceedContext.cs │ │ │ ├── RoutingSlipCheckpointRollbackContext.cs │ │ │ ├── RoutingSlipEvent.cs │ │ │ ├── RoutingSlipEventQueue.cs │ │ │ ├── RoutingSlipEventType.cs │ │ │ ├── RoutingSlipProceedCompleteResult.cs │ │ │ ├── RoutingSlipProceedResult.cs │ │ │ ├── RoutingSlipProceedRollbackedResult.cs │ │ │ ├── RoutingSlipProceedTerminatedResult.cs │ │ │ ├── RoutingSlipRollbackCompleteResult.cs │ │ │ ├── RoutingSlipRollbackResult.cs │ │ │ └── RoutingSlipRollbackTerminatedResult.cs │ ├── EventBus.RabbitMQ │ │ ├── DefaultRabbitMQRequeuePolicy.cs │ │ ├── EventBus.RabbitMQ.csproj │ │ ├── Exceptions │ │ │ ├── IntegrationEventHandlerMissingException.cs │ │ │ ├── PublishChannelStoppedException.cs │ │ │ ├── RabbitMQNackException.cs │ │ │ └── TransientRabbitMQExceptionIdentifier.cs │ │ ├── Extensions │ │ │ ├── ExceptionExtensions.cs │ │ │ ├── IRabbitMQEventBusConfigurator.cs │ │ │ ├── RabbitMQEventBusConfigurator.cs │ │ │ └── ServicesExtensions.cs │ │ ├── IDeadLetterEventBus.cs │ │ ├── IPendingEvent.cs │ │ ├── IPendingEvents.cs │ │ ├── IRabbitMQConnection.cs │ │ ├── IRabbitMQRequeuePolicy.cs │ │ ├── IRabbitMQTopology.cs │ │ ├── PendingDeadLetterEvent.cs │ │ ├── PendingEvent.cs │ │ ├── PendingEventBase.cs │ │ ├── RabbitMQConnection.cs │ │ ├── RabbitMQEventBus.cs │ │ ├── RabbitMQEventBusConfiguration.cs │ │ ├── RabbitMQEventBusService.cs │ │ ├── RabbitMQEventPubChannel.cs │ │ ├── RabbitMQEventSubChannel.cs │ │ ├── RabbitMQIncomingIntegrationEventContext.cs │ │ ├── RabbitMQIncomingIntegrationEventProperties.cs │ │ ├── RabbitMQIntegrationEvent.cs │ │ ├── RabbitMQIntegrationEventProperties.cs │ │ ├── RabbitMQIntegrationEventQueueProperties.cs │ │ ├── RabbitMQIntegrationEventTopicProperties.cs │ │ ├── RabbitMQPublishingConfiguration.cs │ │ ├── RabbitMQQosConfiguration.cs │ │ ├── RabbitMQSubscribingConfiguration.cs │ │ └── RabbitMQTopology.cs │ ├── EventBus │ │ ├── EventBus.csproj │ │ ├── Extensions │ │ │ └── EventBusBuilder.cs │ │ ├── IEventBus.cs │ │ ├── IIncomingIntegrationEventContext.cs │ │ ├── IIncomingIntegrationEventProperties.cs │ │ ├── IIntegrationEventProperties.cs │ │ ├── IntegrationEvent.cs │ │ ├── IntegrationEventHandler.cs │ │ ├── IntegrationEventQueue.cs │ │ └── IntegrationEventTopic.cs │ ├── Infrastructure.EFCore │ │ ├── DatabaseHelper.cs │ │ ├── DomainEventsDispatching │ │ │ └── DomainEventsAccessor.cs │ │ ├── Exceptions │ │ │ ├── ConstraintViolationEFCoreExceptionIdentifier.cs │ │ │ ├── ExcpetionExtensions.cs │ │ │ ├── TransientEFCoreExceptionIdentifier.cs │ │ │ └── UniqueViolationEFCoreExceptionIdentifier.cs │ │ ├── Idempotency │ │ │ ├── Extensions │ │ │ │ ├── ModelBuilderExtensions.cs │ │ │ │ └── ServicesExtensions.cs │ │ │ └── IdempotencyContext.cs │ │ ├── Infrastructure.EFCore.csproj │ │ ├── Interceptors │ │ │ └── NpgsqlPessimisticLockCommandInterceptor.cs │ │ ├── ResilientTransactionExtensions.cs │ │ ├── TransactionalEvents │ │ │ ├── Extensions │ │ │ │ ├── ModelBuilderExtensions.cs │ │ │ │ └── TransactionalEventsContextConfiguratorExtensions.cs │ │ │ ├── ITransactionalEventsCommandResolver.cs │ │ │ ├── Models │ │ │ │ ├── TransactionalEventData.cs │ │ │ │ └── TransactionalEventsGroup.cs │ │ │ ├── NpgsqlTransactionalEventsCommandResolver.cs │ │ │ ├── Processing │ │ │ │ ├── Extensions │ │ │ │ │ └── TransactionalEventsProcessorBuilderExtensions.cs │ │ │ │ └── TransactionalEventsProcessor.cs │ │ │ ├── TransactionalEventsContext.cs │ │ │ └── TransactionalEventsContextConfig.cs │ │ ├── UnitOfWork.cs │ │ └── Utilities │ │ │ ├── AlwaysTrueValueComparer.cs │ │ │ └── SqlState.cs │ ├── Infrastructure.Elasticsearch │ │ ├── ElasticsearchHelper.cs │ │ ├── Extensions │ │ │ ├── ExceptionExtensions.cs │ │ │ └── ServicesExtensions.cs │ │ ├── IIndexCreator.cs │ │ ├── IndicesHelper.cs │ │ └── Infrastructure.Elasticsearch.csproj │ ├── Infrastructure.MongoDb │ │ ├── Configurations │ │ │ └── MongoDbContextConfiguration.cs │ │ ├── Contexts │ │ │ ├── IMongoClientContext.cs │ │ │ ├── IMongoCollectionContext.cs │ │ │ ├── MongoClientContext.cs │ │ │ └── MongoCollectionContext.cs │ │ ├── DomainEventsDispatching │ │ │ ├── DomainEventEmittersTracker.cs │ │ │ ├── DomainEventsAccessor.cs │ │ │ └── IDomainEventEmittersTracker.cs │ │ ├── Exceptions │ │ │ ├── TransientMongoExceptionIdentifier.cs │ │ │ └── UniqueViolationMongoExceptionIdentifier.cs │ │ ├── Extensions │ │ │ ├── IMongoDbConfigurator.cs │ │ │ ├── MongoDbBuilder.cs │ │ │ ├── MongoDbConfigurator.cs │ │ │ └── ServicesExtensions.cs │ │ ├── Idempotency │ │ │ ├── ClassMaps │ │ │ │ └── IdempotentOperationClassMap.cs │ │ │ ├── Extensions │ │ │ │ └── ServicesExtensions.cs │ │ │ └── IdempotencyContext.cs │ │ ├── Infrastructure.MongoDb.csproj │ │ ├── MongoClassMap.cs │ │ ├── MongoClassMapHelper.cs │ │ ├── MongoCollectionHelper.cs │ │ ├── MongoCollectionSeeder.cs │ │ ├── TransactionalEvents │ │ │ ├── ClassMaps │ │ │ │ ├── TransactionalEventClassMap.cs │ │ │ │ └── TransactionalEventsGroupClassMap.cs │ │ │ ├── CollectionSeeders │ │ │ │ └── TransactionalEventsGroupCollectionSeeker.cs │ │ │ ├── Models │ │ │ │ └── TransactionalEventsGroup.cs │ │ │ ├── Processing │ │ │ │ ├── Extensions │ │ │ │ │ └── TransactionalEventsProcessorBuilderExtensions.cs │ │ │ │ └── TransactionalEventsProcessor.cs │ │ │ ├── TransactionalEventsContext.cs │ │ │ └── TransactionalEventsContextConfig.cs │ │ └── UnitOfWork.cs │ ├── Infrastructure │ │ ├── Caching │ │ │ ├── CacheContext.cs │ │ │ ├── CacheContractResolver.cs │ │ │ ├── Extensions │ │ │ │ └── ServicesExtensions.cs │ │ │ ├── ICacheContext.cs │ │ │ └── Layers │ │ │ │ ├── ICachingLayer.cs │ │ │ │ ├── InMemoryCacheLayer.cs │ │ │ │ ├── InMemoryCacheLayerConfiguration.cs │ │ │ │ ├── RedisCacheLayer.cs │ │ │ │ └── RedisCacheLayerConfiguration.cs │ │ ├── Extensions │ │ │ └── ServicesExtensions.cs │ │ ├── Idempotency │ │ │ ├── IIdempotencyContext.cs │ │ │ └── IdempotentOperation.cs │ │ ├── Infrastructure.csproj │ │ ├── TransactionalEvents │ │ │ ├── Extensions │ │ │ │ ├── ServicesExtensions.cs │ │ │ │ └── TransactionalEventsContextConfigurator.cs │ │ │ ├── Handlers │ │ │ │ └── OutboxEventsHandler.cs │ │ │ ├── ITransactionalEventsCommitter.cs │ │ │ ├── Outbox │ │ │ │ └── OutboxConfiguration.cs │ │ │ └── Processing │ │ │ │ ├── Extensions │ │ │ │ ├── ServicesExtensions.cs │ │ │ │ └── TransactionalEventsProcessorBuilder.cs │ │ │ │ ├── ITransactionalEventsHandler.cs │ │ │ │ ├── ITransactionalEventsProcessor.cs │ │ │ │ ├── TransactionalEventsProcessingService.cs │ │ │ │ └── TransactionalEventsProcessorConfiguration.cs │ │ └── UnitOfWorkConfig.cs │ └── SharedKernel │ │ ├── Exceptions │ │ ├── AppException.cs │ │ ├── ConstraintViolationException.cs │ │ ├── DefaultConstraintViolationExceptionIdentifier.cs │ │ ├── DefaultTransientExceptionIdentifier.cs │ │ ├── DefaultUniqueViolationExceptionIdentifier.cs │ │ ├── ExceptionCategories.cs │ │ ├── ExceptionExtensions.cs │ │ ├── ExceptionIdentifiers.cs │ │ ├── IExceptionIdentifier.cs │ │ ├── TransientException.cs │ │ ├── TransientHttpExceptionIdentifier.cs │ │ └── UniqueViolationException.cs │ │ ├── Processors │ │ ├── RateLimitedRequestProcessor.cs │ │ └── RateLimitedRequestProcessorOptions.cs │ │ ├── SharedKernel.csproj │ │ └── Utilities │ │ ├── ChildProcess.cs │ │ ├── EnumExtensions.cs │ │ ├── ISingleton.cs │ │ ├── JwtHelper.cs │ │ ├── RsaExtensions.cs │ │ ├── TaskExtensions.cs │ │ ├── TypeCache.cs │ │ └── TypeExtensions.cs ├── Infrastructure │ ├── Elasticsearch │ │ └── Dockerfile │ └── Logstash │ │ └── pipeline │ │ └── logstash.conf ├── Services │ ├── ApiGateway │ │ ├── ApiGateway.csproj │ │ ├── Configurations │ │ │ ├── ClusterConfigs.cs │ │ │ └── RouteConfigs.cs │ │ ├── Dockerfile │ │ ├── HostExtensions.cs │ │ ├── Program.cs │ │ ├── Properties │ │ │ └── launchSettings.json │ │ ├── Utilities │ │ │ ├── ClusterId.cs │ │ │ └── RouteId.cs │ │ ├── appsettings.Development.json │ │ └── appsettings.json │ ├── Community │ │ ├── Community.API │ │ │ ├── Application │ │ │ │ ├── AutoMapperProfiles │ │ │ │ │ ├── AutoMapperProfile.cs │ │ │ │ │ └── FileUrlResolver.cs │ │ │ │ ├── Commands │ │ │ │ │ ├── AddVideoCommentCommand.cs │ │ │ │ │ ├── CreateOrUpdateUserProfileCommand.cs │ │ │ │ │ ├── CreateVideoForumCommand.cs │ │ │ │ │ ├── DeleteUserProfileCommand.cs │ │ │ │ │ ├── DeleteVideoCommentCommand.cs │ │ │ │ │ ├── EditVideoCommentCommand.cs │ │ │ │ │ ├── Handlers │ │ │ │ │ │ ├── AddVideoCommentCommandHandler.cs │ │ │ │ │ │ ├── CreateOrUpdateUserProfileCommandHandler.cs │ │ │ │ │ │ ├── CreateVideoForumCommandHandler.cs │ │ │ │ │ │ ├── DeleteUserProfileCommandHandler.cs │ │ │ │ │ │ ├── DeleteVideoCommentCommandHandler.cs │ │ │ │ │ │ ├── EditVideoCommentCommandHandler.cs │ │ │ │ │ │ ├── UnregisterVideoForumCommandHandler.cs │ │ │ │ │ │ └── VoteVideoCommentCommandHandler.cs │ │ │ │ │ ├── UnregisterVideoForumCommand.cs │ │ │ │ │ ├── Vaildators │ │ │ │ │ │ ├── AddVideoCommentCommandValiators.cs │ │ │ │ │ │ ├── EditVideoCommentCommandValiators.cs │ │ │ │ │ │ └── VoteVideoCommentCommandValidator.cs │ │ │ │ │ └── VoteVideoCommentCommand.cs │ │ │ │ ├── Configurations │ │ │ │ │ └── StorageConfiguration.cs │ │ │ │ ├── DomainEventHandlers │ │ │ │ │ ├── VideoForumCommentAddedDomainEventHandler.cs │ │ │ │ │ ├── VideoForumCreatedDomainEventHandler.cs │ │ │ │ │ └── VideoForumUnregisteredDomainEventHandler.cs │ │ │ │ ├── DtoModels │ │ │ │ │ ├── AddCommentRequestDto.cs │ │ │ │ │ ├── CommentAddedResponseDto.cs │ │ │ │ │ ├── EditCommentRequestDto.cs │ │ │ │ │ ├── GetVideoForumResponseDto.cs │ │ │ │ │ ├── InternalUserProfileDto.cs │ │ │ │ │ ├── ReplyToCommentRequestDto.cs │ │ │ │ │ ├── UserProfileDto.cs │ │ │ │ │ ├── UserVideoCommentVotesDto.cs │ │ │ │ │ ├── VideoCommentDto.cs │ │ │ │ │ ├── VideoForumCreationPropertiesDto.cs │ │ │ │ │ └── VoteVideoCommentRequestDto.cs │ │ │ │ ├── IntegrationEventHandlers │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEventHandler.cs │ │ │ │ │ └── VideoManager │ │ │ │ │ │ └── UnregisterVideoIntegrationEventHandler.cs │ │ │ │ ├── IntegrationEvents │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEvent.cs │ │ │ │ │ ├── VideoCommentsMetricsSyncIntegrationEvent.cs │ │ │ │ │ ├── VideoManager │ │ │ │ │ │ └── UnregisterVideoIntegrationEvent.cs │ │ │ │ │ └── VideoRegisteredToCommunityIntegrationEvent.cs │ │ │ │ ├── Queries │ │ │ │ │ ├── GetRootVideoCommentsQuery.cs │ │ │ │ │ ├── GetUserRootVideoCommentsQuery.cs │ │ │ │ │ ├── GetVideoCommentRepliesQuery.cs │ │ │ │ │ ├── GetVideoForumQuery.cs │ │ │ │ │ ├── GetVotedVideoCommentIdsQuery.cs │ │ │ │ │ └── Handlers │ │ │ │ │ │ ├── GetRootVideoCommentsQueryHandler.cs │ │ │ │ │ │ ├── GetUserRootVideoCommentsQueryHandler.cs │ │ │ │ │ │ ├── GetVideoCommentRepliesQueryHandler.cs │ │ │ │ │ │ ├── GetVideoForumQueryHandler.cs │ │ │ │ │ │ └── GetVotedVideoCommentIdsQueryHandler.cs │ │ │ │ └── RoutingSlipCheckpointHandlers │ │ │ │ │ ├── RegisterUserProfileCheckpointHandler.cs │ │ │ │ │ └── RegisterVideoCheckpointHandler.cs │ │ │ ├── Community.API.csproj │ │ │ ├── Controllers │ │ │ │ └── VideoForumController.cs │ │ │ ├── Dockerfile │ │ │ ├── HostExtensions.cs │ │ │ ├── Migrations │ │ │ │ ├── 20230215140536_InitialCreate.Designer.cs │ │ │ │ ├── 20230215140536_InitialCreate.cs │ │ │ │ ├── 20230216150122_AddEditDate.Designer.cs │ │ │ │ ├── 20230216150122_AddEditDate.cs │ │ │ │ ├── 20230301170836_ModelUpdate.Designer.cs │ │ │ │ ├── 20230301170836_ModelUpdate.cs │ │ │ │ └── CommunityDbContextModelSnapshot.cs │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── appsettings.Development.json │ │ │ └── appsettings.json │ │ ├── Community.Domain │ │ │ ├── Community.Domain.csproj │ │ │ ├── Contracts │ │ │ │ ├── IUserProfileRepository.cs │ │ │ │ ├── IVideoCommentRepository.cs │ │ │ │ ├── IVideoCommentVoteRepository.cs │ │ │ │ └── IVideoForumRepository.cs │ │ │ ├── DomainEvents │ │ │ │ ├── VideoCommentCreatedDomainEvent.cs │ │ │ │ ├── VideoCommentDeletedDomainEvent.cs │ │ │ │ ├── VideoCommentVoteChangedDomainEvent.cs │ │ │ │ ├── VideoCommentVoteCreatedDomainEvent.cs │ │ │ │ ├── VideoForumCommentAddedDomainEvent.cs │ │ │ │ ├── VideoForumCreatedDomainEvent.cs │ │ │ │ └── VideoForumUnregisteredDomainEvent.cs │ │ │ ├── Models │ │ │ │ ├── UserProfile.cs │ │ │ │ ├── UserVideoCommentVote.cs │ │ │ │ ├── VideoComment.cs │ │ │ │ ├── VideoCommentVote.cs │ │ │ │ ├── VideoForum.cs │ │ │ │ ├── VideoForumStatus.cs │ │ │ │ └── VoteType.cs │ │ │ ├── Rules │ │ │ │ ├── VideoCommentVotes │ │ │ │ │ └── ValidVoteTypeRule.cs │ │ │ │ └── VideoComments │ │ │ │ │ └── CommentLengthRule.cs │ │ │ └── Specifications │ │ │ │ └── VideoCommentSort.cs │ │ └── Community.Infrastructure │ │ │ ├── Community.Infrastructure.csproj │ │ │ ├── CommunityDbContext.cs │ │ │ ├── DomainEventHandlers │ │ │ ├── VideoCommentCreatedDomainEventHandler.cs │ │ │ ├── VideoCommentDeletedDomainEventHandler.cs │ │ │ ├── VideoCommentVoteChangedDomainEventHandler.cs │ │ │ └── VideoCommentVoteCreatedDomainEventHandler.cs │ │ │ ├── EntityTypeConfigurations │ │ │ ├── UserProfileEntityTypeConfiguration.cs │ │ │ ├── VideoCommentEntityTypeConfiguration.cs │ │ │ ├── VideoCommentVoteEntityTypeConfiguration.cs │ │ │ └── VideoForumEntityTypeConfiguration.cs │ │ │ └── Repositories │ │ │ ├── UserProfileRepository.cs │ │ │ ├── VideoCommentRepository.cs │ │ │ ├── VideoCommentVoteRepository.cs │ │ │ └── VideoForumRepository.cs │ ├── History │ │ ├── History.API │ │ │ ├── Application │ │ │ │ ├── AutoMapperProfiles │ │ │ │ │ ├── AutoMapperProfile.cs │ │ │ │ │ ├── CreatorProfileResolver.cs │ │ │ │ │ └── FileUrlResolver.cs │ │ │ │ ├── BackgroundTasks │ │ │ │ │ └── MetricsSyncBackgroundService.cs │ │ │ │ ├── Commands │ │ │ │ │ ├── ClearUserWatchHistoryCommand.cs │ │ │ │ │ ├── CreateOrUpdateUserProfileCommand.cs │ │ │ │ │ ├── DeleteUserProfileCommand.cs │ │ │ │ │ ├── EnableRecordUserWatchHistoryCommand.cs │ │ │ │ │ ├── Handlers │ │ │ │ │ │ ├── ClearUserWatchHistoryCommandHandler.cs │ │ │ │ │ │ ├── CreateOrUpdateUserProfileCommandHandler.cs │ │ │ │ │ │ ├── DeleteUserProfileCommandHandler.cs │ │ │ │ │ │ ├── EnableRecordUserWatchHistoryCommandHandler.cs │ │ │ │ │ │ ├── RecordVideoViewCommandHandler.cs │ │ │ │ │ │ ├── RegisterVideoCommandHandler.cs │ │ │ │ │ │ ├── RemoveVideoFromUserWatchHistoryCommandHandler.cs │ │ │ │ │ │ ├── UnregisterVideoCommandHandler.cs │ │ │ │ │ │ └── UpdateVideoCommandHandler.cs │ │ │ │ │ ├── RecordVideoViewCommand.cs │ │ │ │ │ ├── RegisterVideoCommand.cs │ │ │ │ │ ├── RemoveVideoFromUserWatchHistoryCommand.cs │ │ │ │ │ ├── UnregisterVideoCommand.cs │ │ │ │ │ └── UpdateVideoCommand.cs │ │ │ │ ├── Configurations │ │ │ │ │ ├── MetricsSyncConfiguration.cs │ │ │ │ │ └── StorageConfiguration.cs │ │ │ │ ├── DomainEventHandlers │ │ │ │ │ ├── VideoCreatedDomainEventHandler.cs │ │ │ │ │ ├── VideoUnregisteredDomainEventHandler.cs │ │ │ │ │ └── VideoUpdatedDomainEventHandler.cs │ │ │ │ ├── DtoModels │ │ │ │ │ ├── CreatorProfileDto.cs │ │ │ │ │ ├── InternalUserProfileDto.cs │ │ │ │ │ ├── SearchResponseDto.cs │ │ │ │ │ ├── SwitchRecordUserWatchHistoryRequestDto.cs │ │ │ │ │ ├── UserHistorySettingsDto.cs │ │ │ │ │ ├── UserWatchHistorySearchRequestDto.cs │ │ │ │ │ ├── UserWatchRecordDto.cs │ │ │ │ │ ├── VideoDto.cs │ │ │ │ │ ├── VideoMetricsDto.cs │ │ │ │ │ └── VideoRegistartionPropertiesDto.cs │ │ │ │ ├── IntegrationEventHandlers │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEventHandler.cs │ │ │ │ │ ├── VideoManager │ │ │ │ │ │ └── UnregisterVideoIntegrationEventHandler.cs │ │ │ │ │ └── VideoStore │ │ │ │ │ │ └── VideoUpdatedIntegrationEventHandler.cs │ │ │ │ ├── IntegrationEvents │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEvent.cs │ │ │ │ │ ├── VideoManager │ │ │ │ │ │ └── UnregisterVideoIntegrationEvent.cs │ │ │ │ │ ├── VideoStore │ │ │ │ │ │ └── VideoUpdatedIntegrationEvent.cs │ │ │ │ │ └── VideoViewsMetricsSyncIntegrationEvent.cs │ │ │ │ ├── Queries │ │ │ │ │ ├── GetUserHistorySettingsQuery.cs │ │ │ │ │ ├── Handlers │ │ │ │ │ │ ├── GetUserHistorySettingsQueryHandler.cs │ │ │ │ │ │ └── SearchUserWatchHistoryQueryHandler.cs │ │ │ │ │ └── SearchUserWatchHistoryQuery.cs │ │ │ │ └── RoutingSlipCheckpointHandlers │ │ │ │ │ ├── RegisterUserProfileCheckpointHandler.cs │ │ │ │ │ └── RegisterVideoCheckpointHandler.cs │ │ │ ├── Controllers │ │ │ │ └── UserHistoryController.cs │ │ │ ├── Dockerfile │ │ │ ├── History.API.csproj │ │ │ ├── HostExtensions.cs │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── appsettings.Development.json │ │ │ └── appsettings.json │ │ ├── History.Domain │ │ │ ├── Contracts │ │ │ │ ├── IUserProfileRepository.cs │ │ │ │ └── IVideoRepository.cs │ │ │ ├── DomainEvents │ │ │ │ ├── UserProfiles │ │ │ │ │ ├── UpdateRecordWatchHistoryDomainEvent.cs │ │ │ │ │ ├── UserProfileCreatedDomainEvent.cs │ │ │ │ │ └── UserProfileUpdatedDomainEvent.cs │ │ │ │ └── Videos │ │ │ │ │ ├── VideoCreatedDomainEvent.cs │ │ │ │ │ ├── VideoSearchInfoUpdatedDomainEvent.cs │ │ │ │ │ ├── VideoUnregisteredDomainEvent.cs │ │ │ │ │ ├── VideoUpdatedDomainEvent.cs │ │ │ │ │ ├── VideoViewsMetricsChangedDomainEvent.cs │ │ │ │ │ └── VideoViewsMetricsSyncDateUpdatedDomainEvent.cs │ │ │ ├── History.Domain.csproj │ │ │ └── Models │ │ │ │ ├── UserProfile.cs │ │ │ │ ├── UserVideoHistory.cs │ │ │ │ ├── Video.cs │ │ │ │ ├── VideoMetrics.cs │ │ │ │ ├── VideoStatus.cs │ │ │ │ └── VideoVisibility.cs │ │ └── History.Infrastructure │ │ │ ├── ClassMaps │ │ │ ├── UserProfileClassMap.cs │ │ │ ├── VideoClassMap.cs │ │ │ └── VideoMetricsClassMap.cs │ │ │ ├── CollectionSeeders │ │ │ ├── UserProfileCollectionSeeder.cs │ │ │ └── VideoCollectionSeeder.cs │ │ │ ├── Configurations │ │ │ └── CachingConfigurations.cs │ │ │ ├── Contracts │ │ │ ├── ICacheKeyProvider.cs │ │ │ ├── ICachedUserProfileRepository.cs │ │ │ ├── ICachedVideoRepository.cs │ │ │ ├── IUserHistoryCommandManager.cs │ │ │ └── IUserHistoryQueryManager.cs │ │ │ ├── DomainEventHandlers │ │ │ ├── UserProfiles │ │ │ │ ├── UpdateRecordWatchHistoryDomainEventHandler.cs │ │ │ │ └── UserProfileUpdatedDomainEventHandler.cs │ │ │ └── Videos │ │ │ │ ├── VideoUpdatedDomainEventHandler.cs │ │ │ │ ├── VideoViewsMetricsChangedDomainEventHandler.cs │ │ │ │ └── VideoViewsMetricsSyncDateUpdatedDomainEventHandler.cs │ │ │ ├── History.Infrastructure.csproj │ │ │ ├── IndexCreators │ │ │ └── UserVideoHistoryIndexCreator.cs │ │ │ ├── Managers │ │ │ ├── UserHistoryCommandManager.cs │ │ │ └── UserHistoryQueryManager.cs │ │ │ ├── Repositories │ │ │ ├── CachedUserProfileRepository.cs │ │ │ ├── CachedVideoRepository.cs │ │ │ ├── UserProfileRepository.cs │ │ │ └── VideoRepository.cs │ │ │ ├── Services │ │ │ └── CacheKeyProvider.cs │ │ │ └── Specifications │ │ │ ├── Pagination.cs │ │ │ ├── PeriodRange.cs │ │ │ └── UserWatchHistorySearchParameters.cs │ ├── IdentityProvider │ │ └── IdentityProvider │ │ │ ├── ApplicationDbContext.cs │ │ │ ├── ApplicationUser.cs │ │ │ ├── Configurations │ │ │ └── Config.cs │ │ │ ├── DatabaseSeeding.cs │ │ │ ├── Dockerfile │ │ │ ├── HostExtensions.cs │ │ │ ├── IdentityProvider.csproj │ │ │ ├── Migrations │ │ │ ├── 20221030105310_initial.Designer.cs │ │ │ ├── 20221030105310_initial.cs │ │ │ ├── ApplicationDbContextModelSnapshot.cs │ │ │ └── PersistedGrantDb │ │ │ │ ├── 20221030150222_initial.Designer.cs │ │ │ │ ├── 20221030150222_initial.cs │ │ │ │ └── PersistedGrantDbContextModelSnapshot.cs │ │ │ ├── Pages │ │ │ ├── Account │ │ │ │ ├── AccessDenied.cshtml │ │ │ │ ├── AccessDenied.cshtml.cs │ │ │ │ ├── Login │ │ │ │ │ ├── Index.cshtml │ │ │ │ │ ├── Index.cshtml.cs │ │ │ │ │ ├── InputModel.cs │ │ │ │ │ ├── LoginOptions.cs │ │ │ │ │ └── ViewModel.cs │ │ │ │ ├── Logout │ │ │ │ │ ├── Index.cshtml │ │ │ │ │ ├── Index.cshtml.cs │ │ │ │ │ ├── LoggedOut.cshtml │ │ │ │ │ ├── LoggedOut.cshtml.cs │ │ │ │ │ ├── LoggedOutViewModel.cs │ │ │ │ │ └── LogoutOptions.cs │ │ │ │ └── Register │ │ │ │ │ ├── Index.cshtml │ │ │ │ │ ├── Index.cshtml.cs │ │ │ │ │ ├── InputModel.cs │ │ │ │ │ └── RegisterOptions.cs │ │ │ ├── Extensions.cs │ │ │ ├── ExternalLogin │ │ │ │ ├── Callback.cshtml │ │ │ │ ├── Callback.cshtml.cs │ │ │ │ ├── Challenge.cshtml │ │ │ │ └── Challenge.cshtml.cs │ │ │ ├── Redirect │ │ │ │ ├── Index.cshtml │ │ │ │ └── Index.cshtml.cs │ │ │ ├── SecurityHeadersAttribute.cs │ │ │ ├── Shared │ │ │ │ ├── _Layout.cshtml │ │ │ │ └── _ValidationSummary.cshtml │ │ │ ├── _ViewImports.cshtml │ │ │ └── _ViewStart.cshtml │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ └── launchSettings.json │ │ │ ├── Roles.cs │ │ │ ├── appsettings.Development.json │ │ │ ├── appsettings.json │ │ │ ├── keys │ │ │ └── is-signing-key-57DC756613B143709993336F446C5057.json │ │ │ ├── tempkey.jwk │ │ │ └── wwwroot │ │ │ ├── css │ │ │ └── site.css │ │ │ ├── duende-logo.svg │ │ │ ├── favicon.ico │ │ │ ├── js │ │ │ ├── signin-redirect.js │ │ │ └── signout-redirect.js │ │ │ └── lib │ │ │ ├── bootstrap-5.0.2-dist │ │ │ ├── css │ │ │ │ ├── bootstrap-grid.css │ │ │ │ ├── bootstrap-grid.css.map │ │ │ │ ├── bootstrap-grid.min.css │ │ │ │ ├── bootstrap-grid.min.css.map │ │ │ │ ├── bootstrap-grid.rtl.css │ │ │ │ ├── bootstrap-grid.rtl.css.map │ │ │ │ ├── bootstrap-grid.rtl.min.css │ │ │ │ ├── bootstrap-grid.rtl.min.css.map │ │ │ │ ├── bootstrap-reboot.css │ │ │ │ ├── bootstrap-reboot.css.map │ │ │ │ ├── bootstrap-reboot.min.css │ │ │ │ ├── bootstrap-reboot.min.css.map │ │ │ │ ├── bootstrap-reboot.rtl.css │ │ │ │ ├── bootstrap-reboot.rtl.css.map │ │ │ │ ├── bootstrap-reboot.rtl.min.css │ │ │ │ ├── bootstrap-reboot.rtl.min.css.map │ │ │ │ ├── bootstrap-utilities.css │ │ │ │ ├── bootstrap-utilities.css.map │ │ │ │ ├── bootstrap-utilities.min.css │ │ │ │ ├── bootstrap-utilities.min.css.map │ │ │ │ ├── bootstrap-utilities.rtl.css │ │ │ │ ├── bootstrap-utilities.rtl.css.map │ │ │ │ ├── bootstrap-utilities.rtl.min.css │ │ │ │ ├── bootstrap-utilities.rtl.min.css.map │ │ │ │ ├── bootstrap.css │ │ │ │ ├── bootstrap.css.map │ │ │ │ ├── bootstrap.min.css │ │ │ │ ├── bootstrap.min.css.map │ │ │ │ ├── bootstrap.rtl.css │ │ │ │ ├── bootstrap.rtl.css.map │ │ │ │ ├── bootstrap.rtl.min.css │ │ │ │ └── bootstrap.rtl.min.css.map │ │ │ └── js │ │ │ │ ├── bootstrap.bundle.js │ │ │ │ ├── bootstrap.bundle.js.map │ │ │ │ ├── bootstrap.bundle.min.js │ │ │ │ ├── bootstrap.bundle.min.js.map │ │ │ │ ├── bootstrap.esm.js │ │ │ │ ├── bootstrap.esm.js.map │ │ │ │ ├── bootstrap.esm.min.js │ │ │ │ ├── bootstrap.esm.min.js.map │ │ │ │ ├── bootstrap.js │ │ │ │ ├── bootstrap.js.map │ │ │ │ ├── bootstrap.min.js │ │ │ │ └── bootstrap.min.js.map │ │ │ ├── bootstrap │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── dist │ │ │ │ ├── css │ │ │ │ ├── bootstrap-grid.css │ │ │ │ ├── bootstrap-grid.css.map │ │ │ │ ├── bootstrap-grid.min.css │ │ │ │ ├── bootstrap-grid.min.css.map │ │ │ │ ├── bootstrap-reboot.css │ │ │ │ ├── bootstrap-reboot.css.map │ │ │ │ ├── bootstrap-reboot.min.css │ │ │ │ ├── bootstrap-reboot.min.css.map │ │ │ │ ├── bootstrap.css │ │ │ │ ├── bootstrap.css.map │ │ │ │ ├── bootstrap.min.css │ │ │ │ └── bootstrap.min.css.map │ │ │ │ └── js │ │ │ │ ├── bootstrap.bundle.js │ │ │ │ ├── bootstrap.bundle.js.map │ │ │ │ ├── bootstrap.bundle.min.js │ │ │ │ ├── bootstrap.bundle.min.js.map │ │ │ │ ├── bootstrap.js │ │ │ │ ├── bootstrap.js.map │ │ │ │ ├── bootstrap.min.js │ │ │ │ └── bootstrap.min.js.map │ │ │ ├── bootstrap4-glyphicons │ │ │ ├── LICENSE │ │ │ ├── css │ │ │ │ ├── bootstrap-glyphicons.css │ │ │ │ └── bootstrap-glyphicons.min.css │ │ │ ├── fonts │ │ │ │ └── glyphicons │ │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ └── maps │ │ │ │ ├── glyphicons-fontawesome.css │ │ │ │ ├── glyphicons-fontawesome.less │ │ │ │ └── glyphicons-fontawesome.min.css │ │ │ └── jquery │ │ │ ├── LICENSE.txt │ │ │ ├── README.md │ │ │ └── dist │ │ │ ├── jquery.js │ │ │ ├── jquery.min.js │ │ │ ├── jquery.min.map │ │ │ ├── jquery.slim.js │ │ │ ├── jquery.slim.min.js │ │ │ └── jquery.slim.min.map │ ├── Library │ │ ├── Library.API │ │ │ ├── Application │ │ │ │ ├── AutoMapperProfiles │ │ │ │ │ ├── AutoMapperProfile.cs │ │ │ │ │ ├── CreatorProfileResolver.cs │ │ │ │ │ └── FileUrlResolver.cs │ │ │ │ ├── BackgroundTasks │ │ │ │ │ └── MetricsSyncBackgroundService.cs │ │ │ │ ├── Commands │ │ │ │ │ ├── AddVideoToPlaylistCommand.cs │ │ │ │ │ ├── AddVideoToWatchLaterPlaylistCommand.cs │ │ │ │ │ ├── CreateOrUpdateUserProfileCommand.cs │ │ │ │ │ ├── CreatePlaylistCommand.cs │ │ │ │ │ ├── CreatePlaylistRefCommand.cs │ │ │ │ │ ├── DeleteUserProfileCommand.cs │ │ │ │ │ ├── Handlers │ │ │ │ │ │ ├── AddVideoToPlaylistCommandHandler.cs │ │ │ │ │ │ ├── AddVideoToWatchLaterPlaylistCommandHandler.cs │ │ │ │ │ │ ├── CreateOrUpdateUserProfileCommandHandler.cs │ │ │ │ │ │ ├── CreatePlaylistCommandHandler.cs │ │ │ │ │ │ ├── CreatePlaylistRefCommandHandler.cs │ │ │ │ │ │ ├── DeleteUserProfileCommandHandler.cs │ │ │ │ │ │ ├── MovePlaylistItemByIdCommandHandler.cs │ │ │ │ │ │ ├── MovePlaylistItemCommandHandler.cs │ │ │ │ │ │ ├── MoveWatchLaterPlaylistItemByIdCommandHandler.cs │ │ │ │ │ │ ├── MoveWatchLaterPlaylistItemCommandHandler.cs │ │ │ │ │ │ ├── RegisterVideoCommandHandler.cs │ │ │ │ │ │ ├── RemoveItemFromPlaylistCommandHandler.cs │ │ │ │ │ │ ├── RemoveItemFromWatchLaterPlaylistCommandHandler.cs │ │ │ │ │ │ ├── RemovePlaylistCommandHandler.cs │ │ │ │ │ │ ├── RemovePlaylistRefCommandHandler.cs │ │ │ │ │ │ ├── RemoveVIdeoFromPlaylistCommandHandler.cs │ │ │ │ │ │ ├── RemoveVideoFromWatchLaterPlaylistCommandHandler.cs │ │ │ │ │ │ ├── UnregisterVideoCommandHandler.cs │ │ │ │ │ │ ├── UpdatePlaylistCommandHandler.cs │ │ │ │ │ │ ├── UpdateVideoCommandHandler.cs │ │ │ │ │ │ ├── UpdateVideoViewsMetricsCommandHandler.cs │ │ │ │ │ │ └── VoteVideoCommandHandler.cs │ │ │ │ │ ├── MovePlaylistItemByIdCommand.cs │ │ │ │ │ ├── MovePlaylistItemCommand.cs │ │ │ │ │ ├── MoveWatchLaterPlaylistItemByIdCommand.cs │ │ │ │ │ ├── MoveWatchLaterPlaylistItemCommand.cs │ │ │ │ │ ├── RegisterVideoCommand.cs │ │ │ │ │ ├── RemoveItemFromPlaylistCommand.cs │ │ │ │ │ ├── RemoveItemFromWatchLaterPlaylistCommand.cs │ │ │ │ │ ├── RemovePlaylistCommand.cs │ │ │ │ │ ├── RemovePlaylistRefCommand.cs │ │ │ │ │ ├── RemoveVideoFromPlaylistCommand.cs │ │ │ │ │ ├── RemoveVideoFromWatchLaterPlaylistCommand.cs │ │ │ │ │ ├── UnregisterVideoCommand.cs │ │ │ │ │ ├── UpdatePlaylistCommand.cs │ │ │ │ │ ├── UpdateVideoCommand.cs │ │ │ │ │ ├── UpdateVideoViewsMetricsCommand.cs │ │ │ │ │ ├── Validators │ │ │ │ │ │ ├── CreatePlaylistCommandValidator.cs │ │ │ │ │ │ └── UpdatePlaylistCommandValidator.cs │ │ │ │ │ └── VoteVideoCommand.cs │ │ │ │ ├── Configurations │ │ │ │ │ ├── MetricsSyncConfiguration.cs │ │ │ │ │ ├── PlaylistQueryConfiguration.cs │ │ │ │ │ └── StorageConfiguration.cs │ │ │ │ ├── DomainEventHandlers │ │ │ │ │ ├── UserProfileCreatedDomainEventHandler.cs │ │ │ │ │ ├── VideoCreatedDomainEventHandler.cs │ │ │ │ │ ├── VideoSearchInfoUpdatedDomainEventHandler.cs │ │ │ │ │ ├── VideoUnregisteredDomainEventHandler.cs │ │ │ │ │ └── VideoUpdatedDomainEventHandler.cs │ │ │ │ ├── DtoModels │ │ │ │ │ ├── AddPlaylistToLibraryRequestDto.cs │ │ │ │ │ ├── AddVideoToPlaylistRequestDto.cs │ │ │ │ │ ├── CreatePlaylistRequestDto.cs │ │ │ │ │ ├── CreatorProfileDto.cs │ │ │ │ │ ├── GetLibraryResourcesRequestDto.cs │ │ │ │ │ ├── GetLibraryResourcesResponseDto.cs │ │ │ │ │ ├── GetPlaylistInfosResponseDto.cs │ │ │ │ │ ├── GetPlaylistRefResponseDto.cs │ │ │ │ │ ├── GetPublicPlaylistInfosByIdsRequestDto.cs │ │ │ │ │ ├── GetPublicSimplePlaylistInfosByIdsRequestDto.cs │ │ │ │ │ ├── GetSimplePlaylistInfosResponseDto.cs │ │ │ │ │ ├── GetVideosResponseDto.cs │ │ │ │ │ ├── InternalUserProfileDto.cs │ │ │ │ │ ├── MovePlaylistItemByIdRequestDto.cs │ │ │ │ │ ├── MovePlaylistItemRequestDto.cs │ │ │ │ │ ├── PlaylistDto.cs │ │ │ │ │ ├── PlaylistInfoDto.cs │ │ │ │ │ ├── PlaylistItemDto.cs │ │ │ │ │ ├── PlaylistsWithVideoDto.cs │ │ │ │ │ ├── RemoveItemFromPlaylistRequestDto.cs │ │ │ │ │ ├── RemovePlaylistRequestDto.cs │ │ │ │ │ ├── RemoveVideoFromPlaylistRequestDto.cs │ │ │ │ │ ├── SimplePlaylistDto.cs │ │ │ │ │ ├── SimplePlaylistInfoDto.cs │ │ │ │ │ ├── UpdatePlaylistRequestDto.cs │ │ │ │ │ ├── UserProfileDto.cs │ │ │ │ │ ├── VideoDto.cs │ │ │ │ │ ├── VideoMetadataDto.cs │ │ │ │ │ ├── VideoMetricsDto.cs │ │ │ │ │ ├── VideoRegistartionPropertiesDto.cs │ │ │ │ │ └── VoteVideoRequestDto.cs │ │ │ │ ├── IntegrationEventHandlers │ │ │ │ │ ├── History │ │ │ │ │ │ └── VideoViewsMetricsSyncIntegrationEventHandler.cs │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEventHandler.cs │ │ │ │ │ ├── VideoManager │ │ │ │ │ │ └── UnregisterVideoIntegrationEventHandler.cs │ │ │ │ │ └── VideoStore │ │ │ │ │ │ └── VideoUpdatedIntegrationEventHandler.cs │ │ │ │ ├── IntegrationEvents │ │ │ │ │ ├── CreateOrUpdateVideoSearchInfoIntegrationEvent.cs │ │ │ │ │ ├── History │ │ │ │ │ │ └── VideoViewsMetricsSyncIntegrationEvent.cs │ │ │ │ │ ├── RemoveVideoSearchInfoIntegrationEvent.cs │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEvent.cs │ │ │ │ │ ├── VideoManager │ │ │ │ │ │ └── UnregisterVideoIntegrationEvent.cs │ │ │ │ │ ├── VideoStore │ │ │ │ │ │ └── VideoUpdatedIntegrationEvent.cs │ │ │ │ │ └── VideoVotesMetricsSyncIntegrationEvent.cs │ │ │ │ ├── Protobufs │ │ │ │ │ └── library.proto │ │ │ │ ├── Queries │ │ │ │ │ ├── GetAllPlaylistInfosQuery.cs │ │ │ │ │ ├── GetAllSimplePlaylistInfosQuery.cs │ │ │ │ │ ├── GetCreatedPlaylistInfosQuery.cs │ │ │ │ │ ├── GetDislikedPlaylistQuery.cs │ │ │ │ │ ├── GetLibraryResourcesQuery.cs │ │ │ │ │ ├── GetLikedPlaylistQuery.cs │ │ │ │ │ ├── GetPlaylistQuery.cs │ │ │ │ │ ├── GetPlaylistRefQuery.cs │ │ │ │ │ ├── GetPlaylistsWithVideoQuery.cs │ │ │ │ │ ├── GetPublicPlaylistInfosByIdsQuery.cs │ │ │ │ │ ├── GetPublicSimplePlaylistInfosByIdsQuery.cs │ │ │ │ │ ├── GetPublicVideoTotalViewsQuery.cs │ │ │ │ │ ├── GetPublicVideosCountQuery.cs │ │ │ │ │ ├── GetVideoMetadataQuery.cs │ │ │ │ │ ├── GetVideoQuery.cs │ │ │ │ │ ├── GetVideosPlaylistQuery.cs │ │ │ │ │ ├── GetVideosQuery.cs │ │ │ │ │ ├── GetWatchLaterPlaylistQuery.cs │ │ │ │ │ └── Handlers │ │ │ │ │ │ ├── GetAllPlaylistInfosQueryHandler.cs │ │ │ │ │ │ ├── GetAllSimplePlaylistInfosQueryHandler.cs │ │ │ │ │ │ ├── GetCreatedPlaylistInfosQueryHandler.cs │ │ │ │ │ │ ├── GetDislikedPlaylistQueryHandler.cs │ │ │ │ │ │ ├── GetLibraryResourcesQueryHandler.cs │ │ │ │ │ │ ├── GetLikedPlaylistQueryHandler.cs │ │ │ │ │ │ ├── GetPlaylistQueryHandler.cs │ │ │ │ │ │ ├── GetPlaylistRefQueryHandler.cs │ │ │ │ │ │ ├── GetPlaylistsWithVideoQueryHandler.cs │ │ │ │ │ │ ├── GetPublicPlaylistInfosByIdsQueryHandler.cs │ │ │ │ │ │ ├── GetPublicSimplePlaylistInfosQueryHandler.cs │ │ │ │ │ │ ├── GetPublicVideoTotalViewsQueryHandler.cs │ │ │ │ │ │ ├── GetPublicVideosCountQueryHandler.cs │ │ │ │ │ │ ├── GetVideoMetadataQueryHandler.cs │ │ │ │ │ │ ├── GetVideoQueryHandler.cs │ │ │ │ │ │ ├── GetVideosPlaylistQueryHandler.cs │ │ │ │ │ │ ├── GetVideosQueryHandler.cs │ │ │ │ │ │ ├── GetWatchLaterPlaylistQueryHandler.cs │ │ │ │ │ │ └── Services │ │ │ │ │ │ ├── DtoResolver.cs │ │ │ │ │ │ └── IDtoResolver.cs │ │ │ │ └── RoutingSlipCheckpointHandlers │ │ │ │ │ ├── RegisterUserProfileCheckpointHandler.cs │ │ │ │ │ └── RegisterVideoCheckpointHandler.cs │ │ │ ├── Controllers │ │ │ │ ├── LibraryController.cs │ │ │ │ ├── PlaylistLibraryController.cs │ │ │ │ └── VideoLibraryController.cs │ │ │ ├── Dockerfile │ │ │ ├── HostExtensions.cs │ │ │ ├── Library.API.csproj │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── appsettings.Development.json │ │ │ ├── appsettings.json │ │ │ └── libman.json │ │ ├── Library.Domain │ │ │ ├── Contracts │ │ │ │ ├── IPlaylistRefRepository.cs │ │ │ │ ├── IPlaylistRepository.cs │ │ │ │ ├── IUniquePlaylistRepository.cs │ │ │ │ ├── IUserProfileRepository.cs │ │ │ │ └── IVideoRepository.cs │ │ │ ├── DomainEvents │ │ │ │ ├── Playlists │ │ │ │ │ ├── ItemRemovedFromOrderedPlaylistDomainEvent.cs │ │ │ │ │ ├── ItemRemovedFromUnorderedPlaylistDomainEvent.cs │ │ │ │ │ ├── PlaylistItemMovedDomainEvent.cs │ │ │ │ │ ├── UpdatePlaylistDomainEvent.cs │ │ │ │ │ ├── VideoAddedToOrderedPlaylistDomainEvent.cs │ │ │ │ │ └── VideoAddedToUnorderedPlaylistDomainEvent.cs │ │ │ │ ├── UserProfiles │ │ │ │ │ ├── UserProfileCreatedDomainEvent.cs │ │ │ │ │ └── UserProfileUpdatedDomainEvent.cs │ │ │ │ └── Videos │ │ │ │ │ ├── VideoCreatedDomainEvent.cs │ │ │ │ │ ├── VideoSearchInfoUpdatedDomainEvent.cs │ │ │ │ │ ├── VideoUnregisteredDomainEvent.cs │ │ │ │ │ ├── VideoUpdatedDomainEvent.cs │ │ │ │ │ ├── VideoViewsMetricsUpdatedDomainEvent.cs │ │ │ │ │ └── VideoVoteMetricsChangedDomainEvent.cs │ │ │ ├── Library.Domain.csproj │ │ │ ├── Models │ │ │ │ ├── DislikedPlaylist.cs │ │ │ │ ├── LikedPlaylist.cs │ │ │ │ ├── OrderedPlaylistItem.cs │ │ │ │ ├── Playlist.cs │ │ │ │ ├── PlaylistBase.cs │ │ │ │ ├── PlaylistItem.cs │ │ │ │ ├── PlaylistRef.cs │ │ │ │ ├── PlaylistVisibility.cs │ │ │ │ ├── UserProfile.cs │ │ │ │ ├── Video.cs │ │ │ │ ├── VideoMetrics.cs │ │ │ │ ├── VideoStatus.cs │ │ │ │ ├── VideoVisibility.cs │ │ │ │ ├── VoteType.cs │ │ │ │ └── WatchLaterPlaylist.cs │ │ │ ├── Rules │ │ │ │ └── Playlists │ │ │ │ │ ├── DescriptionLengthRule.cs │ │ │ │ │ ├── TitleLengthRule.cs │ │ │ │ │ └── ValidPlaylistVisibilityRule.cs │ │ │ └── Specifications │ │ │ │ ├── IndexPagination.cs │ │ │ │ ├── Pagination.cs │ │ │ │ └── VideoSort.cs │ │ └── Library.Infrastructure │ │ │ ├── ClassMaps │ │ │ ├── DislikedPlaylistClassMap.cs │ │ │ ├── LikedPlaylistClassMap.cs │ │ │ ├── OrderedPlaylistItemClassMap.cs │ │ │ ├── PlaylistBaseClassMap.cs │ │ │ ├── PlaylistClassMap.cs │ │ │ ├── PlaylistItemClassMap.cs │ │ │ ├── PlaylistRefClassMap.cs │ │ │ ├── UserProfileClassMap.cs │ │ │ ├── VideoClassMap.cs │ │ │ ├── VideoMetricsClassMap.cs │ │ │ └── WatchLaterPlaylistClassMap.cs │ │ │ ├── CollectionSeeders │ │ │ ├── DislikedPlaylistCollectionSeeder.cs │ │ │ ├── LikedPlaylistCollectionSeeder.cs │ │ │ ├── PlaylistCollectionSeeder.cs │ │ │ ├── PlaylistRefCollectionSeeder.cs │ │ │ ├── UserProfileCollectionSeeder.cs │ │ │ ├── VideoCollectionSeeder.cs │ │ │ └── WatchLaterPlaylistCollectionSeeder.cs │ │ │ ├── Configurations │ │ │ └── CachingConfigurations.cs │ │ │ ├── Contracts │ │ │ ├── ICacheKeyProvider.cs │ │ │ ├── ICachedUserProfileRepository.cs │ │ │ ├── ICachedVideoRepository.cs │ │ │ ├── IPlaylistQueryHelper.cs │ │ │ └── IVideoQueryHelper.cs │ │ │ ├── DomainEventHandlers │ │ │ ├── Playlists │ │ │ │ ├── ItemRemovedFromOrderedPlaylistDomainEventHandler.cs │ │ │ │ ├── ItemRemovedFromUnorderedPlaylistDomainEventHandler.cs │ │ │ │ ├── PlaylistItemMovedDomainEventHandler.cs │ │ │ │ ├── UpdatePlaylistDomainEventHandler.cs │ │ │ │ ├── VideoAddedToOrderedPlaylistDomainEventHandler.cs │ │ │ │ └── VideoAddedToUnorderedPlaylistDomainEventHandler.cs │ │ │ ├── UserProfiles │ │ │ │ └── UserProfileUpdatedDomainEventHandler.cs │ │ │ └── Videos │ │ │ │ ├── VideoUpdatedDomainEventHandler.cs │ │ │ │ ├── VideoViewsMetricsUpdatedDomainEventHandler.cs │ │ │ │ └── VideoVoteMetricsChangedDomainEventHandler.cs │ │ │ ├── Library.Infrastructure.csproj │ │ │ ├── ProjectionProviders │ │ │ ├── IPlaylistProjectionProvider.cs │ │ │ └── PlaylistProjectionProvider.cs │ │ │ ├── Repositories │ │ │ ├── CachedUserProfileRepository.cs │ │ │ ├── CachedVideoRepository.cs │ │ │ ├── PlaylistRefRepository.cs │ │ │ ├── PlaylistRepository.cs │ │ │ ├── UniquePlaylistRepository.cs │ │ │ ├── UserProfileRepository.cs │ │ │ └── VideoRepository.cs │ │ │ └── Services │ │ │ ├── CacheKeyProvider.cs │ │ │ ├── PlaylistQueryHelper.cs │ │ │ └── VideoQueryHelper.cs │ ├── Search │ │ ├── Search.API │ │ │ ├── Application │ │ │ │ ├── AutoMapperProfiles │ │ │ │ │ ├── AutoMapperProfile.cs │ │ │ │ │ └── FileUrlResolver.cs │ │ │ │ ├── Commands │ │ │ │ │ ├── CreateOrUpdateVideoSearchInfoCommand.cs │ │ │ │ │ ├── Handlers │ │ │ │ │ │ ├── CreateOrUpdateVideoSearchInfoCommandHandler.cs │ │ │ │ │ │ ├── RemoveVideoSearchInfoCommandHandler.cs │ │ │ │ │ │ ├── UpdateUserProfileCommandHandler.cs │ │ │ │ │ │ ├── UpdateVideoSearchInfoViewsMetricsCommandHandler.cs │ │ │ │ │ │ └── UpdateVideoSearchInfoVotesMetricsCommandHandler.cs │ │ │ │ │ ├── RemoveVideoSearchInfoCommand.cs │ │ │ │ │ ├── UpdateUserProfileCommand.cs │ │ │ │ │ ├── UpdateVideoSearchInfoViewsMetricsCommand.cs │ │ │ │ │ └── UpdateVideoSearchInfoVotesMetricsCommand.cs │ │ │ │ ├── Configurations │ │ │ │ │ ├── SearchConfiguration.cs │ │ │ │ │ └── StorageConfiguration.cs │ │ │ │ ├── DtoModels │ │ │ │ │ ├── CreatorProfileDto.cs │ │ │ │ │ ├── InternalUserProfileDto.cs │ │ │ │ │ ├── SearchByCreatorIdsDto.cs │ │ │ │ │ ├── SearchByQueryRequestDto.cs │ │ │ │ │ ├── SearchByTagsRequestDto.cs │ │ │ │ │ ├── SearchResponseDto.cs │ │ │ │ │ ├── SearchSort.cs │ │ │ │ │ ├── SearchTarget.cs │ │ │ │ │ ├── SearchableItemDto.cs │ │ │ │ │ ├── VideoDto.cs │ │ │ │ │ └── VideoMetricsDto.cs │ │ │ │ ├── IntegrationEventHandlers │ │ │ │ │ ├── History │ │ │ │ │ │ └── VideoViewsMetricsSyncIntegrationEventHandler.cs │ │ │ │ │ ├── Library │ │ │ │ │ │ ├── CreateOrUpdateVideoSearchInfoIntegrationEventHandler.cs │ │ │ │ │ │ ├── RemoveVideoSearchInfoIntegrationEventHandler.cs │ │ │ │ │ │ └── VideoVotesMetricsSyncIntegrationEventHandler.cs │ │ │ │ │ └── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEventHandler.cs │ │ │ │ ├── IntegrationEvents │ │ │ │ │ ├── History │ │ │ │ │ │ └── VideoViewsMetricsSyncIntegrationEvent.cs │ │ │ │ │ ├── Library │ │ │ │ │ │ ├── CreateOrUpdateVideoSearchInfoIntegrationEvent.cs │ │ │ │ │ │ ├── RemoveVideoSearchInfoIntegrationEvent.cs │ │ │ │ │ │ └── VideoVotesMetricsSyncIntegrationEvent.cs │ │ │ │ │ └── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEvent.cs │ │ │ │ └── Queries │ │ │ │ │ ├── Handlers │ │ │ │ │ ├── SearchRelevantTagsQueryHandler.cs │ │ │ │ │ ├── SearchTrendingTagsQueryHandler.cs │ │ │ │ │ ├── SearchVideosByTagsQueryHandler.cs │ │ │ │ │ └── SearchVideosQueryHandler.cs │ │ │ │ │ ├── SearchRelevantTagsQuery.cs │ │ │ │ │ ├── SearchTrendingTagsQuery.cs │ │ │ │ │ ├── SearchVideosByTagsQuery.cs │ │ │ │ │ ├── SearchVideosQuery.cs │ │ │ │ │ └── Services │ │ │ │ │ ├── ITagsQueryHelper.cs │ │ │ │ │ └── TagsQueryHelper.cs │ │ │ ├── Controllers │ │ │ │ └── SearchController.cs │ │ │ ├── Dockerfile │ │ │ ├── HostExtensions.cs │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── Search.API.csproj │ │ │ ├── appsettings.Development.json │ │ │ └── appsettings.json │ │ ├── Search.Domain │ │ │ ├── Models │ │ │ │ ├── Channel.cs │ │ │ │ ├── Playlist.cs │ │ │ │ ├── PlaylistMetrics.cs │ │ │ │ ├── SearchableItem.cs │ │ │ │ ├── UserProfile.cs │ │ │ │ ├── Video.cs │ │ │ │ └── VideoMetrics.cs │ │ │ └── Search.Domain.csproj │ │ └── Search.Infrastructure │ │ │ ├── Configurations │ │ │ ├── ScoreBoostConfiguration.cs │ │ │ └── UpdateConfiguration.cs │ │ │ ├── Contracts │ │ │ ├── IVideosCommandManager.cs │ │ │ └── IVideosQueryManager.cs │ │ │ ├── IndexCreators │ │ │ ├── SearchableDocumentIndexCreator.cs │ │ │ └── VideosIndexCreator.cs │ │ │ ├── Managers │ │ │ ├── VideosCommandManager.cs │ │ │ └── VideosQueryManager.cs │ │ │ ├── Search.Infrastructure.csproj │ │ │ └── Specifications │ │ │ ├── Pagination.cs │ │ │ ├── PeriodRange.cs │ │ │ ├── VideoSearchParameters.cs │ │ │ └── VideoSort.cs │ ├── Storage │ │ ├── Storage.API │ │ │ ├── Application │ │ │ │ ├── BackgroundTasks │ │ │ │ │ └── CleanupService.cs │ │ │ │ ├── Commands │ │ │ │ │ ├── FilesCleanupCommand.cs │ │ │ │ │ ├── Handlers │ │ │ │ │ │ ├── FilesCleanupCommandHandler.cs │ │ │ │ │ │ ├── RemoveFileCommandHandler.cs │ │ │ │ │ │ ├── ServiceUploadImageCommandHandler.cs │ │ │ │ │ │ ├── ServiceUploadVideoCommandHandler.cs │ │ │ │ │ │ ├── SetFileInUseCommandHandler.cs │ │ │ │ │ │ ├── UserUploadImageCommandHandler.cs │ │ │ │ │ │ └── UserUploadVideoCommandHandler.cs │ │ │ │ │ ├── RemoveFileCommand.cs │ │ │ │ │ ├── ServiceUploadImageCommand.cs │ │ │ │ │ ├── ServiceUploadVideoCommand.cs │ │ │ │ │ ├── SetFileInUseCommand.cs │ │ │ │ │ ├── UserUploadImageCommand.cs │ │ │ │ │ └── UserUploadVideoCommand.cs │ │ │ │ ├── Configurations │ │ │ │ │ ├── CleanupConfiguration.cs │ │ │ │ │ ├── ImageStorageConfiguration.cs │ │ │ │ │ ├── ImageUploadTokenValidationConfiguration.cs │ │ │ │ │ ├── VideoUploadTokenValidationConfiguration.cs │ │ │ │ │ └── VideoeStorageConfiguration.cs │ │ │ │ ├── DtoModels │ │ │ │ │ └── ImageUploadResponseDto.cs │ │ │ │ ├── IntegrationEventHandlers │ │ │ │ │ ├── FilesCleanupIntegrationEventHandler.cs │ │ │ │ │ ├── RemoveFileIntegrationEventHandler.cs │ │ │ │ │ └── SetFileInUseIntegrationEventHandler.cs │ │ │ │ ├── IntegrationEvents │ │ │ │ │ └── VideoUploadedIntegrationEvent.cs │ │ │ │ └── Services │ │ │ │ │ ├── FileStorageHandler.cs │ │ │ │ │ ├── IFileStorageHandler.cs │ │ │ │ │ ├── IImageFormatChecker.cs │ │ │ │ │ ├── ImageFormatChecker.cs │ │ │ │ │ └── ImageHeaderChecker.cs │ │ │ ├── Controllers │ │ │ │ ├── ImageStorageController.cs │ │ │ │ └── VideoStorageController.cs │ │ │ ├── Dockerfile │ │ │ ├── HostExtensions.cs │ │ │ ├── Migrations │ │ │ │ ├── 20230215140514_InitialCreate.Designer.cs │ │ │ │ ├── 20230215140514_InitialCreate.cs │ │ │ │ └── StorageDbContextModelSnapshot.cs │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── Storage.API.csproj │ │ │ ├── Utilities │ │ │ │ └── MultipartHelper.cs │ │ │ ├── appsettings.Development.json │ │ │ └── appsettings.json │ │ ├── Storage.Domain │ │ │ ├── Contracts │ │ │ │ ├── IFileRepository.cs │ │ │ │ ├── IFileTrackingRepository.cs │ │ │ │ └── IStorageRepository.cs │ │ │ ├── Models │ │ │ │ ├── FileProperty.cs │ │ │ │ ├── FileTracking.cs │ │ │ │ └── StoredFile.cs │ │ │ └── Storage.Domain.csproj │ │ ├── Storage.Infrastructure │ │ │ ├── EntityTypeConfigurations │ │ │ │ ├── FilePropertyEntityTypeConfiguration.cs │ │ │ │ ├── FileTrackingEntityTypeConfiguration.cs │ │ │ │ └── StoredFileEntityTypeConfiguration.cs │ │ │ ├── LocalStorage │ │ │ │ ├── LocalStorageConfiguration.cs │ │ │ │ ├── LocalStorageHelper.cs │ │ │ │ └── LocalStorageRepository.cs │ │ │ ├── Repositories │ │ │ │ ├── FileRepository.cs │ │ │ │ └── FileTrackingRepository.cs │ │ │ ├── Scanners │ │ │ │ └── IAntiVirusScanner.cs │ │ │ ├── Storage.Infrastructure.csproj │ │ │ ├── StorageDbContext.cs │ │ │ └── Validators │ │ │ │ ├── IAntiVirusScanner.cs │ │ │ │ ├── IImageFormatChecker.cs │ │ │ │ ├── ImageFormatChecker.cs │ │ │ │ └── ImageHeaderChecker.cs │ │ └── Storage.Shared │ │ │ ├── IntegrationEvents │ │ │ ├── FilesCleanupIntegrationEvent.cs │ │ │ ├── RemoveFileIntegrationEvent.cs │ │ │ └── SetFileInUseIntegrationEvent.cs │ │ │ └── Storage.Shared.csproj │ ├── Subscriptions │ │ ├── Subscriptions.API │ │ │ ├── Application │ │ │ │ ├── AutoMapperProfiles │ │ │ │ │ ├── AutoMapperProfile.cs │ │ │ │ │ └── FileUrlResolver.cs │ │ │ │ ├── Commands │ │ │ │ │ ├── ChangeNotificationTypeCommand.cs │ │ │ │ │ ├── CreateOrUpdateUserProfileCommand.cs │ │ │ │ │ ├── DeleteUserProfileCommand.cs │ │ │ │ │ ├── Handlers │ │ │ │ │ │ ├── ChangeNotificationTypeCommandHandler.cs │ │ │ │ │ │ ├── CreateOrUpdateUserProfileCommandHandler.cs │ │ │ │ │ │ ├── DeleteUserProfileCommandHandler.cs │ │ │ │ │ │ ├── MarkNotificationMessageCheckedCommandHandler.cs │ │ │ │ │ │ ├── PublishVideoUploadedCommandHandler.cs │ │ │ │ │ │ ├── RemoveNotificationMessageFromUserCommandHandler.cs │ │ │ │ │ │ ├── ResetUnreadNotificationMessageCountCommandHandler.cs │ │ │ │ │ │ ├── SubscribeToUserCommandHandler.cs │ │ │ │ │ │ └── UnsubscribeFromUserCommandHandler.cs │ │ │ │ │ ├── MarkNotificationMessageCheckedCommand.cs │ │ │ │ │ ├── PublishVideoUploadedCommand.cs │ │ │ │ │ ├── RemoveNotificationMessageFromUserCommand.cs │ │ │ │ │ ├── ResetUnreadNotificationMessageCountCommand.cs │ │ │ │ │ ├── SubscribeToUserCommand.cs │ │ │ │ │ └── UnsubscribeFromUserCommand.cs │ │ │ │ ├── Configurations │ │ │ │ │ ├── NotificationConfiguration.cs │ │ │ │ │ └── StorageConfiguration.cs │ │ │ │ ├── DtoModels │ │ │ │ │ ├── ChangeNotificationTypeRequestDto.cs │ │ │ │ │ ├── DetailedSubscriptionDto.cs │ │ │ │ │ ├── DetailedSubscriptionsDto.cs │ │ │ │ │ ├── DetailedUserProfileDto.cs │ │ │ │ │ ├── GetNotificationMessageResponseDto.cs │ │ │ │ │ ├── GetSubscriptionsRequestDto.cs │ │ │ │ │ ├── InternalUserProfileDto.cs │ │ │ │ │ ├── NotificationMessageDto.cs │ │ │ │ │ ├── SubscribeRequestDto.cs │ │ │ │ │ ├── SubscriptionDto.cs │ │ │ │ │ ├── SubscriptionStatusDto.cs │ │ │ │ │ ├── SubscriptionTargetIdsDto.cs │ │ │ │ │ ├── SubscriptionsDto.cs │ │ │ │ │ ├── UserProfileDto.cs │ │ │ │ │ └── UserSubscriptionInfoDto.cs │ │ │ │ ├── IntegrationEventHandlers │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEventHandler.cs │ │ │ │ │ └── VideoStore │ │ │ │ │ │ └── VideoPublishedWithPublicVisibilityIntegrationEventHandler.cs │ │ │ │ ├── IntegrationEvents │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEvent.cs │ │ │ │ │ └── VideoStore │ │ │ │ │ │ └── VideoPublishedWithPublicVisibilityIntegrationEvent.cs │ │ │ │ ├── Queries │ │ │ │ │ ├── GetDetailedSubscriptionsQuery.cs │ │ │ │ │ ├── GetNotificationMessageCountQuery.cs │ │ │ │ │ ├── GetNotificationMessagesQuery.cs │ │ │ │ │ ├── GetSubscriptionStatusQuery.cs │ │ │ │ │ ├── GetSubscriptionTargetIdsQuery.cs │ │ │ │ │ ├── GetSubscriptionsQuery.cs │ │ │ │ │ ├── GetUnreadNotificationMessageCountQuery.cs │ │ │ │ │ ├── GetUserSubscriptionInfoQuery.cs │ │ │ │ │ └── Handlers │ │ │ │ │ │ ├── GetDetailedSubscriptionsQueryHandler.cs │ │ │ │ │ │ ├── GetNotificationMessagesQueryHandler.cs │ │ │ │ │ │ ├── GetSubscriptionStatusQueryHandler.cs │ │ │ │ │ │ ├── GetSubscriptionTargetIdsQueryHandler.cs │ │ │ │ │ │ ├── GetSubscriptionsQueryHandler.cs │ │ │ │ │ │ ├── GetUnreadNotificationMessageCountQueryHandler.cs │ │ │ │ │ │ └── GetUserSubscriptionInfoQueryHandler.cs │ │ │ │ └── RoutingSlipCheckpointHandlers │ │ │ │ │ └── RegisterUserProfileCheckpointHandler.cs │ │ │ ├── Controllers │ │ │ │ ├── NotificationsController.cs │ │ │ │ └── SubscriptionsController.cs │ │ │ ├── Dockerfile │ │ │ ├── HostExtensions.cs │ │ │ ├── Migrations │ │ │ │ ├── 20230215140500_InitialCreate.Designer.cs │ │ │ │ ├── 20230215140500_InitialCreate.cs │ │ │ │ └── SubscriptionsDbContextModelSnapshot.cs │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── Subscriptions.API.csproj │ │ │ ├── appsettings.Development.json │ │ │ └── appsettings.json │ │ ├── Subscriptions.Domain │ │ │ ├── Contracts │ │ │ │ ├── INotificationDataAccess.cs │ │ │ │ ├── ISubscriptionRepository.cs │ │ │ │ └── IUserProfileRepository.cs │ │ │ ├── Models │ │ │ │ ├── NotificationMessage.cs │ │ │ │ ├── NotificationType.cs │ │ │ │ ├── Subscription.cs │ │ │ │ └── UserProfile.cs │ │ │ ├── Specifications │ │ │ │ ├── Pagination.cs │ │ │ │ └── SubscriptionTargetSort.cs │ │ │ └── Subscriptions.Domain.csproj │ │ └── Subscriptions.Infrastructure │ │ │ ├── DataAccess │ │ │ └── NotificationDataAccess.cs │ │ │ ├── EntityTypeConfigurations │ │ │ ├── SubscriptionEntityTypeConfiguration.cs │ │ │ └── UserProfileEntityTypeConfiguration.cs │ │ │ ├── Repositories │ │ │ ├── SubscriptionRepository.cs │ │ │ └── UserProfileRepository.cs │ │ │ ├── Services │ │ │ ├── ISubscriptionQueryManager.cs │ │ │ └── SubscriptionQueryManager.cs │ │ │ ├── Subscriptions.Infrastructure.csproj │ │ │ └── SubscriptionsDbContext.cs │ ├── Users │ │ ├── Users.API │ │ │ ├── Application │ │ │ │ ├── AutoMapperProfiles │ │ │ │ │ ├── AutoMapperProfile.cs │ │ │ │ │ ├── ChannelSectionsAutoMapperProfile.cs │ │ │ │ │ ├── FileUrlResolver.cs │ │ │ │ │ └── ImageFileResolver.cs │ │ │ │ ├── Commands │ │ │ │ │ ├── CompleteUserProfileRegistrationCommand.cs │ │ │ │ │ ├── CreateUserProfileCommand.cs │ │ │ │ │ ├── FailUserProfileRegistrationCommand.cs │ │ │ │ │ ├── Handlers │ │ │ │ │ │ ├── CompleteUserProfileRegistrationCommandHandler.cs │ │ │ │ │ │ ├── CreateUserProfileCommandHandler.cs │ │ │ │ │ │ ├── FailUserProfileRegistrationCommandHandler.cs │ │ │ │ │ │ └── UpdateUserCommandHandler.cs │ │ │ │ │ ├── UpdateUserCommand.cs │ │ │ │ │ └── Validators │ │ │ │ │ │ ├── CreateUserProfileCommandValidator.cs │ │ │ │ │ │ └── UpdateUserCommandValidator.cs │ │ │ │ ├── Configurations │ │ │ │ │ ├── ImageTokenValidationConfiguration.cs │ │ │ │ │ ├── ImageUploadConfiguration.cs │ │ │ │ │ └── StorageConfiguration.cs │ │ │ │ ├── DomainEventHandlers │ │ │ │ │ ├── UserBannerUpdatedDomainEventHandler.cs │ │ │ │ │ ├── UserProfileCreatedDomainEventHandler.cs │ │ │ │ │ ├── UserProfileUpdatedDomainEventHandler.cs │ │ │ │ │ └── UserThumbnailUpdatedDomainEventHandler.cs │ │ │ │ ├── DtoModels │ │ │ │ │ ├── ChannelSectionDto.cs │ │ │ │ │ ├── CreateUserProfileRequestDto.cs │ │ │ │ │ ├── DetailedUserChannelDto.cs │ │ │ │ │ ├── DetailedUserChannelInfoDto.cs │ │ │ │ │ ├── DetailedUserProfileDto.cs │ │ │ │ │ ├── GetBannerUploadTokenResponseDto.cs │ │ │ │ │ ├── GetThumbnailUploadTokenResponseDto.cs │ │ │ │ │ ├── InternalUserProfileDto.cs │ │ │ │ │ ├── PrivateUserProfileDto.cs │ │ │ │ │ ├── UpdateUserRequestDto.cs │ │ │ │ │ ├── UserChannelDto.cs │ │ │ │ │ ├── UserChannelInfoDto.cs │ │ │ │ │ ├── UserDataDto.cs │ │ │ │ │ └── UserProfileDto.cs │ │ │ │ ├── IntegrationEvents │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEvent.cs │ │ │ │ ├── Queries │ │ │ │ │ ├── CheckForHandleAvailabilityQuery.cs │ │ │ │ │ ├── GetBannerUploadTokenQuery.cs │ │ │ │ │ ├── GetChannelSectionQuery.cs │ │ │ │ │ ├── GetThumbnailUploadTokenQuery.cs │ │ │ │ │ ├── GetUserChannelQuery.cs │ │ │ │ │ ├── GetUserProfileQuery.cs │ │ │ │ │ └── Handlers │ │ │ │ │ │ ├── CheckForHandleAvailabilityQueryHandler.cs │ │ │ │ │ │ ├── GetBannerUploadTokenQueryHandler.cs │ │ │ │ │ │ ├── GetChannelSectionQueryHandler.cs │ │ │ │ │ │ ├── GetThumbnailUploadTokenQueryHandler.cs │ │ │ │ │ │ ├── GetUserChannelQueryHandler.cs │ │ │ │ │ │ └── GetUserProfileQueryHandler.cs │ │ │ │ ├── RoutingSlipCheckpointHandlers │ │ │ │ │ ├── UserProfileRegisteredCheckpointHandler.cs │ │ │ │ │ └── UserProfileRegistrationFailedCheckpointHandler.cs │ │ │ │ ├── Services │ │ │ │ │ ├── IImageValidator.cs │ │ │ │ │ └── ImageValidator.cs │ │ │ │ └── Utilities │ │ │ │ │ └── Categories.cs │ │ │ ├── Controller │ │ │ │ ├── UserChannelsController.cs │ │ │ │ ├── UserProfilesController.cs │ │ │ │ └── UsersController.cs │ │ │ ├── Dockerfile │ │ │ ├── HostExtensions.cs │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── Users.API.csproj │ │ │ ├── appsettings.Development.json │ │ │ └── appsettings.json │ │ ├── Users.Domain │ │ │ ├── Contracts │ │ │ │ ├── IUserChannelRepository.cs │ │ │ │ └── IUserProfileRepository.cs │ │ │ ├── DomainEvents │ │ │ │ ├── UserChannelBannerUpdatedDomainEvent.cs │ │ │ │ ├── UserChannelLayoutUpdatedDomainEvent.cs │ │ │ │ ├── UserProfileCreatedDomainEvent.cs │ │ │ │ ├── UserProfileInfoUpdatedDomainEvent.cs │ │ │ │ ├── UserProfileStatusUpdatedDomainEvent.cs │ │ │ │ ├── UserProfileThumbnailUpdatedDomainEvent.cs │ │ │ │ └── UserProfileUpdatedDomainEvent.cs │ │ │ ├── Models │ │ │ │ ├── ChannelSection.cs │ │ │ │ ├── ImageFile.cs │ │ │ │ ├── UserChannel.cs │ │ │ │ ├── UserProfile.cs │ │ │ │ └── UserProfileStatus.cs │ │ │ ├── Rules │ │ │ │ ├── UserChannels │ │ │ │ │ └── ChannelSectionsCountRule.cs │ │ │ │ └── UserProfiles │ │ │ │ │ ├── DescriptionLengthRule.cs │ │ │ │ │ ├── DisplayNameCharactersRule.cs │ │ │ │ │ ├── DisplayNameLengthRule.cs │ │ │ │ │ ├── EmailLengthRule.cs │ │ │ │ │ ├── EmailPatternRule.cs │ │ │ │ │ ├── HandleLengthRule.cs │ │ │ │ │ └── HandlePatternRule.cs │ │ │ ├── Specifications │ │ │ │ └── Pagination.cs │ │ │ └── Users.Domain.csproj │ │ └── Users.Infrastructure │ │ │ ├── ClassMaps │ │ │ ├── ChannelSectionClassMap.cs │ │ │ ├── CreatedPlaylistsSectionClassMap.cs │ │ │ ├── ImageFileClassMap.cs │ │ │ ├── MultiplePlaylistsSectionClassMap.cs │ │ │ ├── SinglePlaylistSectionClassMap.cs │ │ │ ├── UserChannelClassMap.cs │ │ │ ├── UserProfileClassMap.cs │ │ │ └── VideosSectionClassMap.cs │ │ │ ├── CollectionSeeders │ │ │ ├── UserChannelCollectionSeeder.cs │ │ │ └── UserProfileCollectionSeeder.cs │ │ │ ├── DomainEventHandlers │ │ │ ├── UserChannelBannerUpdatedDomainEventHandler.cs │ │ │ ├── UserChannelLayoutUpdatedDomainEventHandler.cs │ │ │ ├── UserProfileInfoUpdatedDomainEventHandler.cs │ │ │ ├── UserProfileStatusUpdatedDomainEventHandler.cs │ │ │ └── UserProfileThumbnailUpdatedDomainEventHandler.cs │ │ │ ├── Repositories │ │ │ ├── UserChannelRepository.cs │ │ │ └── UserProfileRepository.cs │ │ │ └── Users.Infrastructure.csproj │ ├── VideoManager │ │ ├── VideoManager.API │ │ │ ├── Application │ │ │ │ ├── AutoMapperProfiles │ │ │ │ │ ├── AutoMapperProfile.cs │ │ │ │ │ └── FileUrlResolver.cs │ │ │ │ ├── Commands │ │ │ │ │ ├── AddProcessedVideoCommand.cs │ │ │ │ │ ├── AddVideoThumbnailsCommand.cs │ │ │ │ │ ├── CompleteVideoProcessingCommand.cs │ │ │ │ │ ├── CreateOrUpdateUserProfileCommand.cs │ │ │ │ │ ├── CreateVideoCommand.cs │ │ │ │ │ ├── DeleteUserProfileCommand.cs │ │ │ │ │ ├── Handlers │ │ │ │ │ │ ├── AddProcessedVideoCommandHandler.cs │ │ │ │ │ │ ├── AddVideoThumbnailsCommandHandler.cs │ │ │ │ │ │ ├── CompleteVideoProcessingCommandHandler.cs │ │ │ │ │ │ ├── CreateOrUpdateUserProfileCommandHandler.cs │ │ │ │ │ │ ├── CreateVideoCommandHandler.cs │ │ │ │ │ │ ├── DeleteUserProfileCommandHandler.cs │ │ │ │ │ │ ├── SetVideoInfoCommandHandler.cs │ │ │ │ │ │ ├── SetVideoProcessingFailedStatusCommandHandler.cs │ │ │ │ │ │ ├── SetVideoPublishStatusCommandHandler.cs │ │ │ │ │ │ ├── SetVideoRegisteredStatusCommandHandler.cs │ │ │ │ │ │ ├── SetVideoRegistrationFailedStatusCommandHandler.cs │ │ │ │ │ │ ├── SetVideoUploadedStatusCommandHandler.cs │ │ │ │ │ │ ├── SetVideoVideoBeingProcssedStatusCommandHandler.cs │ │ │ │ │ │ ├── UnregisterVideoCommandHandler.cs │ │ │ │ │ │ ├── UpdateVideoCommentsMetricsCommandHandler.cs │ │ │ │ │ │ ├── UpdateVideoViewsMetricsCommandHandler.cs │ │ │ │ │ │ └── UpdateVideoVotesMetricsCommandHandler.cs │ │ │ │ │ ├── SetVideoBeingProcssedStatusCommand.cs │ │ │ │ │ ├── SetVideoInfoCommand.cs │ │ │ │ │ ├── SetVideoProcessingFailedStatusCommand.cs │ │ │ │ │ ├── SetVideoPublishStatusCommand.cs │ │ │ │ │ ├── SetVideoRegisteredStatusCommand.cs │ │ │ │ │ ├── SetVideoRegistrationFailedStatusCommand.cs │ │ │ │ │ ├── SetVideoThumbnailCommand.cs │ │ │ │ │ ├── SetVideoUploadedStatusCommand.cs │ │ │ │ │ ├── UnregisterVideoCommand.cs │ │ │ │ │ ├── UpdateVideoCommentsMetricsCommand.cs │ │ │ │ │ ├── UpdateVideoViewsMetricsCommand.cs │ │ │ │ │ ├── UpdateVideoVotesMetricsCommand.cs │ │ │ │ │ └── Validators │ │ │ │ │ │ ├── CreateVideoCommandValidator.cs │ │ │ │ │ │ └── SetVideoInfoCommandValidator.cs │ │ │ │ ├── Configurations │ │ │ │ │ ├── StorageConfiguration.cs │ │ │ │ │ └── VideoUploadConfiguration.cs │ │ │ │ ├── DomainEventHandlers │ │ │ │ │ ├── ProcessedVideoAddedDomainEventHandler.cs │ │ │ │ │ ├── VideoBeingProcessedDomainEventHandler.cs │ │ │ │ │ ├── VideoInfoUpdatedDomainEventHandler.cs │ │ │ │ │ ├── VideoProcessedDomainEventHandler.cs │ │ │ │ │ ├── VideoProcessingFailedDomainEventHandler.cs │ │ │ │ │ ├── VideoRegisteredDomainEventHandler.cs │ │ │ │ │ ├── VideoThumbnailsUpdatedDomainEventHandler.cs │ │ │ │ │ ├── VideoUnregisteredDomainEventHandler.cs │ │ │ │ │ └── VideoUploadedDomainEventHandler.cs │ │ │ │ ├── DtoModels │ │ │ │ │ ├── CreateVideoRequestDto.cs │ │ │ │ │ ├── GetVideosRequestDto.cs │ │ │ │ │ ├── GetVideosResponseDto.cs │ │ │ │ │ ├── InternalUserProfileDto.cs │ │ │ │ │ ├── ProcessedVideoDto.cs │ │ │ │ │ ├── SetVideoInfoRequestDto.cs │ │ │ │ │ ├── VideoDto.cs │ │ │ │ │ ├── VideoForumCreationPropertiesDto.cs │ │ │ │ │ ├── VideoMetricsDto.cs │ │ │ │ │ ├── VideoPreviewThumbnailDto.cs │ │ │ │ │ ├── VideoRegistartionPropertiesDto.cs │ │ │ │ │ ├── VideoThumbnailDto.cs │ │ │ │ │ └── VideoUploadTokenResponseDto.cs │ │ │ │ ├── IntegrationEventHandlers │ │ │ │ │ ├── Community │ │ │ │ │ │ └── VideoCommentsMetricsSyncIntegrationEventHandler.cs │ │ │ │ │ ├── History │ │ │ │ │ │ └── VideoViewsMetricsSyncIntegrationEventHandler.cs │ │ │ │ │ ├── Library │ │ │ │ │ │ └── VideoVotesMetricsSyncIntegrationEventHandler.cs │ │ │ │ │ ├── Storage │ │ │ │ │ │ └── VideoUploadedIntegrationEventHandler.cs │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEventHandler.cs │ │ │ │ │ ├── VideoProcessor │ │ │ │ │ │ ├── VideoProcessingCompleteIntegrationEventHandler.cs │ │ │ │ │ │ ├── VideoProcessingFailedIntegrationEventHandler.cs │ │ │ │ │ │ ├── VideoProcessingStartedIntegrationEventHandler.cs │ │ │ │ │ │ ├── VideoProcessingThumbnailsAddedIntegrationEventHandler.cs │ │ │ │ │ │ └── VideoProcessingVideoAddedIntegrationEventHandler.cs │ │ │ │ │ └── VideoStore │ │ │ │ │ │ ├── VideoPublishedIntegrationEventHandler.cs │ │ │ │ │ │ └── VideoUnpublishedIntegrationEventHandler.cs │ │ │ │ ├── IntegrationEvents │ │ │ │ │ ├── Community │ │ │ │ │ │ ├── VideoCommentsMetricsSyncIntegrationEvent.cs │ │ │ │ │ │ └── VideoRegisteredToCommunityIntegrationEvent.cs │ │ │ │ │ ├── History │ │ │ │ │ │ └── VideoViewsMetricsSyncIntegrationEvent.cs │ │ │ │ │ ├── Library │ │ │ │ │ │ ├── VideoRegisteredToLibraryIntegrationEvent.cs │ │ │ │ │ │ └── VideoVotesMetricsSyncIntegrationEvent.cs │ │ │ │ │ ├── NotifyProcessedVideoAddedIntegrationEvent.cs │ │ │ │ │ ├── NotifyVideoBeingProcessedIntegrationEvent.cs │ │ │ │ │ ├── NotifyVideoProcessedIntegrationEvent.cs │ │ │ │ │ ├── NotifyVideoProcessingFailedIntegrationEvent.cs │ │ │ │ │ ├── NotifyVideoRegisteredIntegrationEvent.cs │ │ │ │ │ ├── NotifyVideoThumbnailsAddedIntegrationEvent.cs │ │ │ │ │ ├── NotifyVideoUploadedIntegrationEvent.cs │ │ │ │ │ ├── RequestVideoProcessingIntegrationEvent.cs │ │ │ │ │ ├── SetVideoReadyIntegrationEvent.cs │ │ │ │ │ ├── Storage │ │ │ │ │ │ └── VideoUploadedIntegrationEvent.cs │ │ │ │ │ ├── UnregisterVideoIntegrationEvent.cs │ │ │ │ │ ├── UpdateStoreVideoResourcesIntegrationEvent.cs │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEvent.cs │ │ │ │ │ ├── VideoInfoUpdatedIntegrationEvent.cs │ │ │ │ │ ├── VideoProcessor │ │ │ │ │ │ ├── VideoProcessingCompleteIntegrationEvent.cs │ │ │ │ │ │ ├── VideoProcessingFailedIntegrationEvent.cs │ │ │ │ │ │ ├── VideoProcessingStartedIntegrationEvent.cs │ │ │ │ │ │ ├── VideoProcessingThumbnailsAddedIntegrationEvent.cs │ │ │ │ │ │ └── VideoProcessingVideoAddedIntegrationEvent.cs │ │ │ │ │ └── VideoStore │ │ │ │ │ │ ├── VideoPublishedIntegrationEvent.cs │ │ │ │ │ │ ├── VideoRegisteredToStoreIntegrationEvent.cs │ │ │ │ │ │ └── VideoUnpublishedIntegrationEvent.cs │ │ │ │ ├── Queries │ │ │ │ │ ├── GetVideoQuery.cs │ │ │ │ │ ├── GetVideoUploadTokenQuery.cs │ │ │ │ │ ├── GetVideosQuery.cs │ │ │ │ │ └── Handlers │ │ │ │ │ │ ├── GetVideoQueryHandler.cs │ │ │ │ │ │ ├── GetVideoUploadTokenQueryHandler.cs │ │ │ │ │ │ └── GetVideosQueryHandler.cs │ │ │ │ ├── RoutingSlipCheckpointHandlers │ │ │ │ │ ├── RegisterUserProfileCheckpointHandler.cs │ │ │ │ │ ├── VideoRegisteredCheckpointHandler.cs │ │ │ │ │ └── VideoRegistrationFailedCheckpointHandler.cs │ │ │ │ └── Utilities │ │ │ │ │ ├── Categories.cs │ │ │ │ │ └── VideoSorts.cs │ │ │ ├── Controllers │ │ │ │ └── VideoManagerController.cs │ │ │ ├── Dockerfile │ │ │ ├── HostExtensions.cs │ │ │ ├── Migrations │ │ │ │ ├── 20230215140443_InitialCreate.Designer.cs │ │ │ │ ├── 20230215140443_InitialCreate.cs │ │ │ │ └── VideoManagerDbContextModelSnapshot.cs │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── VideoManager.API.csproj │ │ │ ├── appsettings.Development.json │ │ │ └── appsettings.json │ │ ├── VideoManager.Domain │ │ │ ├── Contracts │ │ │ │ ├── IUserProfileRepository.cs │ │ │ │ └── IVideoRepository.cs │ │ │ ├── DomainEvents │ │ │ │ ├── ProcessedVideoAddedDomainEvent.cs │ │ │ │ ├── VideoBeingProcessedDomainEvent.cs │ │ │ │ ├── VideoInfoUpdatedDomainEvent.cs │ │ │ │ ├── VideoProcessedDomainEvent.cs │ │ │ │ ├── VideoProcessingFailedDomainEvent.cs │ │ │ │ ├── VideoRegisteredDomainEvent.cs │ │ │ │ ├── VideoThumbnailsUpdatedDomainEvent.cs │ │ │ │ ├── VideoUnregisteredDomainEvent.cs │ │ │ │ └── VideoUploadedDomainEvent.cs │ │ │ ├── Models │ │ │ │ ├── ProcessedVideo.cs │ │ │ │ ├── UserProfile.cs │ │ │ │ ├── Video.cs │ │ │ │ ├── VideoMetrics.cs │ │ │ │ ├── VideoPreviewThumbnail.cs │ │ │ │ ├── VideoProcessingStatus.cs │ │ │ │ ├── VideoStatus.cs │ │ │ │ ├── VideoThumbnail.cs │ │ │ │ ├── VideoThumbnailStatus.cs │ │ │ │ └── VideoVisibility.cs │ │ │ ├── Rules │ │ │ │ └── Videos │ │ │ │ │ ├── DescriptionLengthRule.cs │ │ │ │ │ ├── TagsLengthRule.cs │ │ │ │ │ ├── TitleLengthRule.cs │ │ │ │ │ └── ValidVideoVisibilityRule.cs │ │ │ ├── Specifications │ │ │ │ └── VideoSort.cs │ │ │ └── VideoManager.Domain.csproj │ │ ├── VideoManager.Infrastructure │ │ │ ├── EntityTypeConfigurations │ │ │ │ ├── ProcessedVideoEntityTypeConfiguration.cs │ │ │ │ ├── UserProfileEntityTypeConfiguration.cs │ │ │ │ ├── VideoEntityTypeConfiguration.cs │ │ │ │ └── VideoThumbnailEntityTypeConfiguration.cs │ │ │ ├── Repositories │ │ │ │ ├── UserProfileRepository.cs │ │ │ │ └── VideoRepository.cs │ │ │ ├── VideoManager.Infrastructure.csproj │ │ │ └── VideoManagerDbContext.cs │ │ └── VideoManager.SignalRHub │ │ │ ├── Dockerfile │ │ │ ├── DtoModels │ │ │ ├── ProcessedVideoDto.cs │ │ │ ├── VideoDto.cs │ │ │ ├── VideoMetricsDto.cs │ │ │ ├── VideoThumbnailDto.cs │ │ │ └── VideoVisibility.cs │ │ │ ├── HostExtensions.cs │ │ │ ├── Hubs │ │ │ ├── IVideoManagerHubClient.cs │ │ │ └── VideoManagerHub.cs │ │ │ ├── IntegrationEventHandlers │ │ │ └── VideoManager │ │ │ │ ├── NotifyProcessedVideoAddedIntegrationEventHandler.cs │ │ │ │ ├── NotifyVideoBeingProcessedIntegrationEventHandler.cs │ │ │ │ ├── NotifyVideoProcessedIntegrationEventHandler.cs │ │ │ │ ├── NotifyVideoProcessingFailedIntegrationEventHandler.cs │ │ │ │ ├── NotifyVideoRegisteredIntegrationEventHandler.cs │ │ │ │ ├── NotifyVideoThumbnailsAddedIntegrationEventHandler.cs │ │ │ │ └── NotifyVideoUploadedIntegrationEventHandler.cs │ │ │ ├── IntegrationEvents │ │ │ └── VideoManager │ │ │ │ ├── NotifyProcessedVideoAddedIntegrationEvent.cs │ │ │ │ ├── NotifyVideoBeingProcessedIntegrationEvent.cs │ │ │ │ ├── NotifyVideoProcessedIntegrationEvent.cs │ │ │ │ ├── NotifyVideoProcessingFailedIntegrationEvent.cs │ │ │ │ ├── NotifyVideoRegisteredIntegrationEvent.cs │ │ │ │ ├── NotifyVideoThumbnailsAddedIntegrationEvent.cs │ │ │ │ └── NotifyVideoUploadedIntegrationEvent.cs │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ └── launchSettings.json │ │ │ ├── VideoManager.SignalRHub.csproj │ │ │ ├── appsettings.Development.json │ │ │ └── appsettings.json │ ├── VideoProcessor │ │ ├── VideoProcessor.Application │ │ │ ├── AutoMapperProfiles │ │ │ │ └── AutoMapperProfile.cs │ │ │ ├── BackgroundTasks │ │ │ │ ├── ConcurrentProcessesMetricsUpdater.cs │ │ │ │ ├── Processors │ │ │ │ │ ├── FileDownloaders │ │ │ │ │ │ ├── FileDownloader.cs │ │ │ │ │ │ └── IFileDownloader.cs │ │ │ │ │ ├── FileUploaders │ │ │ │ │ │ ├── FileUploader.cs │ │ │ │ │ │ └── IFileUploader.cs │ │ │ │ │ ├── VideoGenerators │ │ │ │ │ │ ├── IVideoGenerator.cs │ │ │ │ │ │ └── VideoGenerator.cs │ │ │ │ │ ├── VideoInfoGenerators │ │ │ │ │ │ ├── IVideoInfoGenerator.cs │ │ │ │ │ │ └── VideoInfoGenerator.cs │ │ │ │ │ ├── VideoPreviewThumbnailGenerators │ │ │ │ │ │ ├── IVideoPreviewThumbnailGenerator.cs │ │ │ │ │ │ └── VideoPreviewThumbnailGenerator.cs │ │ │ │ │ └── VideoThumbnailGenerators │ │ │ │ │ │ ├── IVideoThumbnailGenerator.cs │ │ │ │ │ │ └── VideoThumbnailGenerator.cs │ │ │ │ ├── VideoProcessingLock.cs │ │ │ │ └── VideoProcessingService.cs │ │ │ ├── Configurations │ │ │ │ ├── KubernetesPodConfiguration.cs │ │ │ │ ├── LocalTempStorageConfiguration.cs │ │ │ │ ├── StorageConfiguration.cs │ │ │ │ ├── VideoGeneratorConfiguration.cs │ │ │ │ └── VideoProcessorConfiguration.cs │ │ │ ├── Dockerfile │ │ │ ├── DomainEventHandlers │ │ │ │ ├── VideoProcessingCompleteDomainEventHandler.cs │ │ │ │ ├── VideoProcessingFailedDomainEventHandler.cs │ │ │ │ ├── VideoProcessingStartedDomainEventHandler.cs │ │ │ │ ├── VideoProcessingThumbnailsAddedDomainEventHandler.cs │ │ │ │ └── VideoProcessingVideoAddedDomainEventHandler.cs │ │ │ ├── DtoModels │ │ │ │ ├── ProcessedVideoDto.cs │ │ │ │ ├── VideoPreviewThumbnailDto.cs │ │ │ │ └── VideoThumbnailDto.cs │ │ │ ├── HostExtensions.cs │ │ │ ├── Infrastructure │ │ │ │ ├── ITempDirectoryRepository.cs │ │ │ │ ├── TempDirectory.cs │ │ │ │ ├── TempDirectoryDbContext.cs │ │ │ │ └── TempDirectoryRepository.cs │ │ │ ├── IntegrationEventHandlers │ │ │ │ └── VideoManager │ │ │ │ │ └── RequestVideoProcessingIntegrationEventHandler.cs │ │ │ ├── IntegrationEvents │ │ │ │ ├── VideoManager │ │ │ │ │ └── RequestVideoProcessingIntegrationEvent.cs │ │ │ │ ├── VideoProcessingCompleteIntegrationEvent.cs │ │ │ │ ├── VideoProcessingFailedIntegrationEvent.cs │ │ │ │ ├── VideoProcessingStartedIntegrationEvent.cs │ │ │ │ ├── VideoProcessingThumbnailsAddedIntegrationEvent.cs │ │ │ │ └── VideoProcessingVideoAddedIntegrationEvent.cs │ │ │ ├── Migrations │ │ │ │ ├── 20230215140406_InitialCreate.Designer.cs │ │ │ │ ├── 20230215140406_InitialCreate.cs │ │ │ │ ├── 20230226101558_FixLockVersion.Designer.cs │ │ │ │ ├── 20230226101558_FixLockVersion.cs │ │ │ │ ├── TempDirectoryDb │ │ │ │ │ ├── 20230102155753_IniitalCreate.Designer.cs │ │ │ │ │ ├── 20230102155753_IniitalCreate.cs │ │ │ │ │ └── TempDirectoryDbContextModelSnapshot.cs │ │ │ │ └── VideoProcessorDbContextModelSnapshot.cs │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── Services │ │ │ │ ├── IKubernetesPodUpdater.cs │ │ │ │ └── KubernetesPodUpdater.cs │ │ │ ├── Utilities │ │ │ │ ├── Categories.cs │ │ │ │ ├── FFmpegHelper.cs │ │ │ │ ├── GracefulTerminationConfiguration.cs │ │ │ │ └── HttpClients.cs │ │ │ ├── VideoProcessor.Application.csproj │ │ │ ├── appsettings.Development.json │ │ │ ├── appsettings.json │ │ │ └── version.json │ │ ├── VideoProcessor.Domain │ │ │ ├── Contracts │ │ │ │ └── IVideoRepository.cs │ │ │ ├── DomainEvents │ │ │ │ ├── VideoProcessingCompleteDomainEvent.cs │ │ │ │ ├── VideoProcessingFailedDomainEvent.cs │ │ │ │ ├── VideoProcessingStartedDomainEvent.cs │ │ │ │ ├── VideoProcessingThumbnailsAddedDomainEvent.cs │ │ │ │ └── VideoProcessingVideoAddedDomainEvent.cs │ │ │ ├── Models │ │ │ │ ├── ProcessedVideo.cs │ │ │ │ ├── Video.cs │ │ │ │ ├── VideoInfo.cs │ │ │ │ ├── VideoPreviewThumbnail.cs │ │ │ │ ├── VideoProcessingStatus.cs │ │ │ │ ├── VideoProcessingStep.cs │ │ │ │ └── VideoThumbnail.cs │ │ │ └── VideoProcessor.Domain.csproj │ │ └── VideoProcessor.Infrastructure │ │ │ ├── EntityTypeConfigurations │ │ │ ├── ProcessedVideoEntityTypeConfiguration.cs │ │ │ ├── VideoEntityTypeConfiguration.cs │ │ │ ├── VideoProcessingStepEntityTypeConfiguration.cs │ │ │ └── VideoThumbnailEntityTypeConfiguration.cs │ │ │ ├── Repositories │ │ │ └── VideoRepository.cs │ │ │ ├── VideoProcessor.Infrastructure.csproj │ │ │ └── VideoProcessorDbContext.cs │ ├── VideoStore │ │ ├── VideoStore.API │ │ │ ├── Application │ │ │ │ ├── AutoMapperProfiles │ │ │ │ │ ├── AutoMapperProfile.cs │ │ │ │ │ └── FileUrlResolver.cs │ │ │ │ ├── Commands │ │ │ │ │ ├── CreateOrUpdateUserProfileCommand.cs │ │ │ │ │ ├── DeleteUserProfileCommand.cs │ │ │ │ │ ├── Handlers │ │ │ │ │ │ ├── CreateOrUpdateUserProfileCommandHandler.cs │ │ │ │ │ │ ├── DeleteUserProfileCommandHandler.cs │ │ │ │ │ │ ├── RegisterVideoCommandHandler.cs │ │ │ │ │ │ ├── SetVideoReadyCommandHandler.cs │ │ │ │ │ │ ├── UnregisterVideoCommandHandler.cs │ │ │ │ │ │ ├── UpdateVideoInfoCommandHandler.cs │ │ │ │ │ │ ├── UpdateVideoResourcesCommandHandler.cs │ │ │ │ │ │ └── UpdateVideoViewsMetricsCommandHandler.cs │ │ │ │ │ ├── RegisterVideoCommand.cs │ │ │ │ │ ├── SetVideoReadyCommand.cs │ │ │ │ │ ├── UnregisterVideoCommand.cs │ │ │ │ │ ├── UpdateVideoInfoCommand.cs │ │ │ │ │ ├── UpdateVideoResourcesCommand.cs │ │ │ │ │ └── UpdateVideoViewsMetricsCommand.cs │ │ │ │ ├── Configurations │ │ │ │ │ └── StorageConfiguration.cs │ │ │ │ ├── DomainEventHandlers │ │ │ │ │ ├── VideoCreatedDomainEventHandler.cs │ │ │ │ │ ├── VideoPublishedDomainEventHandler.cs │ │ │ │ │ ├── VideoPublishedWithPublicVisibilityDomainEventHandler.cs │ │ │ │ │ ├── VideoUnpublishedDomainEventHandler.cs │ │ │ │ │ ├── VideoUnregisteredDomainEventHandler.cs │ │ │ │ │ └── VideoUpdatedDomainEventHandler.cs │ │ │ │ ├── DtoModels │ │ │ │ │ ├── CreatorProfileDto.cs │ │ │ │ │ ├── InternalUserProfileDto.cs │ │ │ │ │ ├── ProcessedVideoDto.cs │ │ │ │ │ ├── VideoDto.cs │ │ │ │ │ ├── VideoMetricsDto.cs │ │ │ │ │ ├── VideoRegistartionPropertiesDto.cs │ │ │ │ │ └── VideoThumbnailDto.cs │ │ │ │ ├── IntegrationEventHandlers │ │ │ │ │ ├── History │ │ │ │ │ │ └── VideoViewsMetricsSyncIntegrationEventHandler.cs │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEventHandler.cs │ │ │ │ │ └── VideoManager │ │ │ │ │ │ ├── SetVideoReadyIntegrationEventHandler.cs │ │ │ │ │ │ ├── UnregisterVideoIntegrationEventHandler.cs │ │ │ │ │ │ ├── UpdateStoreVideoResourcesIntegrationEventHandler.cs │ │ │ │ │ │ └── VideoInfoUpdatedIntegrationEventHandler.cs │ │ │ │ ├── IntegrationEvents │ │ │ │ │ ├── History │ │ │ │ │ │ └── VideoViewsMetricsSyncIntegrationEvent.cs │ │ │ │ │ ├── Users │ │ │ │ │ │ └── UserProfileCreatedOrUpdatedIntegrationEvent.cs │ │ │ │ │ ├── VideoManager │ │ │ │ │ │ ├── SetVideoReadyIntegrationEvent.cs │ │ │ │ │ │ ├── UnregisterVideoIntegrationEvent.cs │ │ │ │ │ │ ├── UpdateStoreVideoResourcesIntegrationEvent.cs │ │ │ │ │ │ └── VideoInfoUpdatedIntegrationEvent.cs │ │ │ │ │ ├── VideoPublishedIntegrationEvent.cs │ │ │ │ │ ├── VideoPublishedWithPublicVisibilityIntegrationEvent.cs │ │ │ │ │ ├── VideoUnpublishedIntegrationEvent.cs │ │ │ │ │ └── VideoUpdatedIntegrationEvent.cs │ │ │ │ ├── Queries │ │ │ │ │ ├── GetVideoQuery.cs │ │ │ │ │ └── Handlers │ │ │ │ │ │ └── GetVideoQueryHandler.cs │ │ │ │ └── RoutingSlipCheckpointHandlers │ │ │ │ │ ├── RegisterUserProfileCheckpointHandler.cs │ │ │ │ │ └── RegisterVideoCheckpointHandler.cs │ │ │ ├── Controllers │ │ │ │ └── VideoStoreController.cs │ │ │ ├── Dockerfile │ │ │ ├── HostExtensions.cs │ │ │ ├── Migrations │ │ │ │ ├── 20230215140327_InitialCreate.Designer.cs │ │ │ │ ├── 20230215140327_InitialCreate.cs │ │ │ │ └── VideoStoreDbContextModelSnapshot.cs │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── VideoStore.API.csproj │ │ │ ├── appsettings.Development.json │ │ │ └── appsettings.json │ │ ├── VideoStore.Domain │ │ │ ├── Contracts │ │ │ │ ├── IUserProfileRepository.cs │ │ │ │ └── IVideoRepository.cs │ │ │ ├── DomainEvents │ │ │ │ ├── VideoCreatedDomainEvent.cs │ │ │ │ ├── VideoPublishedDomainEvent.cs │ │ │ │ ├── VideoPublishedWithPublicVisibilityDomainEvent.cs │ │ │ │ ├── VideoUnpublishedDomainEvent.cs │ │ │ │ ├── VideoUnregisteredDomainEvent.cs │ │ │ │ └── VideoUpdatedDomainEvent.cs │ │ │ ├── Models │ │ │ │ ├── ProcessedVideo.cs │ │ │ │ ├── UserProfile.cs │ │ │ │ ├── Video.cs │ │ │ │ ├── VideoMetrics.cs │ │ │ │ ├── VideoStatus.cs │ │ │ │ └── VideoVisibility.cs │ │ │ └── VideoStore.Domain.csproj │ │ └── VideoStore.Infrastructure │ │ │ ├── EntityTypeConfigurations │ │ │ ├── ProcessedVideoEntityTypeConfiguration.cs │ │ │ ├── UserProfileEntityTypeConfiguration.cs │ │ │ └── VideoEntityTypeConfiguration.cs │ │ │ ├── Repositories │ │ │ ├── UserProfileRepository.cs │ │ │ └── VideoRepository.cs │ │ │ ├── VideoStore.Infrastructure.csproj │ │ │ └── VideoStoreDbContext.cs │ └── WebStatus │ │ └── WebStatus │ │ ├── Dockerfile │ │ ├── Program.cs │ │ ├── Properties │ │ └── launchSettings.json │ │ ├── WebStatus.csproj │ │ ├── appsettings.Development.json │ │ └── appsettings.json ├── VideoSharingPlatform.sln ├── VideoSharingPlatform.sln.startup.json ├── docker-compose.dcproj ├── docker-compose.override.yml ├── docker-compose.yml └── launchSettings.json ├── Deploy ├── .gitignore ├── kubernetes │ ├── api-gateway │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ └── secret.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── debug.yml │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ ├── config-map.env │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ ├── patches │ │ │ ├── config-map.env │ │ │ ├── deployment.yml │ │ │ └── secret.env │ │ │ └── resources │ │ │ └── load-balancer.yml │ ├── common │ │ ├── base │ │ │ ├── cluster-roles │ │ │ │ └── services-discovery-cluster-role.yml │ │ │ ├── config-maps │ │ │ │ └── common.yml │ │ │ ├── kustomization.yml │ │ │ ├── limit-range.yml │ │ │ ├── roles │ │ │ │ └── pod-updater-role.yml │ │ │ └── storage-classes │ │ │ │ └── persistence.yml │ │ ├── components │ │ │ └── dev-env │ │ │ │ ├── generators │ │ │ │ ├── elasticsearch.yml │ │ │ │ ├── jaeger.yml │ │ │ │ ├── logstash.yml │ │ │ │ ├── mongodb.yml │ │ │ │ ├── postgres.yml │ │ │ │ ├── rabbitmq.yml │ │ │ │ └── redis.yml │ │ │ │ ├── kustomization.yml │ │ │ │ ├── resources │ │ │ │ ├── jaeger │ │ │ │ │ ├── service.yml │ │ │ │ │ └── stateful-set.yml │ │ │ │ └── logstash │ │ │ │ │ └── config-map.yml │ │ │ │ └── values │ │ │ │ ├── elasticsearch.yml │ │ │ │ ├── jaeger.yml │ │ │ │ ├── logstash.yml │ │ │ │ ├── mongodb.yml │ │ │ │ ├── postgres.yml │ │ │ │ ├── rabbitmq.yml │ │ │ │ └── redis.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ ├── patches │ │ │ │ ├── config-maps │ │ │ │ │ └── common.env │ │ │ │ └── storage-classes │ │ │ │ │ └── persistence.yml │ │ │ └── resources │ │ │ │ ├── cluster-issuer │ │ │ │ └── lets-encrypt.yml │ │ │ │ └── ingress │ │ │ │ └── ingress.yml │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ ├── config-maps │ │ │ └── common.env │ │ │ └── storage-classes │ │ │ └── persistence.yml │ ├── community-api │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ └── secret.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ ├── deployment.yml │ │ │ └── secret.env │ ├── history-api │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ └── secret.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ ├── deployment.yml │ │ │ └── secret.env │ ├── identity-provider │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ └── secret.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ ├── config-map.env │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ ├── patches │ │ │ ├── config-map.env │ │ │ ├── deployment.yml │ │ │ └── secret.env │ │ │ └── resources │ │ │ └── load-balancer.yml │ ├── library-api │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ └── secret.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ ├── deployment.yml │ │ │ └── secret.env │ ├── search-api │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ └── secret.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ ├── deployment.yml │ │ │ └── secret.env │ ├── storage-api │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ ├── persistent-volume-claim.yml │ │ │ ├── secret.yml │ │ │ └── storage-class.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ ├── config-map.env │ │ │ │ ├── secret.env │ │ │ │ └── storage-class.yml │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ ├── patches │ │ │ ├── config-map.env │ │ │ ├── deployment.yml │ │ │ ├── persistent-volume-claim.yml │ │ │ ├── secret.env │ │ │ └── storage-class.yml │ │ │ └── resources │ │ │ └── load-balancer.yml │ ├── subscriptions-api │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ └── secret.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ ├── deployment.yml │ │ │ └── secret.env │ ├── users-api │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ └── secret.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ ├── deployment.yml │ │ │ └── secret.env │ ├── video-manager-api │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ └── secret.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ ├── deployment.yml │ │ │ └── secret.env │ ├── video-manager-signalrhub │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ └── secret.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ ├── deployment.yml │ │ │ └── secret.env │ ├── video-processor-application │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── hpa.yml │ │ │ ├── kustomization.yml │ │ │ ├── pod-monitor.yml │ │ │ ├── role-binding.yml │ │ │ ├── secret.yml │ │ │ └── service-account.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ ├── deployment.yml │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ ├── deployment.yml │ │ │ └── secret.env │ ├── video-store-api │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── config-map.yml │ │ │ ├── deployment.yml │ │ │ ├── kustomization.yml │ │ │ └── secret.yml │ │ └── overlays │ │ │ ├── dev │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ │ └── secret.env │ │ │ └── minikube │ │ │ ├── kustomization.yml │ │ │ └── patches │ │ │ ├── deployment.yml │ │ │ └── secret.env │ ├── web-client │ │ ├── base │ │ │ ├── clusterip-service.yml │ │ │ ├── deployment.yml │ │ │ └── kustomization.yml │ │ └── overlays │ │ │ └── dev │ │ │ └── kustomization.yml │ └── web-status │ │ ├── base │ │ ├── cluster-role-binding.yml │ │ ├── clusterip-service.yml │ │ ├── config-map.yml │ │ ├── deployment.yml │ │ ├── kustomization.yml │ │ ├── secret.yml │ │ └── service-account.yml │ │ └── overlays │ │ ├── dev │ │ └── kustomization.yml │ │ └── minikube │ │ ├── kustomization.yml │ │ └── patches │ │ └── deployment.yml ├── scripts │ ├── aks │ │ ├── 0_push_docker_image.ps1 │ │ ├── 1_bake.ps1 │ │ ├── 2_apply.ps1 │ │ └── 3_delete.ps1 │ ├── build_images.bat │ ├── build_images.sh │ ├── minikube │ │ ├── 0_enable_metrics_server.ps1 │ │ ├── 1_minikube_load_images.ps1 │ │ ├── 2_install_prometheus.ps1 │ │ ├── 3_bake.ps1 │ │ ├── 4_apply.ps1 │ │ ├── 5_minikube_tunnel.ps1 │ │ └── 6_delete.ps1 │ └── port-forward │ │ ├── port_forward_api_gateway.bat │ │ ├── port_forward_identity_provider.bat │ │ ├── port_forward_jaeger_query.bat │ │ ├── port_forward_kibana.bat │ │ ├── port_forward_promeheus_ui.bat │ │ ├── port_forward_rabbitmq_manage.bat │ │ ├── port_forward_storage_api.bat │ │ └── port_forward_web_status.bat └── terraform │ ├── .gitignore │ ├── ado-svc-conn │ ├── data-aks.tf │ ├── data-azure.tf │ ├── data-project.tf │ ├── providers.tf │ ├── service-endpoint-acr.tf │ ├── service-endpoint-kubernetes.tf │ ├── variables-acr.tf │ ├── variables-ado.tf │ ├── variables-aks.tf │ └── versions.tf │ ├── ado │ ├── .terraform.lock.hcl │ ├── backend.config │ ├── data-azure.tf │ ├── endpoint-administrator.tf │ ├── environments.tf │ ├── locals.tf │ ├── pipelines.tf │ ├── project.tf │ ├── providers.tf │ ├── service-endpoint-azurerm.tf │ ├── service-endpoint-github.tf │ ├── varaibles-github.tf │ ├── variable-group.tf │ ├── variables-ado.tf │ ├── variables-application-deployment.tf │ ├── variables-azure.tf │ ├── variables-environments.tf │ ├── variables-pipelines.tf │ └── versions.tf │ └── aks │ ├── .terraform.lock.hcl │ ├── aks-cluster.tf │ ├── container-registry.tf │ ├── data-agent-pool-identity.tf │ ├── data-client-config.tf │ ├── dns-zone.tf │ ├── generate-ssh-key.bat │ ├── helm-cert-manager.tf │ ├── helm-external-dns.tf │ ├── helm-ingress-nginx.tf │ ├── helm-prometheus.tf │ ├── locals.tf │ ├── modules │ └── aks-cluster │ │ ├── aks-cluster.tf │ │ ├── kubernetes-version.tf │ │ ├── locals.tf │ │ ├── log-analytics-workspace.tf │ │ ├── node-pool.tf │ │ ├── outputs.tf │ │ ├── subnet.tf │ │ ├── variables.tf │ │ └── versions.tf │ ├── outputs.tf │ ├── providers.tf │ ├── public-ip.tf │ ├── resource-group.tf │ ├── variables-acr.tf │ ├── variables-aks.tf │ ├── variables-basic.tf │ ├── variables-helm.tf │ ├── versions.tf │ └── virtual-network.tf ├── Frontend └── WebClient │ ├── .browserslistrc │ ├── .dockerignore │ ├── .editorconfig │ ├── .gitignore │ ├── README.md │ ├── angular.json │ ├── docker-dev │ ├── Dockerfile │ └── nginx.conf │ ├── docker-prod │ ├── Dockerfile │ └── nginx.conf │ ├── karma.conf.js │ ├── package-lock.json │ ├── package.json │ ├── src │ ├── app │ │ ├── app-routing.module.ts │ │ ├── app-setup.ts │ │ ├── app.component.css │ │ ├── app.component.html │ │ ├── app.component.spec.ts │ │ ├── app.component.ts │ │ ├── app.module.ts │ │ ├── asset-setup.ts │ │ ├── auth │ │ │ ├── auth-setup.ts │ │ │ ├── guards │ │ │ │ ├── auth-guard.service.spec.ts │ │ │ │ ├── auth-guard.service.ts │ │ │ │ ├── auth-info-resolver.service.spec.ts │ │ │ │ └── auth-info-resolver.service.ts │ │ │ ├── http-interceptors │ │ │ │ ├── auth-interceptor.service.ts │ │ │ │ └── refresh-token-interceptor.service.ts │ │ │ ├── models │ │ │ │ └── auth-info.ts │ │ │ ├── services │ │ │ │ ├── auth.service.spec.ts │ │ │ │ └── auth.service.ts │ │ │ ├── signin-callback │ │ │ │ ├── signin-callback.component.css │ │ │ │ ├── signin-callback.component.html │ │ │ │ ├── signin-callback.component.spec.ts │ │ │ │ └── signin-callback.component.ts │ │ │ └── signout-callback │ │ │ │ ├── signout-callback.component.css │ │ │ │ ├── signout-callback.component.html │ │ │ │ ├── signout-callback.component.spec.ts │ │ │ │ └── signout-callback.component.ts │ │ ├── channel │ │ │ ├── channel-routing.module.ts │ │ │ ├── channel.module.ts │ │ │ └── channel │ │ │ │ ├── channel-about │ │ │ │ ├── channel-about.component.css │ │ │ │ ├── channel-about.component.html │ │ │ │ ├── channel-about.component.spec.ts │ │ │ │ └── channel-about.component.ts │ │ │ │ ├── channel-featured │ │ │ │ ├── channel-featured-resolver.service.spec.ts │ │ │ │ ├── channel-featured-resolver.service.ts │ │ │ │ ├── channel-featured.component.css │ │ │ │ ├── channel-featured.component.html │ │ │ │ ├── channel-featured.component.spec.ts │ │ │ │ └── channel-featured.component.ts │ │ │ │ ├── channel-info │ │ │ │ ├── channel-info.component.css │ │ │ │ ├── channel-info.component.html │ │ │ │ ├── channel-info.component.spec.ts │ │ │ │ └── channel-info.component.ts │ │ │ │ ├── channel-playlists │ │ │ │ ├── channel-playlists-overview │ │ │ │ │ ├── channel-playlists-overview.component.css │ │ │ │ │ ├── channel-playlists-overview.component.html │ │ │ │ │ ├── channel-playlists-overview.component.spec.ts │ │ │ │ │ ├── channel-playlists-overview.component.ts │ │ │ │ │ └── channel-playlists-view.component.html │ │ │ │ ├── channel-playlists-resolver.service.spec.ts │ │ │ │ ├── channel-playlists-resolver.service.ts │ │ │ │ ├── channel-playlists-view-selector │ │ │ │ │ ├── channel-playlists-view-selector.component.css │ │ │ │ │ ├── channel-playlists-view-selector.component.html │ │ │ │ │ ├── channel-playlists-view-selector.component.spec.ts │ │ │ │ │ └── channel-playlists-view-selector.component.ts │ │ │ │ ├── channel-playlists-view │ │ │ │ │ ├── channel-playlists-view.component.css │ │ │ │ │ ├── channel-playlists-view.component.html │ │ │ │ │ ├── channel-playlists-view.component.spec.ts │ │ │ │ │ └── channel-playlists-view.component.ts │ │ │ │ ├── channel-playlists.component.css │ │ │ │ ├── channel-playlists.component.html │ │ │ │ ├── channel-playlists.component.spec.ts │ │ │ │ └── channel-playlists.component.ts │ │ │ │ ├── channel-resolver.service.spec.ts │ │ │ │ ├── channel-resolver.service.ts │ │ │ │ ├── channel-section-row │ │ │ │ ├── channel-section-row.component.html │ │ │ │ ├── channel-section-row.component.scss │ │ │ │ ├── channel-section-row.component.spec.ts │ │ │ │ ├── channel-section-row.component.ts │ │ │ │ ├── created-playlists-section-row │ │ │ │ │ ├── created-playlists-section-row.component.css │ │ │ │ │ ├── created-playlists-section-row.component.html │ │ │ │ │ ├── created-playlists-section-row.component.spec.ts │ │ │ │ │ └── created-playlists-section-row.component.ts │ │ │ │ ├── multiple-playlists-section-row │ │ │ │ │ ├── multiple-playlists-section-row.component.css │ │ │ │ │ ├── multiple-playlists-section-row.component.html │ │ │ │ │ ├── multiple-playlists-section-row.component.spec.ts │ │ │ │ │ └── multiple-playlists-section-row.component.ts │ │ │ │ ├── single-playlist-section-row │ │ │ │ │ ├── single-playlist-section-row.component.css │ │ │ │ │ ├── single-playlist-section-row.component.html │ │ │ │ │ ├── single-playlist-section-row.component.spec.ts │ │ │ │ │ └── single-playlist-section-row.component.ts │ │ │ │ ├── spotlight-video-section-row │ │ │ │ │ ├── spotlight-video-section-row.component.css │ │ │ │ │ ├── spotlight-video-section-row.component.html │ │ │ │ │ ├── spotlight-video-section-row.component.spec.ts │ │ │ │ │ └── spotlight-video-section-row.component.ts │ │ │ │ └── videos-section-row │ │ │ │ │ ├── videos-section-row.component.css │ │ │ │ │ ├── videos-section-row.component.html │ │ │ │ │ ├── videos-section-row.component.spec.ts │ │ │ │ │ └── videos-section-row.component.ts │ │ │ │ ├── channel-section │ │ │ │ ├── channel-section.component.css │ │ │ │ ├── channel-section.component.html │ │ │ │ ├── channel-section.component.spec.ts │ │ │ │ └── channel-section.component.ts │ │ │ │ ├── channel-videos │ │ │ │ ├── channel-videos.component.css │ │ │ │ ├── channel-videos.component.html │ │ │ │ ├── channel-videos.component.spec.ts │ │ │ │ └── channel-videos.component.ts │ │ │ │ ├── channel.component.css │ │ │ │ ├── channel.component.html │ │ │ │ ├── channel.component.spec.ts │ │ │ │ └── channel.component.ts │ │ ├── channels │ │ │ ├── channels-routing.module.ts │ │ │ ├── channels.module.ts │ │ │ └── channels │ │ │ │ ├── channel-row │ │ │ │ ├── channel-row.component.css │ │ │ │ ├── channel-row.component.html │ │ │ │ ├── channel-row.component.spec.ts │ │ │ │ └── channel-row.component.ts │ │ │ │ ├── channels.component.css │ │ │ │ ├── channels.component.html │ │ │ │ ├── channels.component.spec.ts │ │ │ │ └── channels.component.ts │ │ ├── community │ │ │ ├── community.module.ts │ │ │ ├── reducers │ │ │ │ └── index.ts │ │ │ ├── selectors │ │ │ │ └── index.ts │ │ │ └── video-forum │ │ │ │ ├── actions │ │ │ │ ├── index.ts │ │ │ │ ├── video-forum-api.ts │ │ │ │ └── video-forum.ts │ │ │ │ ├── effects │ │ │ │ └── video-forum.ts │ │ │ │ ├── models │ │ │ │ └── index.ts │ │ │ │ ├── reducers │ │ │ │ └── index.ts │ │ │ │ ├── selectors │ │ │ │ └── index.ts │ │ │ │ ├── video-comment-adder │ │ │ │ ├── video-comment-adder.component.css │ │ │ │ ├── video-comment-adder.component.html │ │ │ │ ├── video-comment-adder.component.spec.ts │ │ │ │ └── video-comment-adder.component.ts │ │ │ │ ├── video-comment-block │ │ │ │ ├── video-comment-block.component.css │ │ │ │ ├── video-comment-block.component.html │ │ │ │ ├── video-comment-block.component.spec.ts │ │ │ │ └── video-comment-block.component.ts │ │ │ │ ├── video-comment-editor │ │ │ │ ├── video-comment-editor.component.css │ │ │ │ ├── video-comment-editor.component.html │ │ │ │ ├── video-comment-editor.component.spec.ts │ │ │ │ └── video-comment-editor.component.ts │ │ │ │ ├── video-forum.component.css │ │ │ │ ├── video-forum.component.html │ │ │ │ ├── video-forum.component.spec.ts │ │ │ │ └── video-forum.component.ts │ │ ├── core │ │ │ ├── actions │ │ │ │ ├── channel-page-api.ts │ │ │ │ ├── channel-page.ts │ │ │ │ ├── channel-section-api.ts │ │ │ │ ├── channel-section.ts │ │ │ │ ├── history-api.ts │ │ │ │ ├── history.ts │ │ │ │ ├── index.ts │ │ │ │ ├── notification-api.ts │ │ │ │ ├── notification.ts │ │ │ │ ├── playlist-api.ts │ │ │ │ ├── playlist-management-api.ts │ │ │ │ ├── playlist-management.ts │ │ │ │ ├── playlist.ts │ │ │ │ ├── search-api.ts │ │ │ │ ├── search.ts │ │ │ │ ├── subscription-listing-api.ts │ │ │ │ ├── subscription-listing.ts │ │ │ │ ├── subscription-mangament-api.ts │ │ │ │ ├── subscription-mangament.ts │ │ │ │ ├── users-api.ts │ │ │ │ ├── users.ts │ │ │ │ ├── video-playlist-api.ts │ │ │ │ └── video-playlist.ts │ │ │ ├── core.module.ts │ │ │ ├── effects │ │ │ │ ├── channel-page.ts │ │ │ │ ├── channel-section.ts │ │ │ │ ├── history.ts │ │ │ │ ├── notification.ts │ │ │ │ ├── playlist-management.ts │ │ │ │ ├── playlist.ts │ │ │ │ ├── search.ts │ │ │ │ ├── subscription-listing.ts │ │ │ │ ├── subscription-management.ts │ │ │ │ ├── users.ts │ │ │ │ └── video-playlist.ts │ │ │ ├── models │ │ │ │ ├── channel-sections.ts │ │ │ │ ├── channel.ts │ │ │ │ ├── failed-response.ts │ │ │ │ ├── history.ts │ │ │ │ ├── library.ts │ │ │ │ ├── notification.ts │ │ │ │ ├── playlist.ts │ │ │ │ ├── search.ts │ │ │ │ ├── subscription.ts │ │ │ │ ├── users.ts │ │ │ │ └── video.ts │ │ │ ├── pipes │ │ │ │ ├── n-formatter.pipe.spec.ts │ │ │ │ └── n-formatter.pipe.ts │ │ │ ├── reducers │ │ │ │ ├── channel-page.ts │ │ │ │ ├── channel-sections.ts │ │ │ │ ├── history.ts │ │ │ │ ├── index.ts │ │ │ │ ├── notification.ts │ │ │ │ ├── playlist-management.ts │ │ │ │ ├── playlist.ts │ │ │ │ ├── search.ts │ │ │ │ ├── subscription-listing.ts │ │ │ │ ├── subscription-management.ts │ │ │ │ ├── user-profiles.ts │ │ │ │ └── video-playlist.ts │ │ │ ├── selectors │ │ │ │ ├── channel-page.ts │ │ │ │ ├── channel-sections.ts │ │ │ │ ├── history.ts │ │ │ │ ├── index.ts │ │ │ │ ├── notification.ts │ │ │ │ ├── playlist-management.ts │ │ │ │ ├── playlist.ts │ │ │ │ ├── search.ts │ │ │ │ ├── subscription-listing.ts │ │ │ │ ├── subscription-mangament.ts │ │ │ │ ├── users.ts │ │ │ │ └── video-playlist.ts │ │ │ ├── services │ │ │ │ ├── channel-helper.service.spec.ts │ │ │ │ ├── channel-helper.service.ts │ │ │ │ ├── channel-subscription.service.spec.ts │ │ │ │ ├── channel-subscription.service.ts │ │ │ │ ├── user-profile.service.spec.ts │ │ │ │ ├── user-profile.service.ts │ │ │ │ └── utilities.ts │ │ │ └── signalr │ │ │ │ └── hub-client.ts │ │ ├── history │ │ │ ├── history-routing.module.ts │ │ │ ├── history.module.ts │ │ │ └── history │ │ │ │ ├── history-guard.service.spec.ts │ │ │ │ ├── history-guard.service.ts │ │ │ │ ├── history-header │ │ │ │ ├── history-header.component.css │ │ │ │ ├── history-header.component.html │ │ │ │ ├── history-header.component.spec.ts │ │ │ │ └── history-header.component.ts │ │ │ │ ├── history.component.css │ │ │ │ ├── history.component.html │ │ │ │ ├── history.component.spec.ts │ │ │ │ ├── history.component.ts │ │ │ │ ├── user-history-settings.service.spec.ts │ │ │ │ ├── user-history-settings.service.ts │ │ │ │ └── user-watch-history │ │ │ │ ├── user-watch-history.component.css │ │ │ │ ├── user-watch-history.component.html │ │ │ │ ├── user-watch-history.component.spec.ts │ │ │ │ ├── user-watch-history.component.ts │ │ │ │ └── user-watch-record-row │ │ │ │ ├── user-watch-record-row.component.css │ │ │ │ ├── user-watch-record-row.component.html │ │ │ │ ├── user-watch-record-row.component.spec.ts │ │ │ │ └── user-watch-record-row.component.ts │ │ ├── library │ │ │ ├── library-routing.module.ts │ │ │ ├── library.module.ts │ │ │ └── library │ │ │ │ ├── library-playlists-feed │ │ │ │ ├── library-playlists-feed.component.css │ │ │ │ ├── library-playlists-feed.component.html │ │ │ │ ├── library-playlists-feed.component.spec.ts │ │ │ │ └── library-playlists-feed.component.ts │ │ │ │ ├── library-videos-feed │ │ │ │ ├── library-videos-feed.component.css │ │ │ │ ├── library-videos-feed.component.html │ │ │ │ ├── library-videos-feed.component.spec.ts │ │ │ │ └── library-videos-feed.component.ts │ │ │ │ ├── library.component.css │ │ │ │ ├── library.component.html │ │ │ │ ├── library.component.spec.ts │ │ │ │ ├── library.component.ts │ │ │ │ ├── library.service.spec.ts │ │ │ │ └── library.service.ts │ │ ├── main │ │ │ ├── home │ │ │ │ ├── home.component.css │ │ │ │ ├── home.component.html │ │ │ │ ├── home.component.spec.ts │ │ │ │ └── home.component.ts │ │ │ ├── main-routing.module.ts │ │ │ ├── main.component.css │ │ │ ├── main.component.html │ │ │ ├── main.component.spec.ts │ │ │ ├── main.component.ts │ │ │ ├── main.module.ts │ │ │ ├── mini-sidebar │ │ │ │ ├── mini-sidebar.component.css │ │ │ │ ├── mini-sidebar.component.html │ │ │ │ ├── mini-sidebar.component.spec.ts │ │ │ │ └── mini-sidebar.component.ts │ │ │ ├── notifications-dialog │ │ │ │ ├── notification-message │ │ │ │ │ ├── notification-message.component.css │ │ │ │ │ ├── notification-message.component.html │ │ │ │ │ ├── notification-message.component.spec.ts │ │ │ │ │ └── notification-message.component.ts │ │ │ │ ├── notifications-dialog.component.css │ │ │ │ ├── notifications-dialog.component.html │ │ │ │ ├── notifications-dialog.component.spec.ts │ │ │ │ └── notifications-dialog.component.ts │ │ │ ├── search │ │ │ │ ├── search.component.css │ │ │ │ ├── search.component.html │ │ │ │ ├── search.component.spec.ts │ │ │ │ └── search.component.ts │ │ │ ├── searchbar │ │ │ │ ├── searchbar.component.css │ │ │ │ ├── searchbar.component.html │ │ │ │ ├── searchbar.component.spec.ts │ │ │ │ └── searchbar.component.ts │ │ │ ├── sidebar │ │ │ │ ├── sidebar.component.css │ │ │ │ ├── sidebar.component.html │ │ │ │ ├── sidebar.component.spec.ts │ │ │ │ ├── sidebar.component.ts │ │ │ │ ├── sidebar.service.spec.ts │ │ │ │ └── sidebar.service.ts │ │ │ ├── tools │ │ │ │ ├── notification-tool.service.spec.ts │ │ │ │ ├── notification-tool.service.ts │ │ │ │ ├── tools.component.css │ │ │ │ ├── tools.component.html │ │ │ │ ├── tools.component.spec.ts │ │ │ │ └── tools.component.ts │ │ │ └── unavailable │ │ │ │ ├── channel-unavailable │ │ │ │ ├── channel-unavailable.component.css │ │ │ │ ├── channel-unavailable.component.html │ │ │ │ ├── channel-unavailable.component.spec.ts │ │ │ │ └── channel-unavailable.component.ts │ │ │ │ ├── playlist-unavailable │ │ │ │ ├── playlist-unavailable.component.css │ │ │ │ ├── playlist-unavailable.component.html │ │ │ │ ├── playlist-unavailable.component.spec.ts │ │ │ │ └── playlist-unavailable.component.ts │ │ │ │ └── video-unavailable │ │ │ │ ├── video-unavailable.component.css │ │ │ │ ├── video-unavailable.component.html │ │ │ │ ├── video-unavailable.component.spec.ts │ │ │ │ └── video-unavailable.component.ts │ │ ├── playlist │ │ │ ├── playlist-routing.module.ts │ │ │ ├── playlist.module.ts │ │ │ └── playlist │ │ │ │ ├── playlist-content │ │ │ │ ├── playlist-content.component.css │ │ │ │ ├── playlist-content.component.html │ │ │ │ ├── playlist-content.component.spec.ts │ │ │ │ ├── playlist-content.component.ts │ │ │ │ └── playlist-item │ │ │ │ │ ├── playlist-item.component.css │ │ │ │ │ ├── playlist-item.component.html │ │ │ │ │ ├── playlist-item.component.spec.ts │ │ │ │ │ └── playlist-item.component.ts │ │ │ │ ├── playlist-header │ │ │ │ ├── playlist-header.component.css │ │ │ │ ├── playlist-header.component.html │ │ │ │ ├── playlist-header.component.spec.ts │ │ │ │ └── playlist-header.component.ts │ │ │ │ ├── playlist-resolver.service.spec.ts │ │ │ │ ├── playlist-resolver.service.ts │ │ │ │ ├── playlist.component.css │ │ │ │ ├── playlist.component.html │ │ │ │ ├── playlist.component.spec.ts │ │ │ │ └── playlist.component.ts │ │ ├── shared │ │ │ ├── add-to-playlist-dialog │ │ │ │ ├── add-to-playlist-actions.service.spec.ts │ │ │ │ ├── add-to-playlist-actions.service.ts │ │ │ │ ├── add-to-playlist-dialog.component.css │ │ │ │ ├── add-to-playlist-dialog.component.html │ │ │ │ ├── add-to-playlist-dialog.component.spec.ts │ │ │ │ ├── add-to-playlist-dialog.component.ts │ │ │ │ ├── add-to-playlist-dialog.service.spec.ts │ │ │ │ └── add-to-playlist-dialog.service.ts │ │ │ ├── common-toolbar │ │ │ │ ├── common-toolbar.component.css │ │ │ │ ├── common-toolbar.component.html │ │ │ │ ├── common-toolbar.component.spec.ts │ │ │ │ ├── common-toolbar.component.ts │ │ │ │ ├── common-toolbar.service.spec.ts │ │ │ │ └── common-toolbar.service.ts │ │ │ ├── confirm-dialog │ │ │ │ ├── confirm-dialog.component.css │ │ │ │ ├── confirm-dialog.component.html │ │ │ │ ├── confirm-dialog.component.spec.ts │ │ │ │ ├── confirm-dialog.component.ts │ │ │ │ ├── confirm-dialog.service.spec.ts │ │ │ │ └── confirm-dialog.service.ts │ │ │ ├── create-user-profile-dialog │ │ │ │ ├── create-user-profile-dialog.component.css │ │ │ │ ├── create-user-profile-dialog.component.html │ │ │ │ ├── create-user-profile-dialog.component.spec.ts │ │ │ │ ├── create-user-profile-dialog.component.ts │ │ │ │ ├── create-user-profile-dialog.service.spec.ts │ │ │ │ └── create-user-profile-dialog.service.ts │ │ │ ├── error-dialog │ │ │ │ ├── error-dialog.component.css │ │ │ │ ├── error-dialog.component.html │ │ │ │ ├── error-dialog.component.spec.ts │ │ │ │ ├── error-dialog.component.ts │ │ │ │ ├── error-dialog.service.spec.ts │ │ │ │ └── error-dialog.service.ts │ │ │ ├── guards │ │ │ │ ├── user-profile-resolver.service.spec.ts │ │ │ │ ├── user-profile-resolver.service.ts │ │ │ │ ├── user-ready-guard.service.spec.ts │ │ │ │ └── user-ready-guard.service.ts │ │ │ ├── http-interceptors │ │ │ │ ├── failed-response-interceptor.service.spec.ts │ │ │ │ └── failed-response-interceptor.service.ts │ │ │ ├── over-sidebar │ │ │ │ ├── over-sidebar.component.css │ │ │ │ ├── over-sidebar.component.html │ │ │ │ ├── over-sidebar.component.spec.ts │ │ │ │ └── over-sidebar.component.ts │ │ │ ├── playlist │ │ │ │ └── playlist-grid-item │ │ │ │ │ ├── playlist-grid-item.component.css │ │ │ │ │ ├── playlist-grid-item.component.html │ │ │ │ │ ├── playlist-grid-item.component.spec.ts │ │ │ │ │ └── playlist-grid-item.component.ts │ │ │ ├── shared.module.ts │ │ │ ├── user-profile-thumbnail │ │ │ │ ├── user-profile-thumbnail.component.css │ │ │ │ ├── user-profile-thumbnail.component.html │ │ │ │ ├── user-profile-thumbnail.component.spec.ts │ │ │ │ └── user-profile-thumbnail.component.ts │ │ │ ├── user-thumbnail-tool │ │ │ │ ├── user-thumbnail-tool.component.css │ │ │ │ ├── user-thumbnail-tool.component.html │ │ │ │ ├── user-thumbnail-tool.component.spec.ts │ │ │ │ └── user-thumbnail-tool.component.ts │ │ │ ├── user-thumbnail │ │ │ │ ├── models │ │ │ │ │ └── index.ts │ │ │ │ ├── user-thumbnail.component.css │ │ │ │ ├── user-thumbnail.component.html │ │ │ │ ├── user-thumbnail.component.spec.ts │ │ │ │ └── user-thumbnail.component.ts │ │ │ └── video │ │ │ │ ├── video-grid-item │ │ │ │ ├── video-grid-item.component.css │ │ │ │ ├── video-grid-item.component.html │ │ │ │ ├── video-grid-item.component.spec.ts │ │ │ │ └── video-grid-item.component.ts │ │ │ │ ├── video-row-small │ │ │ │ ├── video-row-small.component.css │ │ │ │ ├── video-row-small.component.html │ │ │ │ ├── video-row-small.component.spec.ts │ │ │ │ └── video-row-small.component.ts │ │ │ │ └── video-row │ │ │ │ ├── video-row.component.css │ │ │ │ ├── video-row.component.html │ │ │ │ ├── video-row.component.spec.ts │ │ │ │ └── video-row.component.ts │ │ ├── studio │ │ │ ├── customization │ │ │ │ ├── actions │ │ │ │ │ ├── customization-api.ts │ │ │ │ │ ├── customization.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── customization.component.css │ │ │ │ ├── customization.component.html │ │ │ │ ├── customization.component.spec.ts │ │ │ │ ├── customization.component.ts │ │ │ │ ├── edit-basic-info │ │ │ │ │ ├── edit-basic-info.component.css │ │ │ │ │ ├── edit-basic-info.component.html │ │ │ │ │ ├── edit-basic-info.component.spec.ts │ │ │ │ │ └── edit-basic-info.component.ts │ │ │ │ ├── edit-branding │ │ │ │ │ ├── edit-branding.component.css │ │ │ │ │ ├── edit-branding.component.html │ │ │ │ │ ├── edit-branding.component.spec.ts │ │ │ │ │ └── edit-branding.component.ts │ │ │ │ ├── edit-layout │ │ │ │ │ ├── channel-created-playlists-section-preview │ │ │ │ │ │ ├── channel-created-playlists-section-preview.component.css │ │ │ │ │ │ ├── channel-created-playlists-section-preview.component.html │ │ │ │ │ │ ├── channel-created-playlists-section-preview.component.spec.ts │ │ │ │ │ │ └── channel-created-playlists-section-preview.component.ts │ │ │ │ │ ├── channel-multiple-playlists-section-preview │ │ │ │ │ │ ├── channel-multiple-playlists-section-preview.component.css │ │ │ │ │ │ ├── channel-multiple-playlists-section-preview.component.html │ │ │ │ │ │ ├── channel-multiple-playlists-section-preview.component.spec.ts │ │ │ │ │ │ └── channel-multiple-playlists-section-preview.component.ts │ │ │ │ │ ├── channel-section-preview-base │ │ │ │ │ │ ├── channel-section-preview-base.component.css │ │ │ │ │ │ ├── channel-section-preview-base.component.html │ │ │ │ │ │ ├── channel-section-preview-base.component.spec.ts │ │ │ │ │ │ └── channel-section-preview-base.component.ts │ │ │ │ │ ├── channel-section-previews-list │ │ │ │ │ │ ├── channel-section-previews-list.component.css │ │ │ │ │ │ ├── channel-section-previews-list.component.html │ │ │ │ │ │ ├── channel-section-previews-list.component.spec.ts │ │ │ │ │ │ └── channel-section-previews-list.component.ts │ │ │ │ │ ├── channel-single-playlist-section-preview │ │ │ │ │ │ ├── channel-single-playlist-section-preview.component.css │ │ │ │ │ │ ├── channel-single-playlist-section-preview.component.html │ │ │ │ │ │ ├── channel-single-playlist-section-preview.component.spec.ts │ │ │ │ │ │ └── channel-single-playlist-section-preview.component.ts │ │ │ │ │ ├── channel-videos-section-preview │ │ │ │ │ │ ├── channel-videos-section-preview.component.css │ │ │ │ │ │ ├── channel-videos-section-preview.component.html │ │ │ │ │ │ ├── channel-videos-section-preview.component.spec.ts │ │ │ │ │ │ └── channel-videos-section-preview.component.ts │ │ │ │ │ ├── choose-video-dialog │ │ │ │ │ │ ├── choose-video-dialog.component.css │ │ │ │ │ │ ├── choose-video-dialog.component.html │ │ │ │ │ │ ├── choose-video-dialog.component.spec.ts │ │ │ │ │ │ ├── choose-video-dialog.component.ts │ │ │ │ │ │ ├── choose-video-dialog.service.spec.ts │ │ │ │ │ │ └── choose-video-dialog.service.ts │ │ │ │ │ ├── edit-layout.component.css │ │ │ │ │ ├── edit-layout.component.html │ │ │ │ │ ├── edit-layout.component.spec.ts │ │ │ │ │ ├── edit-layout.component.ts │ │ │ │ │ ├── edit-multiple-playlists-dialog │ │ │ │ │ │ ├── edit-multiple-playlists-dialog.component.css │ │ │ │ │ │ ├── edit-multiple-playlists-dialog.component.html │ │ │ │ │ │ ├── edit-multiple-playlists-dialog.component.spec.ts │ │ │ │ │ │ ├── edit-multiple-playlists-dialog.component.ts │ │ │ │ │ │ ├── edit-multiple-playlists-dialog.service.spec.ts │ │ │ │ │ │ ├── edit-multiple-playlists-dialog.service.ts │ │ │ │ │ │ ├── playlists-browser │ │ │ │ │ │ │ ├── playlists-browser-item │ │ │ │ │ │ │ │ ├── playlists-browser-item.component.css │ │ │ │ │ │ │ │ ├── playlists-browser-item.component.html │ │ │ │ │ │ │ │ ├── playlists-browser-item.component.spec.ts │ │ │ │ │ │ │ │ └── playlists-browser-item.component.ts │ │ │ │ │ │ │ ├── playlists-browser.component.css │ │ │ │ │ │ │ ├── playlists-browser.component.html │ │ │ │ │ │ │ ├── playlists-browser.component.spec.ts │ │ │ │ │ │ │ └── playlists-browser.component.ts │ │ │ │ │ │ └── playlists-in-section │ │ │ │ │ │ │ ├── playlists-in-section.component.css │ │ │ │ │ │ │ ├── playlists-in-section.component.html │ │ │ │ │ │ │ ├── playlists-in-section.component.spec.ts │ │ │ │ │ │ │ └── playlists-in-section.component.ts │ │ │ │ │ ├── edit-single-playlist-dialog │ │ │ │ │ │ ├── edit-single-playlist-dialog.component.css │ │ │ │ │ │ ├── edit-single-playlist-dialog.component.html │ │ │ │ │ │ ├── edit-single-playlist-dialog.component.spec.ts │ │ │ │ │ │ ├── edit-single-playlist-dialog.component.ts │ │ │ │ │ │ ├── edit-single-playlist-dialog.service.spec.ts │ │ │ │ │ │ └── edit-single-playlist-dialog.service.ts │ │ │ │ │ ├── edit-video-spotlight │ │ │ │ │ │ ├── edit-video-spotlight.component.css │ │ │ │ │ │ ├── edit-video-spotlight.component.html │ │ │ │ │ │ ├── edit-video-spotlight.component.spec.ts │ │ │ │ │ │ ├── edit-video-spotlight.component.ts │ │ │ │ │ │ └── video-spotlight │ │ │ │ │ │ │ ├── video-spotlight.component.css │ │ │ │ │ │ │ ├── video-spotlight.component.html │ │ │ │ │ │ │ ├── video-spotlight.component.spec.ts │ │ │ │ │ │ │ └── video-spotlight.component.ts │ │ │ │ │ ├── playlist-grid-selector │ │ │ │ │ │ ├── playlist-grid-selector.component.css │ │ │ │ │ │ ├── playlist-grid-selector.component.html │ │ │ │ │ │ ├── playlist-grid-selector.component.spec.ts │ │ │ │ │ │ └── playlist-grid-selector.component.ts │ │ │ │ │ ├── playlist-preview │ │ │ │ │ │ ├── playlist-preview.component.css │ │ │ │ │ │ ├── playlist-preview.component.html │ │ │ │ │ │ ├── playlist-preview.component.spec.ts │ │ │ │ │ │ └── playlist-preview.component.ts │ │ │ │ │ ├── video-grid-selector │ │ │ │ │ │ ├── video-grid-selector.component.css │ │ │ │ │ │ ├── video-grid-selector.component.html │ │ │ │ │ │ ├── video-grid-selector.component.spec.ts │ │ │ │ │ │ └── video-grid-selector.component.ts │ │ │ │ │ └── video-preview │ │ │ │ │ │ ├── video-preview.component.css │ │ │ │ │ │ ├── video-preview.component.html │ │ │ │ │ │ ├── video-preview.component.spec.ts │ │ │ │ │ │ └── video-preview.component.ts │ │ │ │ ├── effects │ │ │ │ │ └── index.ts │ │ │ │ ├── image-uploader │ │ │ │ │ ├── image-uploader.component.css │ │ │ │ │ ├── image-uploader.component.html │ │ │ │ │ ├── image-uploader.component.spec.ts │ │ │ │ │ └── image-uploader.component.ts │ │ │ │ ├── models │ │ │ │ │ └── index.ts │ │ │ │ ├── reducers │ │ │ │ │ └── index.ts │ │ │ │ ├── selectors │ │ │ │ │ └── index.ts │ │ │ │ ├── user-data-resolver.service.spec.ts │ │ │ │ └── user-data-resolver.service.ts │ │ │ ├── directives │ │ │ │ ├── drag-and-drog-file.directive.spec.ts │ │ │ │ └── drag-and-drog-file.directive.ts │ │ │ ├── dto-models │ │ │ │ └── index.ts │ │ │ ├── edit-video-dialog │ │ │ │ ├── edit-video-dialog.component.css │ │ │ │ ├── edit-video-dialog.component.html │ │ │ │ ├── edit-video-dialog.component.spec.ts │ │ │ │ ├── edit-video-dialog.component.ts │ │ │ │ ├── edit-video │ │ │ │ │ ├── edit-video-details │ │ │ │ │ │ ├── edit-video-details.component.css │ │ │ │ │ │ ├── edit-video-details.component.html │ │ │ │ │ │ ├── edit-video-details.component.spec.ts │ │ │ │ │ │ └── edit-video-details.component.ts │ │ │ │ │ ├── edit-video-visibility │ │ │ │ │ │ ├── edit-video-visibility.component.css │ │ │ │ │ │ ├── edit-video-visibility.component.html │ │ │ │ │ │ ├── edit-video-visibility.component.spec.ts │ │ │ │ │ │ └── edit-video-visibility.component.ts │ │ │ │ │ ├── edit-video.component.css │ │ │ │ │ ├── edit-video.component.html │ │ │ │ │ ├── edit-video.component.spec.ts │ │ │ │ │ └── edit-video.component.ts │ │ │ │ └── upload-video │ │ │ │ │ ├── upload-video.component.css │ │ │ │ │ ├── upload-video.component.html │ │ │ │ │ ├── upload-video.component.spec.ts │ │ │ │ │ └── upload-video.component.ts │ │ │ ├── mini-sidebar │ │ │ │ ├── mini-sidebar.component.css │ │ │ │ ├── mini-sidebar.component.html │ │ │ │ ├── mini-sidebar.component.spec.ts │ │ │ │ └── mini-sidebar.component.ts │ │ │ ├── models │ │ │ │ └── index.ts │ │ │ ├── reducers.ts │ │ │ ├── selectors.ts │ │ │ ├── services │ │ │ │ ├── edit-video-dialog.service.spec.ts │ │ │ │ ├── edit-video-dialog.service.ts │ │ │ │ ├── studio-hub-client-connector.service.ts │ │ │ │ ├── studio-hub-client.service.spec.ts │ │ │ │ └── studio-hub-client.service.ts │ │ │ ├── sidebar │ │ │ │ ├── sidebar.component.css │ │ │ │ ├── sidebar.component.html │ │ │ │ ├── sidebar.component.spec.ts │ │ │ │ └── sidebar.component.ts │ │ │ ├── studio-routing.module.ts │ │ │ ├── studio-setup.ts │ │ │ ├── studio.component.css │ │ │ ├── studio.component.html │ │ │ ├── studio.component.spec.ts │ │ │ ├── studio.component.ts │ │ │ ├── studio.module.ts │ │ │ ├── tools │ │ │ │ ├── tools.component.css │ │ │ │ ├── tools.component.html │ │ │ │ ├── tools.component.spec.ts │ │ │ │ └── tools.component.ts │ │ │ ├── uploader │ │ │ │ ├── actions │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── uploader-api.ts │ │ │ │ │ └── uploader.ts │ │ │ │ ├── effects │ │ │ │ │ └── index.ts │ │ │ │ ├── models │ │ │ │ │ └── index.ts │ │ │ │ ├── reducers │ │ │ │ │ └── index.ts │ │ │ │ ├── selectors │ │ │ │ │ └── index.ts │ │ │ │ └── uploader-dialog │ │ │ │ │ ├── upload-process-row │ │ │ │ │ ├── upload-process-row.component.css │ │ │ │ │ ├── upload-process-row.component.html │ │ │ │ │ ├── upload-process-row.component.spec.ts │ │ │ │ │ └── upload-process-row.component.ts │ │ │ │ │ ├── uploader-dialog.component.css │ │ │ │ │ ├── uploader-dialog.component.html │ │ │ │ │ ├── uploader-dialog.component.spec.ts │ │ │ │ │ ├── uploader-dialog.component.ts │ │ │ │ │ ├── uploader-dialog.service.spec.ts │ │ │ │ │ └── uploader-dialog.service.ts │ │ │ └── videos-management │ │ │ │ ├── actions │ │ │ │ ├── index.ts │ │ │ │ ├── videos-management-api.ts │ │ │ │ ├── videos-management-hub.ts │ │ │ │ └── videos-management.ts │ │ │ │ ├── effects │ │ │ │ └── index.ts │ │ │ │ ├── models │ │ │ │ └── index.ts │ │ │ │ ├── reducers │ │ │ │ └── index.ts │ │ │ │ ├── selectors │ │ │ │ └── index.ts │ │ │ │ ├── videos-management.component.css │ │ │ │ ├── videos-management.component.html │ │ │ │ ├── videos-management.component.spec.ts │ │ │ │ └── videos-management.component.ts │ │ ├── subscriptions │ │ │ ├── subscriptions-routing.module.ts │ │ │ ├── subscriptions.module.ts │ │ │ └── subscriptions │ │ │ │ ├── subscriptions-feed │ │ │ │ ├── subscriptions-feed.component.css │ │ │ │ ├── subscriptions-feed.component.html │ │ │ │ ├── subscriptions-feed.component.spec.ts │ │ │ │ └── subscriptions-feed.component.ts │ │ │ │ ├── subscriptions.component.css │ │ │ │ ├── subscriptions.component.html │ │ │ │ ├── subscriptions.component.spec.ts │ │ │ │ └── subscriptions.component.ts │ │ ├── video-player │ │ │ ├── video-player.module.ts │ │ │ └── video-player │ │ │ │ ├── models │ │ │ │ └── index.ts │ │ │ │ ├── quality-selector │ │ │ │ ├── quality-selector.component.css │ │ │ │ ├── quality-selector.component.html │ │ │ │ ├── quality-selector.component.spec.ts │ │ │ │ └── quality-selector.component.ts │ │ │ │ ├── scrub-bar │ │ │ │ ├── scrub-bar.component.css │ │ │ │ ├── scrub-bar.component.html │ │ │ │ ├── scrub-bar.component.spec.ts │ │ │ │ └── scrub-bar.component.ts │ │ │ │ ├── video-player.component.css │ │ │ │ ├── video-player.component.html │ │ │ │ ├── video-player.component.spec.ts │ │ │ │ └── video-player.component.ts │ │ └── watch-video │ │ │ ├── watch-video-routing.module.ts │ │ │ ├── watch-video.module.ts │ │ │ └── watch-video │ │ │ ├── record-user-watch-history.service.spec.ts │ │ │ ├── record-user-watch-history.service.ts │ │ │ ├── relevant-videos │ │ │ ├── relevant-videos.component.css │ │ │ ├── relevant-videos.component.html │ │ │ ├── relevant-videos.component.spec.ts │ │ │ └── relevant-videos.component.ts │ │ │ ├── video-actions │ │ │ ├── video-actions.component.css │ │ │ ├── video-actions.component.html │ │ │ ├── video-actions.component.spec.ts │ │ │ ├── video-actions.component.ts │ │ │ ├── video-actions.service.spec.ts │ │ │ └── video-actions.service.ts │ │ │ ├── video-playlist │ │ │ ├── video-playlist-item │ │ │ │ ├── video-playlist-item.component.css │ │ │ │ ├── video-playlist-item.component.html │ │ │ │ ├── video-playlist-item.component.spec.ts │ │ │ │ └── video-playlist-item.component.ts │ │ │ ├── video-playlist.component.css │ │ │ ├── video-playlist.component.html │ │ │ ├── video-playlist.component.spec.ts │ │ │ └── video-playlist.component.ts │ │ │ ├── video-resolver.service.spec.ts │ │ │ ├── video-resolver.service.ts │ │ │ ├── video-subscription │ │ │ ├── video-subscription.component.css │ │ │ ├── video-subscription.component.html │ │ │ ├── video-subscription.component.spec.ts │ │ │ └── video-subscription.component.ts │ │ │ ├── watch-video.component.css │ │ │ ├── watch-video.component.html │ │ │ ├── watch-video.component.spec.ts │ │ │ └── watch-video.component.ts │ ├── assets │ │ ├── .gitkeep │ │ └── icon │ │ │ ├── icon.png │ │ │ ├── no_thumbnail.png │ │ │ └── unnamed.png │ ├── environments │ │ ├── environment.prod.ts │ │ └── environment.ts │ ├── favicon.ico │ ├── index.html │ ├── main.ts │ ├── material-styles.scss │ ├── polyfills.ts │ ├── styles.css │ └── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── webpack.config.js ├── Images ├── Screenshots │ ├── 1.png │ ├── 10.png │ ├── 11.png │ ├── 12.png │ ├── 13.png │ ├── 14.png │ ├── 15.png │ ├── 16.png │ ├── 17.png │ ├── 18.png │ ├── 19.png │ ├── 2.png │ ├── 20.png │ ├── 3.png │ ├── 4.png │ ├── 5.png │ ├── 6.png │ ├── 7.png │ ├── 8.png │ ├── 9.png │ ├── grafana.png │ ├── logging.png │ ├── metrics.png │ ├── tracing.png │ └── webstatus.png └── architecture.png ├── LICENSE ├── README.md ├── Screenshots.md └── Scripts ├── backend_build.bat ├── backend_build.sh ├── backend_build_nocache.bat ├── backend_build_nocache.sh ├── backend_down.bat ├── backend_down.sh ├── backend_up.bat ├── backend_up.sh ├── frontend_build.bat ├── frontend_build.sh ├── frontend_build_nocache.bat ├── frontend_build_nocache.sh ├── frontend_down.bat ├── frontend_down.sh ├── frontend_up.bat └── frontend_up.sh /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/.gitignore -------------------------------------------------------------------------------- /AzurePipelines/api-gateway-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/api-gateway-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/common-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/common-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/community-api-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/community-api-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/history-api-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/history-api-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/identity-provider-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/identity-provider-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/infrastructure-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/infrastructure-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/library-api-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/library-api-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/search-api-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/search-api-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/storage-api-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/storage-api-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/subscriptions-api-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/subscriptions-api-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/templates/build-push-publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/templates/build-push-publish.yml -------------------------------------------------------------------------------- /AzurePipelines/templates/deploy-using-kustomize.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/templates/deploy-using-kustomize.yml -------------------------------------------------------------------------------- /AzurePipelines/templates/deploy-using-terraform.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/templates/deploy-using-terraform.yml -------------------------------------------------------------------------------- /AzurePipelines/users-api-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/users-api-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/video-manager-api.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/video-manager-api.yml -------------------------------------------------------------------------------- /AzurePipelines/video-manager-signalrhub.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/video-manager-signalrhub.yml -------------------------------------------------------------------------------- /AzurePipelines/video-processor-application-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/video-processor-application-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/video-store-api-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/video-store-api-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/web-client-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/web-client-pipeline.yml -------------------------------------------------------------------------------- /AzurePipelines/web-status-pipeline.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/AzurePipelines/web-status-pipeline.yml -------------------------------------------------------------------------------- /Backend/.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/.dockerignore -------------------------------------------------------------------------------- /Backend/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/.gitignore -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Application/Application.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Application/Application.csproj -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Application/Contracts/IAppRequest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Application/Contracts/IAppRequest.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Application/Contracts/ICommand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Application/Contracts/ICommand.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Application/Contracts/IQuery.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Application/Contracts/IQuery.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Application/DtoModels/FailedResponseDTO.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Application/DtoModels/FailedResponseDTO.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Application/Handlers/ICommandHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Application/Handlers/ICommandHandler.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Application/Handlers/IQueryHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Application/Handlers/IQueryHandler.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Application/Utilities/HttpClientUtilities.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Application/Utilities/HttpClientUtilities.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Contracts/IUnitOfWork.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Contracts/IUnitOfWork.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Domain.csproj -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/DomainEntity.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/DomainEntity.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Entity.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Entity.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Events/IDomainEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Events/IDomainEvent.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Events/IDomainEventEmitter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Events/IDomainEventEmitter.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Events/IDomainEventHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Events/IDomainEventHandler.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Events/IDomainEventsAccessor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Events/IDomainEventsAccessor.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Events/IDomainEventsDispatcher.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Events/IDomainEventsDispatcher.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/IAggregateRoot.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/IAggregateRoot.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/IgnoreMemberAttribute.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/IgnoreMemberAttribute.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Rules/CharactersRule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Rules/CharactersRule.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Rules/DefinedEnumRule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Rules/DefinedEnumRule.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Rules/IBusinessRule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Rules/IBusinessRule.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Rules/LengthRule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Rules/LengthRule.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/Rules/RegexMatchingRule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/Rules/RegexMatchingRule.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Domain/ValueObject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Domain/ValueObject.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.Helper/EventBus.Helper.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.Helper/EventBus.Helper.csproj -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.Helper/RoutingSlips/RoutingSlip.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.Helper/RoutingSlips/RoutingSlip.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/EventBus.RabbitMQ.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/EventBus.RabbitMQ.csproj -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/IDeadLetterEventBus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/IDeadLetterEventBus.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/IPendingEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/IPendingEvent.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/IPendingEvents.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/IPendingEvents.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/IRabbitMQConnection.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/IRabbitMQConnection.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/IRabbitMQRequeuePolicy.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/IRabbitMQRequeuePolicy.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/IRabbitMQTopology.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/IRabbitMQTopology.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/PendingDeadLetterEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/PendingDeadLetterEvent.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/PendingEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/PendingEvent.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/PendingEventBase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/PendingEventBase.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQConnection.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQConnection.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQEventBus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQEventBus.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQEventBusService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQEventBusService.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQEventPubChannel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQEventPubChannel.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQEventSubChannel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQEventSubChannel.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQTopology.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus.RabbitMQ/RabbitMQTopology.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus/EventBus.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus/EventBus.csproj -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus/Extensions/EventBusBuilder.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus/Extensions/EventBusBuilder.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus/IEventBus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus/IEventBus.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus/IIncomingIntegrationEventContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus/IIncomingIntegrationEventContext.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus/IIntegrationEventProperties.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus/IIntegrationEventProperties.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus/IntegrationEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus/IntegrationEvent.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus/IntegrationEventHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus/IntegrationEventHandler.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus/IntegrationEventQueue.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus/IntegrationEventQueue.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/EventBus/IntegrationEventTopic.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/EventBus/IntegrationEventTopic.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Infrastructure.EFCore/DatabaseHelper.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Infrastructure.EFCore/DatabaseHelper.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Infrastructure.EFCore/UnitOfWork.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Infrastructure.EFCore/UnitOfWork.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Infrastructure.EFCore/Utilities/SqlState.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Infrastructure.EFCore/Utilities/SqlState.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Infrastructure.MongoDb/MongoClassMap.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Infrastructure.MongoDb/MongoClassMap.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Infrastructure.MongoDb/UnitOfWork.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Infrastructure.MongoDb/UnitOfWork.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Infrastructure/Caching/CacheContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Infrastructure/Caching/CacheContext.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Infrastructure/Caching/ICacheContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Infrastructure/Caching/ICacheContext.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Infrastructure/Infrastructure.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Infrastructure/Infrastructure.csproj -------------------------------------------------------------------------------- /Backend/BuildingBlocks/Infrastructure/UnitOfWorkConfig.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/Infrastructure/UnitOfWorkConfig.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/SharedKernel/Exceptions/AppException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/SharedKernel/Exceptions/AppException.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/SharedKernel/SharedKernel.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/SharedKernel/SharedKernel.csproj -------------------------------------------------------------------------------- /Backend/BuildingBlocks/SharedKernel/Utilities/ChildProcess.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/SharedKernel/Utilities/ChildProcess.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/SharedKernel/Utilities/EnumExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/SharedKernel/Utilities/EnumExtensions.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/SharedKernel/Utilities/ISingleton.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/SharedKernel/Utilities/ISingleton.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/SharedKernel/Utilities/JwtHelper.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/SharedKernel/Utilities/JwtHelper.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/SharedKernel/Utilities/RsaExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/SharedKernel/Utilities/RsaExtensions.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/SharedKernel/Utilities/TaskExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/SharedKernel/Utilities/TaskExtensions.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/SharedKernel/Utilities/TypeCache.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/SharedKernel/Utilities/TypeCache.cs -------------------------------------------------------------------------------- /Backend/BuildingBlocks/SharedKernel/Utilities/TypeExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/BuildingBlocks/SharedKernel/Utilities/TypeExtensions.cs -------------------------------------------------------------------------------- /Backend/Infrastructure/Elasticsearch/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Infrastructure/Elasticsearch/Dockerfile -------------------------------------------------------------------------------- /Backend/Infrastructure/Logstash/pipeline/logstash.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Infrastructure/Logstash/pipeline/logstash.conf -------------------------------------------------------------------------------- /Backend/Services/ApiGateway/ApiGateway.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/ApiGateway/ApiGateway.csproj -------------------------------------------------------------------------------- /Backend/Services/ApiGateway/Configurations/ClusterConfigs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/ApiGateway/Configurations/ClusterConfigs.cs -------------------------------------------------------------------------------- /Backend/Services/ApiGateway/Configurations/RouteConfigs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/ApiGateway/Configurations/RouteConfigs.cs -------------------------------------------------------------------------------- /Backend/Services/ApiGateway/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/ApiGateway/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/ApiGateway/HostExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/ApiGateway/HostExtensions.cs -------------------------------------------------------------------------------- /Backend/Services/ApiGateway/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/ApiGateway/Program.cs -------------------------------------------------------------------------------- /Backend/Services/ApiGateway/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/ApiGateway/Properties/launchSettings.json -------------------------------------------------------------------------------- /Backend/Services/ApiGateway/Utilities/ClusterId.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/ApiGateway/Utilities/ClusterId.cs -------------------------------------------------------------------------------- /Backend/Services/ApiGateway/Utilities/RouteId.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/ApiGateway/Utilities/RouteId.cs -------------------------------------------------------------------------------- /Backend/Services/ApiGateway/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/ApiGateway/appsettings.Development.json -------------------------------------------------------------------------------- /Backend/Services/ApiGateway/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/ApiGateway/appsettings.json -------------------------------------------------------------------------------- /Backend/Services/Community/Community.API/Community.API.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Community/Community.API/Community.API.csproj -------------------------------------------------------------------------------- /Backend/Services/Community/Community.API/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Community/Community.API/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/Community/Community.API/HostExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Community/Community.API/HostExtensions.cs -------------------------------------------------------------------------------- /Backend/Services/Community/Community.API/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Community/Community.API/Program.cs -------------------------------------------------------------------------------- /Backend/Services/Community/Community.API/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Community/Community.API/appsettings.json -------------------------------------------------------------------------------- /Backend/Services/Community/Community.Domain/Community.Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Community/Community.Domain/Community.Domain.csproj -------------------------------------------------------------------------------- /Backend/Services/Community/Community.Domain/Models/UserProfile.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Community/Community.Domain/Models/UserProfile.cs -------------------------------------------------------------------------------- /Backend/Services/Community/Community.Domain/Models/VideoComment.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Community/Community.Domain/Models/VideoComment.cs -------------------------------------------------------------------------------- /Backend/Services/Community/Community.Domain/Models/VideoForum.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Community/Community.Domain/Models/VideoForum.cs -------------------------------------------------------------------------------- /Backend/Services/Community/Community.Domain/Models/VoteType.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Community/Community.Domain/Models/VoteType.cs -------------------------------------------------------------------------------- /Backend/Services/History/History.API/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.API/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/History/History.API/History.API.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.API/History.API.csproj -------------------------------------------------------------------------------- /Backend/Services/History/History.API/HostExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.API/HostExtensions.cs -------------------------------------------------------------------------------- /Backend/Services/History/History.API/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.API/Program.cs -------------------------------------------------------------------------------- /Backend/Services/History/History.API/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.API/Properties/launchSettings.json -------------------------------------------------------------------------------- /Backend/Services/History/History.API/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.API/appsettings.Development.json -------------------------------------------------------------------------------- /Backend/Services/History/History.API/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.API/appsettings.json -------------------------------------------------------------------------------- /Backend/Services/History/History.Domain/History.Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.Domain/History.Domain.csproj -------------------------------------------------------------------------------- /Backend/Services/History/History.Domain/Models/UserProfile.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.Domain/Models/UserProfile.cs -------------------------------------------------------------------------------- /Backend/Services/History/History.Domain/Models/UserVideoHistory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.Domain/Models/UserVideoHistory.cs -------------------------------------------------------------------------------- /Backend/Services/History/History.Domain/Models/Video.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.Domain/Models/Video.cs -------------------------------------------------------------------------------- /Backend/Services/History/History.Domain/Models/VideoMetrics.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.Domain/Models/VideoMetrics.cs -------------------------------------------------------------------------------- /Backend/Services/History/History.Domain/Models/VideoStatus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.Domain/Models/VideoStatus.cs -------------------------------------------------------------------------------- /Backend/Services/History/History.Domain/Models/VideoVisibility.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/History/History.Domain/Models/VideoVisibility.cs -------------------------------------------------------------------------------- /Backend/Services/IdentityProvider/IdentityProvider/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/IdentityProvider/IdentityProvider/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/IdentityProvider/IdentityProvider/Pages/Account/Logout/Index.cshtml: -------------------------------------------------------------------------------- 1 | @page 2 | @model IdentityProvider.Pages.Logout.Index -------------------------------------------------------------------------------- /Backend/Services/IdentityProvider/IdentityProvider/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/IdentityProvider/IdentityProvider/Program.cs -------------------------------------------------------------------------------- /Backend/Services/IdentityProvider/IdentityProvider/Roles.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/IdentityProvider/IdentityProvider/Roles.cs -------------------------------------------------------------------------------- /Backend/Services/IdentityProvider/IdentityProvider/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/IdentityProvider/IdentityProvider/appsettings.json -------------------------------------------------------------------------------- /Backend/Services/IdentityProvider/IdentityProvider/tempkey.jwk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/IdentityProvider/IdentityProvider/tempkey.jwk -------------------------------------------------------------------------------- /Backend/Services/Library/Library.API/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.API/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/Library/Library.API/HostExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.API/HostExtensions.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.API/Library.API.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.API/Library.API.csproj -------------------------------------------------------------------------------- /Backend/Services/Library/Library.API/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.API/Program.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.API/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.API/Properties/launchSettings.json -------------------------------------------------------------------------------- /Backend/Services/Library/Library.API/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.API/appsettings.Development.json -------------------------------------------------------------------------------- /Backend/Services/Library/Library.API/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.API/appsettings.json -------------------------------------------------------------------------------- /Backend/Services/Library/Library.API/libman.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.API/libman.json -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Library.Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Library.Domain.csproj -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/DislikedPlaylist.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/DislikedPlaylist.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/LikedPlaylist.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/LikedPlaylist.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/Playlist.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/Playlist.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/PlaylistBase.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/PlaylistBase.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/PlaylistItem.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/PlaylistItem.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/PlaylistRef.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/PlaylistRef.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/UserProfile.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/UserProfile.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/Video.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/Video.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/VideoMetrics.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/VideoMetrics.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/VideoStatus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/VideoStatus.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/VideoVisibility.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/VideoVisibility.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Models/VoteType.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Models/VoteType.cs -------------------------------------------------------------------------------- /Backend/Services/Library/Library.Domain/Specifications/VideoSort.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Library/Library.Domain/Specifications/VideoSort.cs -------------------------------------------------------------------------------- /Backend/Services/Search/Search.API/Controllers/SearchController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.API/Controllers/SearchController.cs -------------------------------------------------------------------------------- /Backend/Services/Search/Search.API/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.API/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/Search/Search.API/HostExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.API/HostExtensions.cs -------------------------------------------------------------------------------- /Backend/Services/Search/Search.API/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.API/Program.cs -------------------------------------------------------------------------------- /Backend/Services/Search/Search.API/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.API/Properties/launchSettings.json -------------------------------------------------------------------------------- /Backend/Services/Search/Search.API/Search.API.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.API/Search.API.csproj -------------------------------------------------------------------------------- /Backend/Services/Search/Search.API/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.API/appsettings.Development.json -------------------------------------------------------------------------------- /Backend/Services/Search/Search.API/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.API/appsettings.json -------------------------------------------------------------------------------- /Backend/Services/Search/Search.Domain/Models/Channel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.Domain/Models/Channel.cs -------------------------------------------------------------------------------- /Backend/Services/Search/Search.Domain/Models/Playlist.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.Domain/Models/Playlist.cs -------------------------------------------------------------------------------- /Backend/Services/Search/Search.Domain/Models/PlaylistMetrics.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.Domain/Models/PlaylistMetrics.cs -------------------------------------------------------------------------------- /Backend/Services/Search/Search.Domain/Models/SearchableItem.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.Domain/Models/SearchableItem.cs -------------------------------------------------------------------------------- /Backend/Services/Search/Search.Domain/Models/UserProfile.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.Domain/Models/UserProfile.cs -------------------------------------------------------------------------------- /Backend/Services/Search/Search.Domain/Models/Video.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.Domain/Models/Video.cs -------------------------------------------------------------------------------- /Backend/Services/Search/Search.Domain/Models/VideoMetrics.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.Domain/Models/VideoMetrics.cs -------------------------------------------------------------------------------- /Backend/Services/Search/Search.Domain/Search.Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Search/Search.Domain/Search.Domain.csproj -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.API/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.API/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.API/HostExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.API/HostExtensions.cs -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.API/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.API/Program.cs -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.API/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.API/Properties/launchSettings.json -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.API/Storage.API.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.API/Storage.API.csproj -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.API/Utilities/MultipartHelper.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.API/Utilities/MultipartHelper.cs -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.API/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.API/appsettings.Development.json -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.API/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.API/appsettings.json -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.Domain/Models/FileProperty.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.Domain/Models/FileProperty.cs -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.Domain/Models/FileTracking.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.Domain/Models/FileTracking.cs -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.Domain/Models/StoredFile.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.Domain/Models/StoredFile.cs -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.Domain/Storage.Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.Domain/Storage.Domain.csproj -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.Infrastructure/StorageDbContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.Infrastructure/StorageDbContext.cs -------------------------------------------------------------------------------- /Backend/Services/Storage/Storage.Shared/Storage.Shared.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Storage/Storage.Shared/Storage.Shared.csproj -------------------------------------------------------------------------------- /Backend/Services/Subscriptions/Subscriptions.API/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Subscriptions/Subscriptions.API/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/Subscriptions/Subscriptions.API/HostExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Subscriptions/Subscriptions.API/HostExtensions.cs -------------------------------------------------------------------------------- /Backend/Services/Subscriptions/Subscriptions.API/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Subscriptions/Subscriptions.API/Program.cs -------------------------------------------------------------------------------- /Backend/Services/Subscriptions/Subscriptions.API/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Subscriptions/Subscriptions.API/appsettings.json -------------------------------------------------------------------------------- /Backend/Services/Users/Users.API/Controller/UsersController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.API/Controller/UsersController.cs -------------------------------------------------------------------------------- /Backend/Services/Users/Users.API/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.API/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/Users/Users.API/HostExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.API/HostExtensions.cs -------------------------------------------------------------------------------- /Backend/Services/Users/Users.API/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.API/Program.cs -------------------------------------------------------------------------------- /Backend/Services/Users/Users.API/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.API/Properties/launchSettings.json -------------------------------------------------------------------------------- /Backend/Services/Users/Users.API/Users.API.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.API/Users.API.csproj -------------------------------------------------------------------------------- /Backend/Services/Users/Users.API/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.API/appsettings.Development.json -------------------------------------------------------------------------------- /Backend/Services/Users/Users.API/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.API/appsettings.json -------------------------------------------------------------------------------- /Backend/Services/Users/Users.Domain/Models/ChannelSection.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.Domain/Models/ChannelSection.cs -------------------------------------------------------------------------------- /Backend/Services/Users/Users.Domain/Models/ImageFile.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.Domain/Models/ImageFile.cs -------------------------------------------------------------------------------- /Backend/Services/Users/Users.Domain/Models/UserChannel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.Domain/Models/UserChannel.cs -------------------------------------------------------------------------------- /Backend/Services/Users/Users.Domain/Models/UserProfile.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.Domain/Models/UserProfile.cs -------------------------------------------------------------------------------- /Backend/Services/Users/Users.Domain/Models/UserProfileStatus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.Domain/Models/UserProfileStatus.cs -------------------------------------------------------------------------------- /Backend/Services/Users/Users.Domain/Specifications/Pagination.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.Domain/Specifications/Pagination.cs -------------------------------------------------------------------------------- /Backend/Services/Users/Users.Domain/Users.Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/Users/Users.Domain/Users.Domain.csproj -------------------------------------------------------------------------------- /Backend/Services/VideoManager/VideoManager.API/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoManager/VideoManager.API/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/VideoManager/VideoManager.API/HostExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoManager/VideoManager.API/HostExtensions.cs -------------------------------------------------------------------------------- /Backend/Services/VideoManager/VideoManager.API/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoManager/VideoManager.API/Program.cs -------------------------------------------------------------------------------- /Backend/Services/VideoManager/VideoManager.API/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoManager/VideoManager.API/appsettings.json -------------------------------------------------------------------------------- /Backend/Services/VideoManager/VideoManager.Domain/Models/Video.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoManager/VideoManager.Domain/Models/Video.cs -------------------------------------------------------------------------------- /Backend/Services/VideoManager/VideoManager.SignalRHub/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoManager/VideoManager.SignalRHub/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/VideoManager/VideoManager.SignalRHub/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoManager/VideoManager.SignalRHub/Program.cs -------------------------------------------------------------------------------- /Backend/Services/VideoProcessor/VideoProcessor.Application/version.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "4.4.1" 3 | } -------------------------------------------------------------------------------- /Backend/Services/VideoStore/VideoStore.API/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoStore/VideoStore.API/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/VideoStore/VideoStore.API/HostExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoStore/VideoStore.API/HostExtensions.cs -------------------------------------------------------------------------------- /Backend/Services/VideoStore/VideoStore.API/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoStore/VideoStore.API/Program.cs -------------------------------------------------------------------------------- /Backend/Services/VideoStore/VideoStore.API/VideoStore.API.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoStore/VideoStore.API/VideoStore.API.csproj -------------------------------------------------------------------------------- /Backend/Services/VideoStore/VideoStore.API/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoStore/VideoStore.API/appsettings.json -------------------------------------------------------------------------------- /Backend/Services/VideoStore/VideoStore.Domain/Models/UserProfile.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoStore/VideoStore.Domain/Models/UserProfile.cs -------------------------------------------------------------------------------- /Backend/Services/VideoStore/VideoStore.Domain/Models/Video.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoStore/VideoStore.Domain/Models/Video.cs -------------------------------------------------------------------------------- /Backend/Services/VideoStore/VideoStore.Domain/Models/VideoStatus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/VideoStore/VideoStore.Domain/Models/VideoStatus.cs -------------------------------------------------------------------------------- /Backend/Services/WebStatus/WebStatus/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/WebStatus/WebStatus/Dockerfile -------------------------------------------------------------------------------- /Backend/Services/WebStatus/WebStatus/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/WebStatus/WebStatus/Program.cs -------------------------------------------------------------------------------- /Backend/Services/WebStatus/WebStatus/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/WebStatus/WebStatus/Properties/launchSettings.json -------------------------------------------------------------------------------- /Backend/Services/WebStatus/WebStatus/WebStatus.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/WebStatus/WebStatus/WebStatus.csproj -------------------------------------------------------------------------------- /Backend/Services/WebStatus/WebStatus/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/WebStatus/WebStatus/appsettings.Development.json -------------------------------------------------------------------------------- /Backend/Services/WebStatus/WebStatus/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/Services/WebStatus/WebStatus/appsettings.json -------------------------------------------------------------------------------- /Backend/VideoSharingPlatform.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/VideoSharingPlatform.sln -------------------------------------------------------------------------------- /Backend/VideoSharingPlatform.sln.startup.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/VideoSharingPlatform.sln.startup.json -------------------------------------------------------------------------------- /Backend/docker-compose.dcproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/docker-compose.dcproj -------------------------------------------------------------------------------- /Backend/docker-compose.override.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/docker-compose.override.yml -------------------------------------------------------------------------------- /Backend/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/docker-compose.yml -------------------------------------------------------------------------------- /Backend/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Backend/launchSettings.json -------------------------------------------------------------------------------- /Deploy/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/.gitignore -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/api-gateway/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/api-gateway/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/api-gateway/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/api-gateway/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/api-gateway/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/overlays/dev/debug.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/api-gateway/overlays/dev/debug.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/api-gateway/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/overlays/dev/patches/config-map.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/api-gateway/overlays/dev/patches/config-map.env -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/overlays/dev/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/api-gateway/overlays/dev/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/overlays/minikube/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/api-gateway/overlays/minikube/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/overlays/minikube/patches/config-map.env: -------------------------------------------------------------------------------- 1 | Cors__Origins__0=http://localhost:4200 -------------------------------------------------------------------------------- /Deploy/kubernetes/api-gateway/overlays/minikube/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/api-gateway/overlays/minikube/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/common/base/config-maps/common.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/base/config-maps/common.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/base/limit-range.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/base/limit-range.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/base/roles/pod-updater-role.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/base/roles/pod-updater-role.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/base/storage-classes/persistence.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/base/storage-classes/persistence.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/generators/jaeger.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/generators/jaeger.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/generators/logstash.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/generators/logstash.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/generators/mongodb.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/generators/mongodb.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/generators/postgres.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/generators/postgres.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/generators/rabbitmq.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/generators/rabbitmq.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/generators/redis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/generators/redis.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/values/jaeger.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/values/jaeger.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/values/logstash.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/values/logstash.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/values/mongodb.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/values/mongodb.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/values/postgres.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/values/postgres.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/values/rabbitmq.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/values/rabbitmq.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/components/dev-env/values/redis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/components/dev-env/values/redis.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/overlays/dev/resources/ingress/ingress.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/overlays/dev/resources/ingress/ingress.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/common/overlays/minikube/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/common/overlays/minikube/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/community-api/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/community-api/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/community-api/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/community-api/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/community-api/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/community-api/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/community-api/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/community-api/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/community-api/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/community-api/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/community-api/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/community-api/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/community-api/overlays/dev/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/community-api/overlays/dev/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/community-api/overlays/minikube/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/community-api/overlays/minikube/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/history-api/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/history-api/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/history-api/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/history-api/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/history-api/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/history-api/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/history-api/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/history-api/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/history-api/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/history-api/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/history-api/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/history-api/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/history-api/overlays/dev/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/history-api/overlays/dev/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/history-api/overlays/minikube/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/history-api/overlays/minikube/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/history-api/overlays/minikube/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/history-api/overlays/minikube/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/identity-provider/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/identity-provider/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/identity-provider/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/identity-provider/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/identity-provider/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/identity-provider/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/identity-provider/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/identity-provider/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/identity-provider/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/identity-provider/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/identity-provider/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/identity-provider/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/identity-provider/overlays/dev/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/identity-provider/overlays/dev/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/library-api/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/library-api/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/library-api/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/library-api/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/library-api/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/library-api/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/library-api/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/library-api/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/library-api/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/library-api/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/library-api/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/library-api/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/library-api/overlays/dev/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/library-api/overlays/dev/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/library-api/overlays/minikube/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/library-api/overlays/minikube/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/library-api/overlays/minikube/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/library-api/overlays/minikube/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/search-api/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/search-api/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/search-api/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/search-api/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/search-api/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/search-api/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/search-api/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/search-api/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/search-api/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/search-api/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/search-api/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/search-api/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/search-api/overlays/dev/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/search-api/overlays/dev/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/search-api/overlays/minikube/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/search-api/overlays/minikube/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/search-api/overlays/minikube/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/search-api/overlays/minikube/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/base/persistent-volume-claim.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/base/persistent-volume-claim.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/base/storage-class.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/base/storage-class.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/overlays/dev/patches/config-map.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/overlays/dev/patches/config-map.env -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/overlays/dev/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/overlays/dev/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/overlays/minikube/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/overlays/minikube/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/overlays/minikube/patches/config-map.env: -------------------------------------------------------------------------------- 1 | Cors__Origins__0=http://localhost:4200 -------------------------------------------------------------------------------- /Deploy/kubernetes/storage-api/overlays/minikube/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/storage-api/overlays/minikube/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/subscriptions-api/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/subscriptions-api/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/subscriptions-api/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/subscriptions-api/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/subscriptions-api/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/subscriptions-api/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/subscriptions-api/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/subscriptions-api/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/subscriptions-api/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/subscriptions-api/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/subscriptions-api/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/subscriptions-api/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/subscriptions-api/overlays/dev/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/subscriptions-api/overlays/dev/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/users-api/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/users-api/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/users-api/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/users-api/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/users-api/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/users-api/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/users-api/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/users-api/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/users-api/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/users-api/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/users-api/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/users-api/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/users-api/overlays/dev/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/users-api/overlays/dev/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/users-api/overlays/minikube/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/users-api/overlays/minikube/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/users-api/overlays/minikube/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/users-api/overlays/minikube/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/video-manager-api/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-manager-api/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-manager-api/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-manager-api/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-manager-api/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-manager-api/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-manager-api/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-manager-api/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-manager-api/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-manager-api/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-manager-api/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-manager-api/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-manager-api/overlays/dev/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-manager-api/overlays/dev/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/video-manager-signalrhub/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-manager-signalrhub/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-manager-signalrhub/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-manager-signalrhub/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-manager-signalrhub/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-manager-signalrhub/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-manager-signalrhub/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-manager-signalrhub/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-processor-application/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-processor-application/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-processor-application/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-processor-application/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-processor-application/base/hpa.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-processor-application/base/hpa.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-processor-application/base/pod-monitor.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-processor-application/base/pod-monitor.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-processor-application/base/role-binding.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-processor-application/base/role-binding.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-processor-application/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-processor-application/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-store-api/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-store-api/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-store-api/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-store-api/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-store-api/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-store-api/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-store-api/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-store-api/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-store-api/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-store-api/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-store-api/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-store-api/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/video-store-api/overlays/dev/patches/secret.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/video-store-api/overlays/dev/patches/secret.env -------------------------------------------------------------------------------- /Deploy/kubernetes/web-client/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-client/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-client/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-client/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-client/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-client/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-client/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-client/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-status/base/cluster-role-binding.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-status/base/cluster-role-binding.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-status/base/clusterip-service.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-status/base/clusterip-service.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-status/base/config-map.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-status/base/config-map.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-status/base/deployment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-status/base/deployment.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-status/base/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-status/base/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-status/base/secret.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-status/base/secret.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-status/base/service-account.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-status/base/service-account.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-status/overlays/dev/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-status/overlays/dev/kustomization.yml -------------------------------------------------------------------------------- /Deploy/kubernetes/web-status/overlays/minikube/kustomization.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/kubernetes/web-status/overlays/minikube/kustomization.yml -------------------------------------------------------------------------------- /Deploy/scripts/aks/0_push_docker_image.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/scripts/aks/0_push_docker_image.ps1 -------------------------------------------------------------------------------- /Deploy/scripts/aks/1_bake.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/scripts/aks/1_bake.ps1 -------------------------------------------------------------------------------- /Deploy/scripts/aks/2_apply.ps1: -------------------------------------------------------------------------------- 1 | kubectl apply -f ./output -------------------------------------------------------------------------------- /Deploy/scripts/aks/3_delete.ps1: -------------------------------------------------------------------------------- 1 | kubectl delete -f ./output -------------------------------------------------------------------------------- /Deploy/scripts/build_images.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/scripts/build_images.bat -------------------------------------------------------------------------------- /Deploy/scripts/build_images.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/scripts/build_images.sh -------------------------------------------------------------------------------- /Deploy/scripts/minikube/0_enable_metrics_server.ps1: -------------------------------------------------------------------------------- 1 | minikube addons enable metrics-server -------------------------------------------------------------------------------- /Deploy/scripts/minikube/1_minikube_load_images.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/scripts/minikube/1_minikube_load_images.ps1 -------------------------------------------------------------------------------- /Deploy/scripts/minikube/2_install_prometheus.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/scripts/minikube/2_install_prometheus.ps1 -------------------------------------------------------------------------------- /Deploy/scripts/minikube/3_bake.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/scripts/minikube/3_bake.ps1 -------------------------------------------------------------------------------- /Deploy/scripts/minikube/4_apply.ps1: -------------------------------------------------------------------------------- 1 | kubectl apply -f ./output -------------------------------------------------------------------------------- /Deploy/scripts/minikube/5_minikube_tunnel.ps1: -------------------------------------------------------------------------------- 1 | minikube tunnel -------------------------------------------------------------------------------- /Deploy/scripts/minikube/6_delete.ps1: -------------------------------------------------------------------------------- 1 | kubectl delete -f ./output -------------------------------------------------------------------------------- /Deploy/scripts/port-forward/port_forward_api_gateway.bat: -------------------------------------------------------------------------------- 1 | kubectl port-forward svc/api-gateway 16000:80 -------------------------------------------------------------------------------- /Deploy/scripts/port-forward/port_forward_identity_provider.bat: -------------------------------------------------------------------------------- 1 | kubectl port-forward svc/identity-provider 15100:80 -------------------------------------------------------------------------------- /Deploy/scripts/port-forward/port_forward_jaeger_query.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/scripts/port-forward/port_forward_jaeger_query.bat -------------------------------------------------------------------------------- /Deploy/scripts/port-forward/port_forward_kibana.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/scripts/port-forward/port_forward_kibana.bat -------------------------------------------------------------------------------- /Deploy/scripts/port-forward/port_forward_promeheus_ui.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/scripts/port-forward/port_forward_promeheus_ui.bat -------------------------------------------------------------------------------- /Deploy/scripts/port-forward/port_forward_rabbitmq_manage.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/scripts/port-forward/port_forward_rabbitmq_manage.bat -------------------------------------------------------------------------------- /Deploy/scripts/port-forward/port_forward_storage_api.bat: -------------------------------------------------------------------------------- 1 | kubectl port-forward svc/storage-api 14200:80 -------------------------------------------------------------------------------- /Deploy/scripts/port-forward/port_forward_web_status.bat: -------------------------------------------------------------------------------- 1 | kubectl port-forward svc/web-status 16050:80 -------------------------------------------------------------------------------- /Deploy/terraform/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/.gitignore -------------------------------------------------------------------------------- /Deploy/terraform/ado-svc-conn/data-aks.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado-svc-conn/data-aks.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado-svc-conn/data-azure.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado-svc-conn/data-azure.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado-svc-conn/data-project.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado-svc-conn/data-project.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado-svc-conn/providers.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado-svc-conn/providers.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado-svc-conn/service-endpoint-acr.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado-svc-conn/service-endpoint-acr.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado-svc-conn/service-endpoint-kubernetes.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado-svc-conn/service-endpoint-kubernetes.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado-svc-conn/variables-acr.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado-svc-conn/variables-acr.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado-svc-conn/variables-ado.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado-svc-conn/variables-ado.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado-svc-conn/variables-aks.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado-svc-conn/variables-aks.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado-svc-conn/versions.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado-svc-conn/versions.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/.terraform.lock.hcl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/.terraform.lock.hcl -------------------------------------------------------------------------------- /Deploy/terraform/ado/backend.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/backend.config -------------------------------------------------------------------------------- /Deploy/terraform/ado/data-azure.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/data-azure.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/endpoint-administrator.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/endpoint-administrator.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/environments.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/environments.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/locals.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/locals.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/pipelines.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/pipelines.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/project.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/project.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/providers.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/providers.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/service-endpoint-azurerm.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/service-endpoint-azurerm.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/service-endpoint-github.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/service-endpoint-github.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/varaibles-github.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/varaibles-github.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/variable-group.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/variable-group.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/variables-ado.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/variables-ado.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/variables-application-deployment.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/variables-application-deployment.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/variables-azure.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/variables-azure.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/variables-environments.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/variables-environments.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/variables-pipelines.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/variables-pipelines.tf -------------------------------------------------------------------------------- /Deploy/terraform/ado/versions.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/ado/versions.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/.terraform.lock.hcl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/.terraform.lock.hcl -------------------------------------------------------------------------------- /Deploy/terraform/aks/aks-cluster.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/aks-cluster.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/container-registry.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/container-registry.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/data-agent-pool-identity.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/data-agent-pool-identity.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/data-client-config.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/data-client-config.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/dns-zone.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/dns-zone.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/generate-ssh-key.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/generate-ssh-key.bat -------------------------------------------------------------------------------- /Deploy/terraform/aks/helm-cert-manager.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/helm-cert-manager.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/helm-external-dns.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/helm-external-dns.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/helm-ingress-nginx.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/helm-ingress-nginx.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/helm-prometheus.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/helm-prometheus.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/locals.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/locals.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/modules/aks-cluster/aks-cluster.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/modules/aks-cluster/aks-cluster.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/modules/aks-cluster/kubernetes-version.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/modules/aks-cluster/kubernetes-version.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/modules/aks-cluster/locals.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/modules/aks-cluster/locals.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/modules/aks-cluster/log-analytics-workspace.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/modules/aks-cluster/log-analytics-workspace.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/modules/aks-cluster/node-pool.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/modules/aks-cluster/node-pool.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/modules/aks-cluster/outputs.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/modules/aks-cluster/outputs.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/modules/aks-cluster/subnet.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/modules/aks-cluster/subnet.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/modules/aks-cluster/variables.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/modules/aks-cluster/variables.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/modules/aks-cluster/versions.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/modules/aks-cluster/versions.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/outputs.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/outputs.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/providers.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/providers.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/public-ip.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/public-ip.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/resource-group.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/resource-group.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/variables-acr.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/variables-acr.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/variables-aks.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/variables-aks.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/variables-basic.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/variables-basic.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/variables-helm.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/variables-helm.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/versions.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/versions.tf -------------------------------------------------------------------------------- /Deploy/terraform/aks/virtual-network.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Deploy/terraform/aks/virtual-network.tf -------------------------------------------------------------------------------- /Frontend/WebClient/.browserslistrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/.browserslistrc -------------------------------------------------------------------------------- /Frontend/WebClient/.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/.dockerignore -------------------------------------------------------------------------------- /Frontend/WebClient/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/.editorconfig -------------------------------------------------------------------------------- /Frontend/WebClient/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/.gitignore -------------------------------------------------------------------------------- /Frontend/WebClient/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/README.md -------------------------------------------------------------------------------- /Frontend/WebClient/angular.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/angular.json -------------------------------------------------------------------------------- /Frontend/WebClient/docker-dev/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/docker-dev/Dockerfile -------------------------------------------------------------------------------- /Frontend/WebClient/docker-dev/nginx.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/docker-dev/nginx.conf -------------------------------------------------------------------------------- /Frontend/WebClient/docker-prod/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/docker-prod/Dockerfile -------------------------------------------------------------------------------- /Frontend/WebClient/docker-prod/nginx.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/docker-prod/nginx.conf -------------------------------------------------------------------------------- /Frontend/WebClient/karma.conf.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/karma.conf.js -------------------------------------------------------------------------------- /Frontend/WebClient/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/package-lock.json -------------------------------------------------------------------------------- /Frontend/WebClient/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/package.json -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/app-routing.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/app-routing.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/app-setup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/app-setup.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/app.component.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/app.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/app.component.html -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/app.component.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/app.component.spec.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/app.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/app.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/app.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/app.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/asset-setup.ts: -------------------------------------------------------------------------------- 1 | export interface AssetSetup { 2 | noThumbnailIconUrl?: string; 3 | } 4 | -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/auth/auth-setup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/auth/auth-setup.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/auth/guards/auth-guard.service.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/auth/guards/auth-guard.service.spec.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/auth/guards/auth-guard.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/auth/guards/auth-guard.service.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/auth/models/auth-info.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/auth/models/auth-info.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/auth/services/auth.service.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/auth/services/auth.service.spec.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/auth/services/auth.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/auth/services/auth.service.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/auth/signin-callback/signin-callback.component.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/auth/signin-callback/signin-callback.component.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/auth/signout-callback/signout-callback.component.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/auth/signout-callback/signout-callback.component.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/channel/channel-routing.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/channel/channel-routing.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/channel/channel.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/channel/channel.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/channel/channel/channel-section/channel-section.component.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/channel/channel/channel-section/channel-section.component.html: -------------------------------------------------------------------------------- 1 |
channel-section works!
2 | -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/channel/channel/channel.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/channel/channel/channel.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/channel/channel/channel.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/channel/channel/channel.component.html -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/channel/channel/channel.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/channel/channel/channel.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/channels/channels-routing.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/channels/channels-routing.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/channels/channels.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/channels/channels.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/channels/channels/channels.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/channels/channels/channels.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/channels/channels/channels.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/channels/channels/channels.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/community/community.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/community/community.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/community/reducers/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/community/reducers/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/community/selectors/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/community/selectors/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/community/video-forum/actions/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/community/video-forum/actions/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/community/video-forum/models/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/community/video-forum/models/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/community/video-forum/reducers/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/community/video-forum/reducers/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/community/video-forum/selectors/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/community/video-forum/selectors/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/channel-page-api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/channel-page-api.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/channel-page.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/channel-page.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/channel-section-api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/channel-section-api.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/channel-section.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/channel-section.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/history-api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/history-api.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/history.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/history.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/notification-api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/notification-api.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/notification.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/notification.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/playlist-api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/playlist-api.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/playlist-management-api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/playlist-management-api.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/playlist-management.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/playlist-management.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/playlist.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/playlist.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/search-api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/search-api.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/search.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/search.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/subscription-listing.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/subscription-listing.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/users-api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/users-api.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/users.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/users.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/video-playlist-api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/video-playlist-api.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/actions/video-playlist.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/actions/video-playlist.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/core.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/core.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/effects/channel-page.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/effects/channel-page.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/effects/channel-section.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/effects/channel-section.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/effects/history.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/effects/history.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/effects/notification.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/effects/notification.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/effects/playlist-management.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/effects/playlist-management.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/effects/playlist.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/effects/playlist.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/effects/search.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/effects/search.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/effects/subscription-listing.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/effects/subscription-listing.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/effects/users.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/effects/users.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/effects/video-playlist.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/effects/video-playlist.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/models/channel-sections.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/models/channel-sections.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/models/channel.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/models/channel.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/models/failed-response.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/models/failed-response.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/models/history.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/models/history.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/models/library.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/models/library.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/models/notification.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/models/notification.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/models/playlist.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/models/playlist.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/models/search.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/models/search.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/models/subscription.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/models/subscription.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/models/users.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/models/users.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/models/video.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/models/video.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/pipes/n-formatter.pipe.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/pipes/n-formatter.pipe.spec.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/pipes/n-formatter.pipe.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/pipes/n-formatter.pipe.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/reducers/channel-page.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/reducers/channel-page.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/reducers/channel-sections.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/reducers/channel-sections.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/reducers/history.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/reducers/history.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/reducers/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/reducers/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/reducers/notification.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/reducers/notification.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/reducers/playlist-management.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/reducers/playlist-management.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/reducers/playlist.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/reducers/playlist.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/reducers/search.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/reducers/search.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/reducers/subscription-listing.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/reducers/subscription-listing.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/reducers/user-profiles.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/reducers/user-profiles.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/reducers/video-playlist.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/reducers/video-playlist.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/selectors/channel-page.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/selectors/channel-page.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/selectors/channel-sections.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/selectors/channel-sections.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/selectors/history.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/selectors/history.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/selectors/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/selectors/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/selectors/notification.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/selectors/notification.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/selectors/playlist-management.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/selectors/playlist-management.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/selectors/playlist.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/selectors/playlist.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/selectors/search.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/selectors/search.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/selectors/users.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/selectors/users.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/selectors/video-playlist.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/selectors/video-playlist.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/services/user-profile.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/services/user-profile.service.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/services/utilities.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/services/utilities.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/core/signalr/hub-client.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/core/signalr/hub-client.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/history/history-routing.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/history/history-routing.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/history/history.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/history/history.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/history/history/history.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/history/history/history.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/history/history/history.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/history/history/history.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/library/library-routing.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/library/library-routing.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/library/library.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/library/library.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/library/library/library.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/library/library/library.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/library/library/library.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/library/library/library.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/library/library/library.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/library/library/library.service.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/home/home.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/home/home.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/home/home.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/home/home.component.html -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/home/home.component.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/home/home.component.spec.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/home/home.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/home/home.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/main-routing.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/main-routing.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/main.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/main.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/main.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/main.component.html -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/main.component.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/main.component.spec.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/main.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/main.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/main.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/main.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/search/search.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/search/search.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/search/search.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/search/search.component.html -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/search/search.component.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/search/search.component.spec.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/search/search.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/search/search.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/searchbar/searchbar.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/searchbar/searchbar.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/sidebar/sidebar.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/sidebar/sidebar.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/sidebar/sidebar.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/sidebar/sidebar.component.html -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/sidebar/sidebar.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/sidebar/sidebar.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/sidebar/sidebar.service.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/sidebar/sidebar.service.spec.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/sidebar/sidebar.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/sidebar/sidebar.service.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/tools/tools.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/tools/tools.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/tools/tools.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/tools/tools.component.html -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/tools/tools.component.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/tools/tools.component.spec.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/main/tools/tools.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/main/tools/tools.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/playlist/playlist-routing.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/playlist/playlist-routing.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/playlist/playlist.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/playlist/playlist.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/shared/shared.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/shared/shared.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/shared/user-thumbnail/models/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/shared/user-thumbnail/models/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/customization/actions/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/customization/actions/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/customization/effects/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/customization/effects/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/customization/image-uploader/image-uploader.component.css: -------------------------------------------------------------------------------- 1 | .image-uploader-container { 2 | display: flex; 3 | } -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/customization/models/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/customization/models/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/dto-models/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/dto-models/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/models/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/models/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/reducers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/reducers.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/selectors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/selectors.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/sidebar/sidebar.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/sidebar/sidebar.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/sidebar/sidebar.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/sidebar/sidebar.component.html -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/sidebar/sidebar.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/sidebar/sidebar.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/studio-routing.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/studio-routing.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/studio-setup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/studio-setup.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/studio.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/studio.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/studio.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/studio.component.html -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/studio.component.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/studio.component.spec.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/studio.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/studio.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/studio.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/studio.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/tools/tools.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/tools/tools.component.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/tools/tools.component.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/tools/tools.component.html -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/tools/tools.component.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/tools/tools.component.spec.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/tools/tools.component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/tools/tools.component.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/uploader/actions/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/uploader/actions/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/uploader/actions/uploader.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/uploader/actions/uploader.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/uploader/effects/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/uploader/effects/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/uploader/models/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/uploader/models/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/uploader/reducers/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/uploader/reducers/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/studio/uploader/selectors/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/studio/uploader/selectors/index.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/subscriptions/subscriptions.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/subscriptions/subscriptions.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/video-player/video-player.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/video-player/video-player.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/app/watch-video/watch-video.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/app/watch-video/watch-video.module.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/assets/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Frontend/WebClient/src/assets/icon/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/assets/icon/icon.png -------------------------------------------------------------------------------- /Frontend/WebClient/src/assets/icon/no_thumbnail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/assets/icon/no_thumbnail.png -------------------------------------------------------------------------------- /Frontend/WebClient/src/assets/icon/unnamed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/assets/icon/unnamed.png -------------------------------------------------------------------------------- /Frontend/WebClient/src/environments/environment.prod.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/environments/environment.prod.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/environments/environment.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/environments/environment.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/favicon.ico -------------------------------------------------------------------------------- /Frontend/WebClient/src/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/index.html -------------------------------------------------------------------------------- /Frontend/WebClient/src/main.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/main.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/material-styles.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/material-styles.scss -------------------------------------------------------------------------------- /Frontend/WebClient/src/polyfills.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/polyfills.ts -------------------------------------------------------------------------------- /Frontend/WebClient/src/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/styles.css -------------------------------------------------------------------------------- /Frontend/WebClient/src/test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/src/test.ts -------------------------------------------------------------------------------- /Frontend/WebClient/tsconfig.app.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/tsconfig.app.json -------------------------------------------------------------------------------- /Frontend/WebClient/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/tsconfig.json -------------------------------------------------------------------------------- /Frontend/WebClient/tsconfig.spec.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/tsconfig.spec.json -------------------------------------------------------------------------------- /Frontend/WebClient/webpack.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Frontend/WebClient/webpack.config.js -------------------------------------------------------------------------------- /Images/Screenshots/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/1.png -------------------------------------------------------------------------------- /Images/Screenshots/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/10.png -------------------------------------------------------------------------------- /Images/Screenshots/11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/11.png -------------------------------------------------------------------------------- /Images/Screenshots/12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/12.png -------------------------------------------------------------------------------- /Images/Screenshots/13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/13.png -------------------------------------------------------------------------------- /Images/Screenshots/14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/14.png -------------------------------------------------------------------------------- /Images/Screenshots/15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/15.png -------------------------------------------------------------------------------- /Images/Screenshots/16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/16.png -------------------------------------------------------------------------------- /Images/Screenshots/17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/17.png -------------------------------------------------------------------------------- /Images/Screenshots/18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/18.png -------------------------------------------------------------------------------- /Images/Screenshots/19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/19.png -------------------------------------------------------------------------------- /Images/Screenshots/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/2.png -------------------------------------------------------------------------------- /Images/Screenshots/20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/20.png -------------------------------------------------------------------------------- /Images/Screenshots/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/3.png -------------------------------------------------------------------------------- /Images/Screenshots/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/4.png -------------------------------------------------------------------------------- /Images/Screenshots/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/5.png -------------------------------------------------------------------------------- /Images/Screenshots/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/6.png -------------------------------------------------------------------------------- /Images/Screenshots/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/7.png -------------------------------------------------------------------------------- /Images/Screenshots/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/8.png -------------------------------------------------------------------------------- /Images/Screenshots/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/9.png -------------------------------------------------------------------------------- /Images/Screenshots/grafana.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/grafana.png -------------------------------------------------------------------------------- /Images/Screenshots/logging.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/logging.png -------------------------------------------------------------------------------- /Images/Screenshots/metrics.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/metrics.png -------------------------------------------------------------------------------- /Images/Screenshots/tracing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/tracing.png -------------------------------------------------------------------------------- /Images/Screenshots/webstatus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/Screenshots/webstatus.png -------------------------------------------------------------------------------- /Images/architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Images/architecture.png -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/README.md -------------------------------------------------------------------------------- /Screenshots.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Screenshots.md -------------------------------------------------------------------------------- /Scripts/backend_build.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/backend_build.bat -------------------------------------------------------------------------------- /Scripts/backend_build.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/backend_build.sh -------------------------------------------------------------------------------- /Scripts/backend_build_nocache.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/backend_build_nocache.bat -------------------------------------------------------------------------------- /Scripts/backend_build_nocache.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/backend_build_nocache.sh -------------------------------------------------------------------------------- /Scripts/backend_down.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/backend_down.bat -------------------------------------------------------------------------------- /Scripts/backend_down.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/backend_down.sh -------------------------------------------------------------------------------- /Scripts/backend_up.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/backend_up.bat -------------------------------------------------------------------------------- /Scripts/backend_up.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/backend_up.sh -------------------------------------------------------------------------------- /Scripts/frontend_build.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/frontend_build.bat -------------------------------------------------------------------------------- /Scripts/frontend_build.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/frontend_build.sh -------------------------------------------------------------------------------- /Scripts/frontend_build_nocache.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/frontend_build_nocache.bat -------------------------------------------------------------------------------- /Scripts/frontend_build_nocache.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/frontend_build_nocache.sh -------------------------------------------------------------------------------- /Scripts/frontend_down.bat: -------------------------------------------------------------------------------- 1 | docker stop web-client-dev -------------------------------------------------------------------------------- /Scripts/frontend_down.sh: -------------------------------------------------------------------------------- 1 | docker stop web-client-dev -------------------------------------------------------------------------------- /Scripts/frontend_up.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/frontend_up.bat -------------------------------------------------------------------------------- /Scripts/frontend_up.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/josephnhtam/vsp-youtube-clone-microservices/HEAD/Scripts/frontend_up.sh --------------------------------------------------------------------------------