refactor(core): Use injectable classes for db repositories (part-1) (no-changelog) (#5953)
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
This commit is contained in:
committed by
GitHub
parent
323e26acfd
commit
10f8c35dbb
@@ -2,7 +2,7 @@
|
||||
import { AuthIdentity } from './AuthIdentity';
|
||||
import { AuthProviderSyncHistory } from './AuthProviderSyncHistory';
|
||||
import { CredentialsEntity } from './CredentialsEntity';
|
||||
import { EventDestinations } from './MessageEventBusDestinationEntity';
|
||||
import { EventDestinations } from './EventDestinations';
|
||||
import { ExecutionEntity } from './ExecutionEntity';
|
||||
import { InstalledNodes } from './InstalledNodes';
|
||||
import { InstalledPackages } from './InstalledPackages';
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { AuthIdentity } from '../entities/AuthIdentity';
|
||||
|
||||
@Service()
|
||||
export class AuthIdentityRepository extends Repository<AuthIdentity> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(AuthIdentity, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { AuthProviderSyncHistory } from '../entities/AuthProviderSyncHistory';
|
||||
|
||||
@Service()
|
||||
export class AuthProviderSyncHistoryRepository extends Repository<AuthProviderSyncHistory> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(AuthProviderSyncHistory, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { CredentialsEntity } from '../entities/CredentialsEntity';
|
||||
|
||||
@Service()
|
||||
export class CredentialsRepository extends Repository<CredentialsEntity> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(CredentialsEntity, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { EventDestinations } from '../entities/EventDestinations';
|
||||
|
||||
@Service()
|
||||
export class EventDestinationsRepository extends Repository<EventDestinations> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(EventDestinations, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { ExecutionEntity } from '../entities/ExecutionEntity';
|
||||
|
||||
@Service()
|
||||
export class ExecutionRepository extends Repository<ExecutionEntity> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(ExecutionEntity, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { ExecutionMetadata } from '../entities/ExecutionMetadata';
|
||||
|
||||
@Service()
|
||||
export class ExecutionMetadataRepository extends Repository<ExecutionMetadata> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(ExecutionMetadata, dataSource.manager);
|
||||
}
|
||||
}
|
||||
18
packages/cli/src/databases/repositories/index.ts
Normal file
18
packages/cli/src/databases/repositories/index.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
export { AuthIdentityRepository } from './authIdentity.repository';
|
||||
export { AuthProviderSyncHistoryRepository } from './authProviderSyncHistory.repository';
|
||||
export { CredentialsRepository } from './credentials.repository';
|
||||
export { EventDestinationsRepository } from './eventDestinations.repository';
|
||||
export { ExecutionMetadataRepository } from './executionMetadata.repository';
|
||||
export { ExecutionRepository } from './execution.repository';
|
||||
export { InstalledNodesRepository } from './installedNodes.repository';
|
||||
export { InstalledPackagesRepository } from './installedPackages.repository';
|
||||
export { RoleRepository } from './role.repository';
|
||||
export { SettingsRepository } from './settings.repository';
|
||||
export { SharedCredentialsRepository } from './sharedCredentials.repository';
|
||||
export { SharedWorkflowRepository } from './sharedWorkflow.repository';
|
||||
export { TagRepository } from './tag.repository';
|
||||
export { UserRepository } from './user.repository';
|
||||
export { WebhookRepository } from './webhook.repository';
|
||||
export { WorkflowRepository } from './workflow.repository';
|
||||
export { WorkflowStatisticsRepository } from './workflowStatistics.repository';
|
||||
export { WorkflowTagMappingRepository } from './workflowTagMapping.repository';
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { InstalledNodes } from '../entities/InstalledNodes';
|
||||
|
||||
@Service()
|
||||
export class InstalledNodesRepository extends Repository<InstalledNodes> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(InstalledNodes, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { InstalledPackages } from '../entities/InstalledPackages';
|
||||
|
||||
@Service()
|
||||
export class InstalledPackagesRepository extends Repository<InstalledPackages> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(InstalledPackages, dataSource.manager);
|
||||
}
|
||||
}
|
||||
59
packages/cli/src/databases/repositories/role.repository.ts
Normal file
59
packages/cli/src/databases/repositories/role.repository.ts
Normal file
@@ -0,0 +1,59 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import type { RoleNames, RoleScopes } from '../entities/Role';
|
||||
import { Role } from '../entities/Role';
|
||||
|
||||
@Service()
|
||||
export class RoleRepository extends Repository<Role> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(Role, dataSource.manager);
|
||||
}
|
||||
|
||||
async findGlobalOwnerRole(): Promise<Role | null> {
|
||||
return this.findRole('global', 'owner');
|
||||
}
|
||||
|
||||
async findGlobalOwnerRoleOrFail(): Promise<Role> {
|
||||
return this.findRoleOrFail('global', 'owner');
|
||||
}
|
||||
|
||||
async findGlobalMemberRole(): Promise<Role | null> {
|
||||
return this.findRole('global', 'member');
|
||||
}
|
||||
|
||||
async findGlobalMemberRoleOrFail(): Promise<Role> {
|
||||
return this.findRoleOrFail('global', 'member');
|
||||
}
|
||||
|
||||
async findWorkflowOwnerRole(): Promise<Role | null> {
|
||||
return this.findRole('workflow', 'owner');
|
||||
}
|
||||
|
||||
async findWorkflowOwnerRoleOrFail(): Promise<Role> {
|
||||
return this.findRoleOrFail('workflow', 'owner');
|
||||
}
|
||||
|
||||
async findWorkflowEditorRoleOrFail(): Promise<Role> {
|
||||
return this.findRoleOrFail('workflow', 'editor');
|
||||
}
|
||||
|
||||
async findCredentialOwnerRole(): Promise<Role | null> {
|
||||
return this.findRole('credential', 'owner');
|
||||
}
|
||||
|
||||
async findCredentialOwnerRoleOrFail(): Promise<Role> {
|
||||
return this.findRoleOrFail('credential', 'owner');
|
||||
}
|
||||
|
||||
async findCredentialUserRole(): Promise<Role | null> {
|
||||
return this.findRole('credential', 'user');
|
||||
}
|
||||
|
||||
async findRole(scope: RoleScopes, name: RoleNames): Promise<Role | null> {
|
||||
return this.findOne({ where: { scope, name } });
|
||||
}
|
||||
|
||||
async findRoleOrFail(scope: RoleScopes, name: RoleNames): Promise<Role> {
|
||||
return this.findOneOrFail({ where: { scope, name } });
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { Settings } from '../entities/Settings';
|
||||
|
||||
@Service()
|
||||
export class SettingsRepository extends Repository<Settings> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(Settings, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { SharedCredentials } from '../entities/SharedCredentials';
|
||||
|
||||
@Service()
|
||||
export class SharedCredentialsRepository extends Repository<SharedCredentials> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(SharedCredentials, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { SharedWorkflow } from '../entities/SharedWorkflow';
|
||||
|
||||
@Service()
|
||||
export class SharedWorkflowRepository extends Repository<SharedWorkflow> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(SharedWorkflow, dataSource.manager);
|
||||
}
|
||||
}
|
||||
10
packages/cli/src/databases/repositories/tag.repository.ts
Normal file
10
packages/cli/src/databases/repositories/tag.repository.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { TagEntity } from '../entities/TagEntity';
|
||||
|
||||
@Service()
|
||||
export class TagRepository extends Repository<TagEntity> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(TagEntity, dataSource.manager);
|
||||
}
|
||||
}
|
||||
10
packages/cli/src/databases/repositories/user.repository.ts
Normal file
10
packages/cli/src/databases/repositories/user.repository.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { User } from '../entities/User';
|
||||
|
||||
@Service()
|
||||
export class UserRepository extends Repository<User> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(User, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { WebhookEntity } from '../entities/WebhookEntity';
|
||||
|
||||
@Service()
|
||||
export class WebhookRepository extends Repository<WebhookEntity> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(WebhookEntity, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { WorkflowEntity } from '../entities/WorkflowEntity';
|
||||
|
||||
@Service()
|
||||
export class WorkflowRepository extends Repository<WorkflowEntity> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(WorkflowEntity, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { WorkflowStatistics } from '../entities/WorkflowStatistics';
|
||||
|
||||
@Service()
|
||||
export class WorkflowStatisticsRepository extends Repository<WorkflowStatistics> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(WorkflowStatistics, dataSource.manager);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Service } from 'typedi';
|
||||
import { DataSource, Repository } from 'typeorm';
|
||||
import { WorkflowTagMapping } from '../entities/WorkflowTagMapping';
|
||||
|
||||
@Service()
|
||||
export class WorkflowTagMappingRepository extends Repository<WorkflowTagMapping> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(WorkflowTagMapping, dataSource.manager);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user