mirror of
https://github.com/ToolJet/ToolJet
synced 2026-04-21 13:37:28 +00:00
* Added set-default API * Setting default workspace for super-admin onboarding * Seperated the migrations * Added nestjs init * removed nestjs init * Added: default workspace case to signup * Fixed: instance signup * Fixed: existed non-active user instance signup * Added: SSO default workspace support * Added: Default workspace chooser * Moved some scss changes to ee folder * Added: disable workspace default organization check * updated the migration * Fixing .env issue * Removed the logs * Remove personal workspace check from enable signup * Fixing sign-in cases * Fixing workspace invited user's instance signup cases * Fixing sso workspace invited user's instance signup cases * fixing the workspace signup issue * Adding ee server and frontend file * Adding ee server and frontend file * Adding active check * Added query fix for the migration * Added migration logic fix * Removed/Commented the ENABLE_ONBOARDING_QUESTIONS_FOR_ALL_SIGN_UPS env support from EE and CE * Adding server and frontend files * Added frontend file * Bump version
41 lines
1.7 KiB
TypeScript
41 lines
1.7 KiB
TypeScript
import { Body, Controller, Post, UseGuards, Res } from '@nestjs/common';
|
|
import { User, UserEntity } from '@modules/app/decorators/user.decorator';
|
|
import { JwtAuthGuard } from '@modules/session/guards/jwt-auth.guard';
|
|
import { OrganizationCreateDto } from '@modules/organizations/dto';
|
|
import { Response } from 'express';
|
|
import { SetupOrganizationsService } from './service';
|
|
import { ISetupOrganizationsController } from './interfaces/IController';
|
|
import { SessionUtilService } from '@modules/session/util.service';
|
|
import { InitModule } from '@modules/app/decorators/init-module';
|
|
import { MODULES } from '@modules/app/constants/modules';
|
|
import { InitFeature } from '@modules/app/decorators/init-feature.decorator';
|
|
import { FEATURE_KEY } from '@modules/organizations/constants';
|
|
import { FeatureAbilityGuard } from '@modules/organizations/ability/guard';
|
|
|
|
@InitModule(MODULES.ORGANIZATIONS)
|
|
@Controller('organizations')
|
|
export class SetupOrganizationsController implements ISetupOrganizationsController {
|
|
constructor(
|
|
protected setupOrganizationsService: SetupOrganizationsService,
|
|
protected sessionUtilService: SessionUtilService
|
|
) {}
|
|
|
|
@InitFeature(FEATURE_KEY.CREATE)
|
|
@UseGuards(JwtAuthGuard, FeatureAbilityGuard)
|
|
@Post()
|
|
async create(
|
|
@User() user: UserEntity,
|
|
@Body() organizationCreateDto: OrganizationCreateDto,
|
|
@Res({ passthrough: true }) response: Response
|
|
) {
|
|
const result = await this.setupOrganizationsService.create(
|
|
{ name: organizationCreateDto.name, slug: organizationCreateDto.slug },
|
|
user
|
|
);
|
|
|
|
if (!result) {
|
|
throw new Error();
|
|
}
|
|
return await this.sessionUtilService.switchOrganization(response, result.id, user, true);
|
|
}
|
|
}
|